DHT11溫濕度傳感器與單片機之間的通信_第1頁
DHT11溫濕度傳感器與單片機之間的通信_第2頁
DHT11溫濕度傳感器與單片機之間的通信_第3頁
DHT11溫濕度傳感器與單片機之間的通信_第4頁
DHT11溫濕度傳感器與單片機之間的通信_第5頁
免費預(yù)覽已結(jié)束,剩余10頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、DHT11溫濕度傳感器與單片機之間的通信一DHT11的簡介:1接口說明建議連接線長度短于20米時用5K上拉電阻,大于20米時根據(jù)實際情況使用合適的上拉電阻VDDVDDI5K1pmMCUDATADHT114PinGND典型應(yīng)用電路2數(shù)據(jù)幀的描述DATA用于微處理器與DHT11之間的通訊和同步,采用單總線數(shù)據(jù)格式,一次通訊時間4ms左右,數(shù)據(jù)分小數(shù)部分和整數(shù)部分,具體格式在下面說明,當前小數(shù)部分用于以后擴展,現(xiàn)讀出為零.操作流程如下:一次完整的數(shù)據(jù)傳輸為40b%高位先出。數(shù)據(jù)格式:8Ht濕度整數(shù)數(shù)據(jù)+8Ht濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8b4溫度小數(shù)數(shù)據(jù)+8bit校驗和數(shù)據(jù)傳送正確時校驗和數(shù)據(jù)

2、等于8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)”所得結(jié)果的末8位。3時序描述用戶MCU發(fā)送一次開始信號后,DHT11從低功耗模式轉(zhuǎn)換到高速模式,等待主機開始信號結(jié)束后,DHT11發(fā)送響應(yīng)信號,送出40bit的數(shù)據(jù),并觸發(fā)一次信號采集,用戶可選擇讀取部分數(shù)據(jù).從模式下,DHT11接收到開始信號觸發(fā)一次溫濕度采集,如果沒有接收到主機發(fā)送開始信號,DHT11不會主動進行溫濕度采集.采集數(shù)據(jù)后轉(zhuǎn)換到低速模式。1.通訊過程如圖1所示VCC-”GNII單卷線數(shù)據(jù)r位高延時-J魔街輸出一a主機發(fā)開I始信號捶翦并h延時等特1*aDHI喻感I輸出數(shù)據(jù)W信智戰(zhàn)鉗明;鬻a盤

3、5肽機技岐*Wus主機信號THT值號圖1總線空閑狀態(tài)為高電平,主機把總線拉低等待DHT11響應(yīng),主機把總線拉低必須大于18毫秒保證DHT11能檢測至U起始信號。DHT11接收到主機的開始信號后等待主機開始信號結(jié)束,然后發(fā)送80usffi電平響應(yīng)信號.主機發(fā)送開始信號結(jié)束后延時等待20-40U擊,讀取DHT11的響應(yīng)信號,主機發(fā)送開始信號后,可以切換到輸入模式,或者輸出高電平均可,總線由上拉電阻拉高。VCC-CND-單總線信號線說明:主機信號DHT信號總線為低電平,說明DHT11發(fā)送響應(yīng)信號,DHT11發(fā)送響應(yīng)信號后,再把總線拉高80us準備發(fā)送數(shù)據(jù),每一Ht數(shù)據(jù)都以50usffi電平時隙開始,

4、高電平的長短定了數(shù)據(jù)位是0還是1.格式見下面圖示.如果讀取響應(yīng)信號為高電平,則DHT11沒有響應(yīng),請檢查線路是否連接正常.當最后一Ht數(shù)據(jù)傳送完畢后,DHT11拉低總線50us,隨后總線由上拉電阻拉高進入空閑狀態(tài)。數(shù)字0信號表示方法如圖4所示vccGNII11計開始II5011s|26us-28usI表示rJ-下一bit開始單總線信號線說明:主機信號DHT信號7Oue信號線說明:圖4數(shù)字1信號表示方法.如圖5所示主機信號DH工信號圖5二實現(xiàn)電路(簡易視圖)YCCvccP皿XTAll好UADIKTAL2PJ1.4D:POE皿WAD4和,皿如看AI然WADXSTEAVTfPl.QltFSD?PlI

5、THKALEPJ2FUFl4PNUjEP1FIITxDPJJ需;照FjiTJFlIPMTOP1&A5MT1F11A?F?f同F(xiàn)r2A:iP廠百P:3Ali|F14AJ2F16AJ4JAl.堂DKTllA三編程思路根據(jù)傳感器的通信協(xié)議,首先由單片機通過I/O主動產(chǎn)生要求的激發(fā)信號,然后將數(shù)據(jù)線的控制權(quán)交給傳感器,接著單片機通過while語句不間斷的檢查I/O口的高低電平,從而達到對時序的正確把握,解析由準確的傳輸數(shù)據(jù)。四程序代碼#include#defineucharunsignedchar#defineuintunsignedintsbitdat=P1A0;sbitRS=P2A5;ledsbi

6、tRW=P2A6;ledsbitE=P2A7;led使能端voiddelay(intx)(inty,z;for(y=0;yx;y+)for(z=0;z=0;i-)n=0;m=0;while(dat=0);while(dat=1)(n+;if(n24&m=0)a=a+k;m=1;if(m=1)break;while(dat=1);k=k/2;returna;voidxianshi(ucharx,intk)inti,j,n;i=x/100;j=x/10%10;n=x%10;/ledxiezhiling(0x80+3*k);/ledxieshuju(0x30+i);ledxiezhiling(0x8

7、0+3*k+1);ledxieshuju(0x30+j);ledxiezhiling(0x80+3*k+2);ledxieshuju(0x30+n);voidxianshi2(ucharx,intk)inti,j,n;i=x/100;j=x/10%10;n=x%10;ledxiezhiling(0xc0+3*k);ledxieshuju(0x30+i);ledxiezhiling(0xc0+3*k+1);ledxieshuju(0x30+j);ledxiezhiling(0xc0+3*k+2);ledxieshuju(0x30+n);voidmain()inti;uchara5;ucharx;

8、ledchushihua();delay(10000);delay(10000);delay(10000);delay(10000);while(1)delay(10000);delay(10000);delay(10000);a0=0;a1=0;a2=0;a3=0;a4=0;kaishi();xiangying();a0=jieshou();a1=jieshou();a2=jieshou();a3=jieshou();a4=jieshou();while(dat=1);while(dat=0);x=a0+a1+a2+a3;for(i=0;i5;i+)xianshi(ai,i);xianshi2(x,0);五實踐效果圖六反思與總結(jié)雖然對時序的編程

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論