单片机课程设计——基于51单片机温湿度检测系统的设计与实现

本文详细介绍了如何使用51单片机和DHT11传感器构建一个温湿度检测系统,包括主控模块、传感器模块、显示模块、继电器模块和阈值设置,通过继电器控制负载调节环境温湿度。系统每2s采集一次数据,并在LCD1602液晶屏上显示,超限则触发报警并控制相关设备。
摘要由CSDN通过智能技术生成

  本文主要介绍了怎么使用51单片机最小系统板和温湿度传感器制作一个温湿度检测系统。

  本次设计主要涉及了温湿度的测量、显示以及实现简单控制。硬件方面有五个模块,即STC89C52单片机主控模块、传感器模块、LCD1602液晶显示模块、继电器模块以及阈值设置模块。整体框架如下图所示。

  

  传感器模块使用的是DHT11数字温湿度传感器。通过DHT11检测出当前环境下的温湿度,将所测数据交给AT单片机进行分析和处理,并分别存入不同数组以便显示时候用。其中,为了显示稳定,本系统每间隔2s采集一次数据送入单片机。

  本系统采用的是继电器驱动负载,因此无论温度还是湿度超出范围继电器均可以驱动负载工作,及时启用降温风扇以及抽湿风扇来有效的调整粮仓等应用场所内的温湿度。

  硬件设计

  该系统主要由五个大的模块构成,分别是主控模块、传感器模块、LCD液晶显示模块、继电器模块以及阈值设置模块。其中主控模块是此次毕业设计的核心模块,主要是指STC89C52芯片,它控制整个系统的运行,利用其各个口分别控制其他模块,使其他模块能够成为一个整体,实现功能的需要,从DHT11温湿度传感器中读入温度和湿度,在液晶屏上即时显示。液晶屏上同时显示温湿度上限值,该上限值保存外外部EEPROM存储器中,掉电不失,并且可以通过四只按键上调或下调。当温度或湿度值超过上限值时,报警信号点亮相应报警灯。该报警信号可以通过三极管驱动继电器,以控制外部风机或制冷器。

  软件设计

  软件流程图如下所示。

  系统总体电路图如下所示:

 

  主函数代码如下:(如果有需要在后面的网盘链接中下载完整程序)

  1 #include <reg52.h>
  2 #include "1602.h"
  3 #include "dht.h"
  4 #include "2402.h"
  5 
  6 //¶¨ÒåÈý¸öLEDµÆ
  7 sbit Led_qushi=P1^6;        //ȥʪµÆ
  8 sbit Led_jiangwen=P1^5;        //½µÎµÆ
  9 sbit Led_shengwen=P1^4;        //ÉýεÆ
 10 sbit Key_TH1 = P3^2;
 11 sbit Key_TH2 = P3^3;
 12 sbit Key_HH1 = P3^4;
 13 sbit Key_HH2 = P3^5;
 14 
 15 //¶¨Òå±êʶ
 16 volatile bit FlagStartRH = 0;  //¿ªÊ¼ÎÂʪ¶Èת»»±êÖ¾
 17 volatile bit FlagKeyPress = 0; //Óмü°´ÏÂ
 18 
 19 
 20 //¶¨ÒåÎÂʪ¶È´«¸ÐÆ÷ÓÃÍⲿ±äÁ¿
 21 extern U8  U8FLAG,k;
 22 extern U8  U8count,U8temp;
 23 extern U8  U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata;
 24 extern U8  U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;
 25 extern U8  U8comdata;
 26 extern U8  count, count_r;
 27 
 28 U16 temp;
 29 S16 temperature, humidity;
 30 S16 idata TH, HH;  //
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值