欢迎来到天天文库
浏览记录
ID:38784995
大小:132.42 KB
页数:6页
时间:2019-06-19
《基于c8051f020的温度监测系统设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于c8051f020的温度测试系统设计思路设计需要仪器:c8051f020实验箱一个、温湿度传感器DHT11一个、1602液晶显示屏一个、矩阵键盘一个。大概思路:DHT11与单片机的IO口连接,再通过单片机程序命令控制DHT11的DATA,来读取传感器的温湿度数据,再将读取的数据经过处理,换算成温度和湿度;然后,再将换算出来的温度和湿度值送入到液晶显示屏显示出来。通过矩阵键盘键入两个温度和湿度值,如果实际显示出来的饿温度和湿度值超过键入值,则用LED灯作出相应的反应。液晶1602C8051f020P2^4VDDDHT11NC悬空矩阵键盘DA
2、TA5kGNDVDDLEDDHT11模块;电路的连接:DHT11总共有四个接口,其中NC接口悬空,VDD接电源,2.3~5.5v,以3.3v为宜,GND接地,DATA用于和单片机之间的通信,接一个5k的上拉电阻后,与单片机连接,DATA是单总线通信,所以接任意一个IO口,这里接p2^4口DHT11与单片机之间的通信:单片机发送一次开始信号后,DHT11从低功耗模式转化为高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40位的测量数据,单片机读取数据。最后一位数据读取后,DHT11拉低总线50us,随后总线由上拉电阻拉高,进入空闲
3、模式。等待下一个开始信号。时序:总线空闲时候为高电平,需要读取DHT11的测量数据时,主机需要把总线拉低18ms以上的低电平,这就是开始信号。主机发送玩开始信号后,主机把总线拉高20~30us,等待响应信号。响应信号是DHT11在主机发送完开始信号后发送的80us的低电平,如果主机读取的响应信号为高电平,则说明未收到响应信号,检查电路,看连接是否正常。如果读取的响应信号为低电平,则DHT11正常发送了响应信号,主机准备接收数据。DHT发送完响应信号后,将总线拉高80us,准备发送数据每一位数据都是以50us的低电平间歇开始,以高电平的时长来区
4、分数据位是0还是1,26~28us的高电平表示数据位为0,70us的高电平表示数据位为1.数据的读取:DHT11数字温湿度传感器采用单线双向串行接口技术,一次通信约为4ms,数据分小数部分和整数部分,一次完整的数据传输为40bit,高位在先。即8位湿度整数数据+8位湿度小数数据+8位温度整数数据+8位温度小数数据+8位校验码。其中校验码等于上述四个8位数据之和的后八位。例如:二进制十六进制十进制湿度整数0010010024H36.50湿度小数0011001032H温度整数0001011016H22.80温度小数0101000050H校验码10
5、111100BCH读取的40位数据为:00100100,00110010,00010110,01010000,10111100读取数据为:湿度:36.5%温度:22.8C8051f020P0...P7P3.4P3.51602DB0...DB7ER/WRSVLBLKBLA1602模块....100v10k10Ω1/2w5v以上是1602和单片机的连接图,DB0~DB7连接至单片机的P0^0~P0^7,E连接至P3^4,R/W连接至P3^5,由于只是写数据和写指令进1602,所以,直接把R/S连接至地。BLA接背光电源正极,5v电压过高,所以接一
6、个10Ω的电阻,BLK接背光电源的负极(地)。VL对比调整电压,调整屏幕亮度。操作时序图:先控制RS,来确定是写数据还是写命令,然后把数据或者命令写进去,现实一点时间之后,再给E一个高脉冲,即完成数据或者命令的写入。通过控制RS,E来控制写命令和写数据,把从DHT11里面读取的数据,写进1602,同时显示出来。矩阵键盘模块:矩阵键盘是通过检测低电平来判断是否有键摁下,先定义P3.0为低电平,然后检测P3.4~P3.7是否有低电平,然后通过读取P3.0~P3.7来确定哪个键被按下,其中还要进行松手检测。通过键盘输入警戒温度和湿度值到液晶。如果实
7、测的温度值超过预设的温湿度值,则通过LED灯发出报警。
此文档下载收益归作者所有