基于51单片机的温湿度监测
基于51单片机的温湿度监测系统设计第一章 绪论温湿度监测是农业大棚、仓储环境、智能家居、工业车间等场景的基础需求51单片机以STC89C52为代表凭借成本低廉、编程简单、外设适配性强的特点成为中小型温湿度监测系统的首选主控单元。传统温湿度监测多依赖人工记录或单一显示仪表存在数据滞后、无预警、无法追溯的问题而基于51单片机的监测系统可实现温湿度实时采集、数字化显示、超限告警兼顾实用性与易用性适配低成本、小范围的温湿度管控需求。本设计以STC89C52单片机为核心结合DHT11温湿度传感器构建一套简易且稳定的温湿度监测系统实现0-50℃、20%-90%RH范围内的精准监测与超限声光告警满足基础场景的温湿度管理需求。第二章 系统核心原理与硬件架构本系统硬件架构以STC89C52单片机为核心分为核心控制模块、温湿度采集模块、显示模块、告警模块、电源模块五部分结构简洁且易搭建核心控制模块选用STC89C52单片机其内置定时器/计数器、通用I/O口可满足传感器数据读取、显示驱动、告警控制需求最小系统包含5V稳压供电、11.0592MHz晶振、复位电路支持USB/电池双供电适配便携/固定部署场景。温湿度采集模块核心采用DHT11数字温湿度传感器通过单总线协议与单片机GPIO口通信无需额外ADC转换DHT11测温范围0-50℃精度±2℃测湿范围20%-90%RH精度±5%RH采样周期设为2秒兼顾实时性与功耗。显示模块选用LCD1602字符显示屏通过并行I/O口与单片机连接实时显示“Temp: XX℃ Hum: XX%RH”直观呈现温湿度数据LCD1602自带背光适配暗光环境查看。告警模块采用蜂鸣器双色LED灯实现超限告警——正常状态绿色LED常亮蜂鸣器静音超限状态红色LED闪烁1Hz蜂鸣器间断鸣响1Hz提示温湿度超出预设阈值阈值可通过代码预设如温度≥30℃/≤10℃、湿度≥80%/≤30%也可扩展按键实现自定义修改。电源模块采用5V USB供电兼容手机充电器/移动电源或4节5号电池6V转5V稳压加入防反接保护输出纹波≤100mV保障传感器与单片机稳定工作。第三章 系统软件设计与功能实现系统软件基于Keil C51编译器开发采用模块化编程思路核心流程为“初始化→传感器数据读取→数据处理→显示→超限判断→告警”代码简洁易理解适合新手学习与调试3.1 核心代码实现#includereg52.h#includeintrins.h// 端口定义sbit DHT11_DQP1^0;// DHT11数据引脚sbit LCD_RSP2^0;// LCD1602寄存器选择sbit LCD_RWP2^1;// LCD1602读写控制sbit LCD_ENP2^2;// LCD1602使能sbit LED_GREENP3^0;// 绿色LEDsbit LED_REDP3^1;// 红色LEDsbit BUZZERP3^2;// 蜂鸣器// 温湿度存储变量unsignedcharhum_high,hum_low,temp_high,temp_low;// 告警阈值可自定义#defineTEMP_MAX30// 温度上限#defineTEMP_MIN10// 温度下限#defineHUM_MAX80// 湿度上限#defineHUM_MIN30// 湿度下限// 延时函数DHT11通信专用voiddelay_us(unsignedintus){while(us--);}voiddelay_ms(unsignedintms){unsignedinti,j;for(ims;i0;i--)for(j110;j0;j--);}// LCD1602写命令voidLCD_WriteCmd(unsignedcharcmd){LCD_RS0;LCD_RW0;P0cmd;LCD_EN1;delay_ms(1);LCD_EN0;}// LCD1602写数据voidLCD_WriteData(unsignedchardat){LCD_RS1;LCD_RW0;P0dat;LCD_EN1;delay_ms(1);LCD_EN0;}// LCD1602初始化voidLCD_Init(){LCD_WriteCmd(0x38);// 8位接口2行显示5*7点阵LCD_WriteCmd(0x0c);// 开显示关光标LCD_WriteCmd(0x06);// 光标右移不刷屏LCD_WriteCmd(0x01);// 清屏delay_ms(2);}// DHT11读取温湿度数据bitDHT11_ReadData(){unsignedchari,buf[5];// 主机发送起始信号DHT11_DQ0;delay_ms(20);DHT11_DQ1;delay_us(30);// 等待DHT11响应if(DHT11_DQ0){while(DHT11_DQ0);// 等待响应低电平结束while(DHT11_DQ1);// 等待准备低电平开始// 读取40位数据for(i0;i5;i){buf[i]0;for(unsignedcharj8;j0;j--){while(DHT11_DQ0);// 等待数据位低电平结束delay_us(40);// 判定高电平时长if(DHT11_DQ1)buf[i]|(1(j-1));while(DHT11_DQ1);// 等待数据位高电平结束}}// 校验字节0123字节4if(buf[0]buf[1]buf[2]buf[3]buf[4]){hum_highbuf[0];// 湿度整数部分hum_lowbuf[1];// 湿度小数部分DHT11恒为0temp_highbuf[2];// 温度整数部分temp_lowbuf[3];// 温度小数部分DHT11恒为0return1;}}return0;}// 温湿度显示voidDisplay_Data(){// 第一行显示温度LCD_WriteCmd(0x80);// 光标定位到第一行第1列LCD_WriteData(T);LCD_WriteData(e);LCD_WriteData(m);LCD_WriteData(p);LCD_WriteData(:);LCD_WriteData(temp_high/100);LCD_WriteData(temp_high%100);LCD_WriteData(C);// 第二行显示湿度LCD_WriteCmd(0xC0);// 光标定位到第二行第1列LCD_WriteData(H);LCD_WriteData(u);LCD_WriteData(m);LCD_WriteData(:);LCD_WriteData(hum_high/100);LCD_WriteData(hum_high%100);LCD_WriteData(%);LCD_WriteData(R);LCD_WriteData(H);}// 超限告警判断voidAlarm_Check(){if(temp_highTEMP_MAX||temp_highTEMP_MIN||hum_highHUM_MAX||hum_highHUM_MIN){LED_GREEN1;// 关闭绿灯LED_RED0;// 红灯闪烁BUZZER0;// 蜂鸣器响delay_ms(500);LED_RED1;BUZZER1;delay_ms(500);}else{LED_GREEN0;// 绿灯常亮LED_RED1;// 关闭红灯BUZZER1;// 关闭蜂鸣器}}// 主函数voidmain(){LCD_Init();LED_GREEN0;// 初始绿灯常亮LED_RED1;BUZZER1;while(1){if(DHT11_ReadData()){// 成功读取数据Display_Data();// 显示温湿度Alarm_Check();// 告警判断}delay_ms(2000);// 2秒采样一次}}3.2 代码关键说明DHT11通信通过单总线协议实现核心是严格的时序控制起始信号、响应信号、数据位读取代码中延时函数需根据实际单片机主频微调LCD1602驱动采用并行方式驱动指令简单重点是光标定位0x80对应第一行0xC0对应第二行告警逻辑判断温湿度是否超出预设阈值超限则触发红LED闪烁蜂鸣器鸣响正常则绿灯常亮采样周期设置为2秒避免频繁采样导致传感器数据不稳定。第四章 系统测试与验证4.1 测试环境与步骤硬件搭建按电路图连接51单片机、DHT11、LCD1602、LED、蜂鸣器确保接线无误尤其DHT11的VCC接5VGND接地DATA接P1^0程序下载通过ISP下载器将编译后的hex文件写入STC89C52功能测试正常环境LCD显示当前温湿度绿灯常亮无告警超限测试用手捂住DHT11升温增湿当温度≥30℃或湿度≥80%时红灯闪烁蜂鸣器鸣响恢复测试移开手温湿度回落至阈值内系统恢复绿灯常亮告警停止。4.2 测试结果温湿度采集误差温度±1℃湿度±3%RH符合DHT11的标称精度显示效果LCD1602数据刷新稳定无乱码告警响应超限后1秒内触发告警恢复后立即停止逻辑准确功耗5V供电时整机电流≤50mA4节5号电池可连续工作≥8小时。总结本设计基于51单片机DHT11实现了温湿度的实时采集、显示与超限告警硬件电路简洁代码易理解适合新手入门DHT11采用单总线通信无需ADC大幅简化硬件设计LCD1602直观展示数据分级告警提升实用性系统成本≤30元可通过扩展按键修改阈值、EEPROM保存历史数据、串口数据上传实现功能升级适配更多场景。文章底部可以获取博主的联系方式获取源码、查看详细的视频演示或者了解其他版本的信息。所有项目都经过了严格的测试和完善。对于本系统我们提供全方位的支持包括修改时间和标题以及完整的安装、部署、运行和调试服务确保系统能在你的电脑上顺利运行。

相关新闻

基于51单片机和Proteus的智能停车场设计

基于51单片机和Proteus的智能停车场设计

基于51单片机和Proteus的智能停车场设计 第一章 绪论 随着城市机动车保有量的快速增长,传统停车场依赖人工管理的模式暴露出效率低、空间利用率差、计费不精准等问题,智能化改造成为解决停车难的核心路径。51单片机(以STC89C52为代表&#xf…

2026/7/5 2:36:07 阅读更多 →
【花雕动手做】50V380W-500W有霍尔红黑版本驱动模块:6.5寸轮毂电机综合控制方案

【花雕动手做】50V380W-500W有霍尔红黑版本驱动模块:6.5寸轮毂电机综合控制方案

主板规格参数: 产品名称:380W无刷有霍尔直流电机驱动器 工作电压:6至60V 最大电流:额定16A 峰值20A 最大功率:380W(红板)-500W(黑板) 过流保护:有 产品尺寸&a…

2026/5/17 4:22:41 阅读更多 →
从“抽卡“到“导演“——如何构建AI视频生成的母提示词系统

从“抽卡“到“导演“——如何构建AI视频生成的母提示词系统

一、为什么"小说式提示词"已经过时? 1.1 堆砌形容词的陷阱 让我们先回到那个经典场景。你打开AI视频生成工具,兴致勃勃地输入:“超有氛围感的赛博朋克夜景,一个穿着皮衣的冷酷短发女生站在霓虹灯招牌下,雨水打湿了她的头发和肩膀,远处是巨大的全息广告牌和飞车,背景…

2026/7/3 12:18:19 阅读更多 →

最新新闻

基于SpringBoot的合同管理系统与实现

基于SpringBoot的合同管理系统与实现

选题背景 在当今数字化、信息化高速发展的时代背景下,企业运营与管理正经历着深刻的变革。合同作为企业对外合作、对内管理、明确各方权利义务的核心法律文件与商业凭证,其管理水平直接关系到企业的经营效率、风险控制能力与合规性。传统的人工纸质合同管…

2026/7/5 2:34:45 阅读更多 →
在STM32上跑通TinyML:从理论到实践的技术指南

在STM32上跑通TinyML:从理论到实践的技术指南

一、 引言:为什么要在STM32上部署TinyML?简要介绍TinyML(微型机器学习)的概念、优势及其在边缘计算中的重要性。阐述STM32作为主流微控制器平台,在资源受限环境下运行ML模型的挑战与机遇。二、 核心概念与准备工作2.1 …

2026/7/5 2:34:45 阅读更多 →
WP7有约(一):课程安排

WP7有约(一):课程安排

WP7终于发布了,到目前为止,有关它的新闻和介绍我相信你已经看过不少了,所以这里将会直接跳过,不过在开始之前,我认为还是有必要提醒你做好相关的准备: Expression Blend 4 for Windows Phone和Visual Stud…

2026/7/5 2:32:45 阅读更多 →
PIC18微控制器与SPI EEPROM配置存储方案详解

PIC18微控制器与SPI EEPROM配置存储方案详解

1. 嵌入式系统中的用户配置存储方案选型在开发基于PIC18LF45K42微控制器的嵌入式系统时,如何可靠地存储用户偏好、日程设置和自定义配置是个关键问题。传统方案通常采用微控制器内部EEPROM,但受限于容量(通常仅256-1024字节)和擦写…

2026/7/5 2:32:45 阅读更多 →
了解并使用MVVM框架

了解并使用MVVM框架

到底有哪些开源MVVM框架? 前面介绍了WPF的基本概念和一些相关知识,我们了解到开发WPF应用程序可以使用现成的框架和模式,最为合适的莫过于时下正热的MVVM模式,所以这里我们也列出针对MVVM模式的已有开源框架: 图3 上面…

2026/7/5 2:28:37 阅读更多 →
原来网站排名还能“买”到?

原来网站排名还能“买”到?

在传统SEO时代,网站排名确实可以通过竞价排名(SEM)直接“购买”关键词位置,但那种模式本质是付费买流量,一旦停止付费,排名瞬间消失。而在GEO(生成式引擎优化)时代,所谓的…

2026/7/5 2:26:36 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻