news 2026/6/23 9:30:04

083、STM32项目分享开源:智能书桌系统(升级版)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
083、STM32项目分享开源:智能书桌系统(升级版)

目录

一、项目成品图片

二、项目功能简介

1.主要器件组成

2.功能详解介绍

三、项目原理图设计

四、项目PCB硬件设计

项目PCB图

五、项目程序设计

六、项目实验效果 ​编辑

七、项目包含内容

一、项目成品图片

哔哩哔哩视频链接:

https://www.bilibili.com/video/BV1yyVE6wE84/?spm_id_from=333.1387.upload.video_card.click

资料分享看文章末尾

二、项目功能简介

1.主要器件组成

本设计由STM32F103C8T6单片机+WIFI模块ESP8266-01S电路+OLED屏幕电路+DHT11温湿度传感器电路+超声波传感器电路+光敏传感器电路+红外传感器电路+SG90舵机电路+继电器模块电路+DS1302时钟电路+蜂鸣器电路+照明电路+风扇电路+按键电路+电源电路组成。

2.功能详解

1、环境采集:DHT11温湿度传感器采集温度和湿度、超声波传感器检测坐姿是否正常、光照传感器检测光照情况、红外传感器检测是否有人。
2、屏幕显示:OLED屏幕显示当前温湿度、光照强度、是否有人、坐姿,时间、台灯、除湿、书桌高度信息
3、阈值设置:通过app设置温湿度阈值、光照阈值、坐姿阈值和久坐阈值。
4、自动照明:通过光敏传感器检测光照强度,当光照强度小于阈值了,自动点亮台灯照明,当光强度大于阈值,自动关闭台灯照明灯
5、智能除湿:当检测到湿度低于设置的阈值时自动开启除湿
6、坐姿提醒:当检测到坐姿异常时声光报警。提醒坐姿异常
7、台灯控制:可以通过按键控制台灯开关。
8、高度调节:可以通过按键控制书桌高度调节
9、角度调节:可以通过按键控制书桌角度调节
10、智能降温:当检测到温度高于设置的阈值时自动开启风扇降温
11、定时开灯:通过按键设置定时开启台灯的时间
12、久坐提醒:当检测久坐时声光报警。提醒久坐
13、远程控制:通过WIFI连接手机APP,APP可以查看当前环境信息数据,可调节阈值范围。

三、项目原理图设计

四、项目PCB硬件设计

五、项目程序设计

#include "stm32f10x.h" #include "delay.h" #include "usart.h" #include "USART2/usart2.h" #include "GPIO/gpio.h" #include "oled.h" #include "timer.h" #include "usart3.h" #include "pwm.h" /****************破晓电子工作室******************* *** 破晓单片机 *** 项目:STM32单片机智能书桌系统(升级版) *** BILIBILI:破晓单片机 *** 小红书:破晓单片机 *** 授权IP:破晓单片机 *** 淘宝:破晓单片机 *** 淘宝:破晓电子 *** 版本:V01.01 *** MCU:STM32F103C8T6 ******************破晓单片机***********************/ //显示界面 CaiDanJieGouTi KeyTab[SIZE_CAIDAN]= { {0 ,0 ,0 ,0 ,0 ,Main_Menu0}, {1 ,1 ,1 ,1 ,1 ,Main_Menu1}, {2 ,2 ,2 ,2 ,2 ,Main_Menu2}, {3 ,3 ,3 ,3 ,3 ,Main_Menu3}, {4 ,4 ,4 ,4 ,4 ,Main_Menu4}, {5 ,5 ,5 ,5 ,5 ,Main_Menu5}, {6 ,6 ,6 ,6 ,6 ,Main_Menu6}, {7 ,7 ,7 ,7 ,7 ,Main_Menu7}, {8 ,8 ,8 ,8 ,8 ,Main_Menu8}, } ; //传感器变量声明 typedef struct { uint16_t TEMP; uint16_t HUMI; uint16_t ligh; uint16_t juli; uint16_t shuzgao; uint16_t youren; }SensorModulesValue; typedef struct { uint16_t humiyz; uint16_t lighyz; uint16_t juliyz; }SensorThresholdValue; typedef struct { uint8_t led; uint8_t relay; }DriveFlag; int main(void) { delay_init(); TIM3_Int_Init(9,7199);//定时器初始化 OLEDGUI_Config(); //OLED初始化 OLEDGUI_DispString(30,16,"Init...",16,1); DHT11_Init(); //舵机初始化 key_Init(); //按键初始化 Adc_Init(); //adc初始化 InitClock(); //时钟初始化 hcsr_Init(); //超声波初始化 LED_Init(); //LED初始化 HW_Init(); //HW初始化 SG90_Init(); //舵机初始化 delay_ms(100); OLEDGUI_Clear(); //OLEDT清屏 uart1_init(9600); delay_ms(100); uart2_init(9600); delay_ms(100); uart3_init(9600);//串口初始化 delay_ms(100); //WIFI初始化 delay_ms(100); memset((uint8_t *)&currentDataPoint, 0, sizeof(dataPoint_t)); gizwitsInit(); while(1) { //获取按键值 key_scan(); //进入菜单界面显示处理数据 GetKeylnput(&Keystatus); //获取传感器数据 SensorDataGet(); //数据上传 currentDataPoint.valueTEMP=TEMP; currentDataPoint.valueHUMI=HUMI; currentDataPoint.valueligh=ligh; currentDataPoint.valuejuli=juli; currentDataPoint.valueshuzgao=shuzgao; currentDataPoint.valueyouren=youren; currentDataPoint.valueled=led; currentDataPoint.valuerelay=relay; gizwitsHandle((dataPoint_t *)&currentDataPoint); //数据下发 humiyz=currentDataPoint.valuehumiyz; lighyz=currentDataPoint.valuelighyz; juliyz=currentDataPoint.valuejuliyz; delay_ms(100); } }

六、项目实验效果 ​

七、项目包含内容

​​

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/23 9:29:04

多任务学习中的权重解耦与正交正则化:从特征纠缠到任务算术

1. 从“多任务打架”到“任务算术”:一个被忽视的优化视角在深度学习的多任务学习场景里,我们经常会遇到一个令人头疼的现象:模型在任务A上表现优异,一旦加入任务B一起训练,任务A的性能就可能出现明显下滑,…

作者头像 李华
网站建设 2026/6/23 9:26:17

5分钟掌握QKeyMapper:Windows全能按键映射工具让游戏和办公效率翻倍

5分钟掌握QKeyMapper:Windows全能按键映射工具让游戏和办公效率翻倍 【免费下载链接】QKeyMapper [按键映射工具] QKeyMapper,Qt开发Win10&Win11可用,不修改注册表、不需重新启动系统,可立即生效和停止。支持游戏手柄映射到键…

作者头像 李华
网站建设 2026/6/23 9:23:43

从二进制部署深入理解HashiCorp Vault:PostgreSQL后端与生产级配置实战

1. 项目概述:为什么选择二进制部署 Vault? 在基础设施安全和敏感数据管理领域,HashiCorp Vault 已经成为一个事实上的标准。无论是管理数据库凭证、加密即服务,还是处理静态和传输中的密钥,Vault 都提供了一个集中、安…

作者头像 李华
网站建设 2026/6/23 9:09:11

Camo-M3FD数据集:跨光谱伪装行人检测的技术挑战与算法实践

1. 项目背景与核心价值:为什么我们需要一个“跨光谱伪装行人检测”数据集?在计算机视觉领域,行人检测是一个被研究了数十年的经典问题。从早期的Haar特征Adaboost,到后来基于深度学习的R-CNN、YOLO系列,检测精度和速度…

作者头像 李华
网站建设 2026/6/23 9:07:07

AVR32EB SPI/TWI中断驱动通信:从寄存器配置到ISR实战

1. 项目概述:从“轮询”到“中断”的效率跃迁 在嵌入式开发中,与外设打交道是家常便饭。无论是读取传感器数据,还是驱动一块显示屏,都离不开SPI、TWI(即I2C)这类串行通信接口。很多新手朋友,包括…

作者头像 李华
网站建设 2026/6/23 9:02:18

RAG 的关键从来不是向量——是你能不能把对的内容捞出来

RAG 的关键从来不是向量——是你能不能把对的内容捞出来 “咱们做个 AI 知识库吧。” 团队里只要有人提这么一句,接下来的动作几乎是条件反射:搭一个向量数据库,把文档切成小块,灌进去,让 AI 按相似度去捞。 好像不…

作者头像 李华