本文介紹DHT11溫濕度傳感器的封裝信息,、DHT11引腳說明,、DHT11應(yīng)用電路等,。
1,、封裝信息
2,、DHT11通訊總介
微處理器與DHT 11之間的通訊和同步,, 采用單總線數(shù)據(jù)格式,,一次通訊時(shí)間4ms左右,,數(shù)據(jù)分小數(shù)部分和整數(shù)部分。一次完整的數(shù)據(jù)傳輸為40bit,, 高位先出,。
數(shù)據(jù)格式:8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)+8bit校驗(yàn)和
數(shù)據(jù)傳送正確時(shí), 校驗(yàn)和數(shù)據(jù)等于“8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)”所得結(jié)果的末8位,。
3,、DHT11喚醒工作和睡眠
DHT 11在沒有主機(jī)喚醒的時(shí)候處于低功耗模式。
當(dāng)需要使用的時(shí)候,, MCU發(fā)送一次開始信號,, DHT 11從低功耗模式轉(zhuǎn)換到高速模式, 等待主機(jī)開始信號結(jié)束后,, DHT 11發(fā)送響應(yīng)信號,, 送出40bit的數(shù)據(jù), 并觸發(fā)一次信號采集,。
如果沒有接收到主機(jī)發(fā)送開始信號,, DHT 11不會(huì)主動(dòng)進(jìn)行溫濕度采集.采集數(shù)據(jù)后轉(zhuǎn)換到低速模式。
4,、DHT11通訊過程
總線在空閑的時(shí)候?yàn)楦唠娖?/p>
主機(jī)把總線拉低等待DHT 11的響應(yīng),。拉低的時(shí)間必須大于18毫秒, 保證DHT 11能檢測到起始信號,。
DHT 11接收到主機(jī)的開始信號后,, 等待主機(jī)開始信號結(jié)束,然后發(fā)送80us低電平響應(yīng)信號,。
主機(jī)發(fā)送開始信號結(jié)束后,, 延時(shí)等待20-40us后, 讀取DHT 11的響應(yīng)信號,。(主機(jī)發(fā)送開始信號后,,可以切換到輸入模式,或者輸出高電平均可)
當(dāng)最后一bit數(shù)據(jù)傳送完畢后,, DHT 11拉低總線50us,, 隨后總線由上拉電阻拉高進(jìn)入空閑狀態(tài)。
5,、DHT11通訊時(shí)序圖
6,、FPGA實(shí)現(xiàn)
module DTH11(
input clk,
input rst,
inout dht11,
input dht11_req, //數(shù)據(jù)采集請求
output dht11_down, //數(shù)據(jù)采集完成
output[7:0] tempH, //溫度數(shù)據(jù)整數(shù)
output[7:0] tempL, //溫度數(shù)據(jù)小數(shù)
output[7:0] humidityH, //溫度數(shù)據(jù)整數(shù)
output[7:0] humidityL //溫度數(shù)據(jù)小數(shù)
);
回復(fù)DHT11-FPGA 獲取模板工程
更多信息可以來這里獲取==>>電子技術(shù)應(yīng)用-AET<<
原文鏈接:https://mp.weixin.qq.com/s/qSdUli3L-SgC4-9eSLRpMw
電子技術(shù)應(yīng)用專欄作家:FPGA之旅