
一、项目概述
本项目基于 STM32F103C8T6 单片机作为主控,搭配 DHT11 数字温湿度传感器,搭建一套温湿度实时采集、本地显示、状态指示、超限报警以及 WiFi 上传的监测系统。在 Proteus 中完成电路仿真,可实现环境温湿度采集、OLED 屏幕本地显示、LED 状态灯提示、蜂鸣器报警,同时通过 ESP8266 将数据发送至串口虚拟终端,适合嵌入式课程设计、毕设入门项目。
系统功能清单
二、硬件电路方案(Proteus 原理图解析)
整体电路分为主控单元、采集单元、显示单元、声光报警单元、WiFi 通信单元5 个部分:
- 绿灯 D3:系统上电正常运行常亮;
- 红灯 D2:温湿度超过阈值时点亮告警。
仿真截图可以看到:当前采集温度 28℃,湿度 72%;湿度 72% 已经大于设定阈值 70%,触发告警逻辑,串口持续打印温湿度监测信息。
三、软件设计思路
1. 程序整体框架
系统初始化 → DHT11读取温湿度 → OLED刷新显示 → 阈值判断
→ 正常:绿灯常亮,红灯熄灭,蜂鸣器关闭
→ 超限:红灯点亮,蜂鸣器报警
→ 串口发送数据给ESP8266 → 循环
2. 主要驱动模块
- DHT11 单总线驱动:实现起始信号、等待应答、数据位读取,解析温度、湿度;
- I2C-OLED 驱动:字符显示、数字刷新;
- GPIO 驱动:LED、蜂鸣器 IO 口配置;
- USART 串口驱动:和 ESP8266 通信,打印温湿度数据。
3. 阈值逻辑示例
设定阈值:温度>30℃ 或者 湿度>70%,触发声光报警。 当前仿真数据湿度 72%>70%,满足报警条件。
四、Proteus 仿真效果
五、项目拓展方向
六、总结
本套 STM32 温湿度监测系统硬件结构简单,代码量适中,Proteus 仿真可以完整验证全部功能,非常适合嵌入式入门学习、单片机课程设计与毕业设计。项目覆盖单总线、I2C、串口通信、三极管驱动、阈值判断等多个嵌入式知识点,兼顾硬件原理和软件逻辑,可直接在此基础上迭代升级。
通过网盘分享的文件:仿真文件获取.zip
链接: https://pan.baidu.com/s/1V5zzxbpHc_fRqfGIzSdLfg?pwd=6666 提取码: 6666





