
一、项目概述
本项目设计一套基于 STM32F103C8T6 单片机的汽车温度监测系统,用于实时采集车内环境温度,具备温度显示、阈值设置、多档位声光报警、串口数据上传等功能。使用 Proteus 完成电路仿真,可用于嵌入式课程设计、毕设入门练习。
应用场景:汽车机舱 / 车厢温度监测,当温度超出设定上下限,触发灯光 + 蜂鸣器报警,提醒驾驶员高温风险。
二、硬件电路方案(Proteus 原理图说明)
主控芯片:STM32F103C8T6
- 温度采集模块 DS18B20 单总线数字温度传感器,PB15 引脚通信,无需 AD 转换,直接输出数字温度,精度 0.5℃,适合环境测温。
- OLED12864 显示屏 屏幕实时显示当前温度、温度上下限阈值;图中示例:上限 40℃,下限 30℃。
- 按键模块(3 个独立按键)
- K8:切换设置模式
- K6:阈值减
- K5:阈值加 用户可自由修改温度报警阈值。
- 状态指示灯
- D1 绿色:正常温度区间
- D2 红色:超上限高温报警
- D3 黄色:低于下限低温提示
- 蜂鸣器报警电路 PB0 驱动三极管 8050,控制蜂鸣器,温度超限后蜂鸣器鸣叫。
- 串口通信模块(Virtual Terminal 虚拟终端) PA9 (TX)、PA10 (RX),实时把温度数据打印到串口终端,可在上位机查看温度日志。
三、系统工作逻辑
- 系统上电,DS18B20 采集当前温度;
- OLED 刷新当前温度与预设报警阈值;
- 温度判断逻辑:
- 温度在【下限~上限】:绿灯常亮,蜂鸣器关闭;
- 温度>上限:红灯点亮,蜂鸣器报警;
- 温度<下限:黄灯点亮;
- 按键可以进入阈值设置,增减上下限;
- 每一次温度采集,串口同步输出温度信息到虚拟终端;
四、仿真效果
Proteus 仿真运行截图如上图: DS18B20 采集温度 32.0℃,在 30~40℃区间,绿色指示灯点亮;OLED 屏幕清晰展示当前温度、高低阈值;右侧虚拟终端持续打印温度:32; 修改 DS18B20 温度数值,会自动切换指示灯,超温时蜂鸣器响起。
五、核心功能清单
✅ DS18B20 单总线温度采集 ✅ OLED12864 实时显示温度 + 报警阈值 ✅ 3 按键可调报警上下限 ✅ 三色 LED 状态指示 ✅ 蜂鸣器超温声光报警 ✅ 串口实时上传温度数据(虚拟终端) ✅ Proteus 完整电路仿真,可直接跑仿真
六、项目总结
该系统以 STM32 为主控,DS18B20 数字测温,搭配 OLED、按键、声光报警,是一套完整的嵌入式采集监测项目。硬件电路简洁,代码量适中,适合 STM32 入门学习,也可作为课程设计、毕业设计基础方案。 可拓展方向:增加多个 DS18B20 多点测温、蓝牙 / WiFi 上传手机 APP、增加 EEPROM 保存阈值断电不丢失。
通过网盘分享的文件:仿真文件获取.zip
链接: https://pan.baidu.com/s/1V5zzxbpHc_fRqfGIzSdLfg?pwd=6666 提取码: 6666