DHT11温湿度传感器
2022-07-13
作者:电子技术应用专栏作家 FPGA之旅
来源:电子技术应用专栏作家 FPGA之旅
本文介绍DHT11温湿度传感器的封装信息、DHT11引脚说明、DHT11应用电路等。
1、封装信息
2、DHT11通讯总介
微处理器与DHT 11之间的通讯和同步, 采用单总线数据格式,一次通讯时间4ms左右,数据分小数部分和整数部分。一次完整的数据传输为40bit, 高位先出。
数据格式:8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据+8bit校验和
数据传送正确时, 校验和数据等于“8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据”所得结果的末8位。
3、DHT11唤醒工作和睡眠
DHT 11在没有主机唤醒的时候处于低功耗模式。
当需要使用的时候, MCU发送一次开始信号, DHT 11从低功耗模式转换到高速模式, 等待主机开始信号结束后, DHT 11发送响应信号, 送出40bit的数据, 并触发一次信号采集。
如果没有接收到主机发送开始信号, DHT 11不会主动进行温湿度采集.采集数据后转换到低速模式。
4、DHT11通讯过程
总线在空闲的时候为高电平
主机把总线拉低等待DHT 11的响应。拉低的时间必须大于18毫秒, 保证DHT 11能检测到起始信号。
DHT 11接收到主机的开始信号后, 等待主机开始信号结束,然后发送80us低电平响应信号。
主机发送开始信号结束后, 延时等待20-40us后, 读取DHT 11的响应信号。(主机发送开始信号后,可以切换到输入模式,或者输出高电平均可)
当最后一bit数据传送完毕后, DHT 11拉低总线50us, 随后总线由上拉电阻拉高进入空闲状态。
5、DHT11通讯时序图
6、FPGA实现
module DTH11(
input clk,
input rst,
inout dht11,
input dht11_req, //数据采集请求
output dht11_down, //数据采集完成
output[7:0] tempH, //温度数据整数
output[7:0] tempL, //温度数据小数
output[7:0] humidityH, //温度数据整数
output[7:0] humidityL //温度数据小数
);
回复DHT11-FPGA 获取模板工程
更多信息可以来这里获取==>>电子技术应用-AET<<
原文链接:https://mp.weixin.qq.com/s/qSdUli3L-SgC4-9eSLRpMw
电子技术应用专栏作家:FPGA之旅