资源描述:
《基于某某51单片机地温湿度DHT11采集》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实用标准一、设计目的温湿度控制系统早已经成为当今社会研究的热门领域之一,同时温湿度也是现今工农业生产生活中必须要首先考虑的重要因素之一。因此现今社会生产生活中就迫切需要一种价格便宜、容易操作而且精确度高的温湿度控制系统。本系统设计就是利用AT89C52单片机对温湿度参量进行检测进而实现对温湿度参量的控制。本系统设计通过使用AT89C52单片机、DHT11传感器模块、LCD1602液晶显示屏模块以及LED闪烁和蜂鸣器报警模块。简单的系统设计就可以基本上满足本系统设计的系统设计要求。DHT11数字温湿度传感器负责把采集到的温湿度信号传送给AT89C52单片机。温湿度
2、经过AT89C52单片机处理,然后AT89C52准确地把温湿度信号发送到LCD1602液晶显示屏模块,温湿度数据就可以准确地显示到LCD1602液晶屏上面,同时我们可以分别对温度和湿度设置上下限,越限LED闪烁和蜂鸣器报警模块。二、设计要求和方案选择•LCD1602能够实时、准确的显示AT89C52采样温度值和湿度值,显示设定报警的温度和风扇的状态。 •DHT11采集温度及湿度值,AT89C52能够将DHT11输送过来的采集信息,准确的判断标准值与设定值之间的差异,及时的启动报警装置(LED闪烁和蜂鸣器)进行报警。•根据采集温湿度的数据进行判断,控制继电器进行风
3、扇的开闭传感器选择方案•方案一:利用两个传感器分别检测温度和湿度值,温度检测模块选用DS18B20温度传感器(+-0.5℃)。湿度检测模块选用HS1101电容式湿度传感器(+-5%RH)。这两款传感器都是我们大学实践电子设计中非常常见和常用的传感器。 •方案二:检测温湿度数值选用DHT11传感器作为系统设计的温湿度检测模块。DHT11传感器能够同时对温度和湿度数值进行检测,而且其精确度能过完全满足本课程设计的精度要求。湿度、温度测量误差:+-5%、+-2度• 经过上述分析,方案一虽然精度更精确。却稍显复杂。方案二虽然DHT11文案大全实用标准传感器没怎么使用过,
4、即便不能达到方案一那么高的精度要求,仍也能满足系统设计要求,而且更加简单,更加容易实现,也更加稳定可靠。所以我选择方案二。DHT11数字温湿度传感器是一款4针单排引脚封装的传感器模块。DHT11传感器主要应用于场所温湿度的检测,性能稳定可靠。DHT11传感器主要由一个电阻式感湿元件和一个NTC测温元件组成,DHT11传感器引脚可以直接与AT89C52直接相连接。该传感器连接十分方便,所以利用该传感器制作本系统设计可以使系统制作变得十分简单。一次完整的数据传输为40bit,高位先出。数据格式:8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit
5、温度小数数据+8bit校验和数据传送正确时校验和数据等于“8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据”8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据”所得结果的末8位。用户MCU发送一次开始信号后,DHT11从低功耗模式转换到高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40bit的数据,并触发一次信号采集,用户可选择读取部分数据.从模式下,DHT11接收到开始信号触发一次温湿度采集,如果没有接收到主机发送开始信号,DHT11不会主动进行温湿度采集.采集数据后转换到低
6、速模式。通讯过程如图总线空闲状态为高电平,主机把总线拉低等待DHT11响应,主机把总线拉低必须大于18毫秒,保证DHT11能检测到起始信号。DHT11接收到主机的开始信号后,等待主机开始信号结束,然后发送80us低电平响应信号.主机发送开始信号结束后,延时等待20-40us后,读取DHT11的响应信号,主机发送开始信号后,可以切换到输入模式,或者输出高电平均可,总线由上拉电阻拉高。文案大全实用标准总线为低电平,说明DHT11发送响应信号,DHT11发送响应信号后,再把总线拉高80us,准备发送数据,每一bit数据都以50us低电平时隙开始,高电平的长短定了数据位
7、是0还是1.格式见下面图示.如果读取响应信号为高电平,则DHT11没有响应,请检查线路是否连接正常.当最后一bit数据传送完毕后,DHT11拉低总线50us,随后总线由上拉电阻拉高进入空闲状态。数字0信号表示方法如图数字1信号表示方法文案大全实用标准DHT11软件流程图文案大全实用标准显示器选择方案 •方案一:采用12864液晶显示屏。12864液晶显示模块自身内置8192个中文汉字、128个字符及64X256点阵显示RAM。可以显示汉字以及图案。• 方案二:选择使用LCD1602液晶显示屏。LCD1602能够显示16列2行,但是只能显示字母、数字和符号能显示1
8、6*2个字符,不能显示汉