鄭州網(wǎng)站建設(shè)哪家公司好/新品上市的營銷方案
我的自己做的硬件時直接用STM32f103的最小板外界AM2302實現(xiàn)的溫濕度采集,證實不用上拉電阻也可以實現(xiàn)溫濕度采集功能。
但不知道為什么效驗位≠濕度高8位+濕度低8位+溫度高8位+溫度低8位。
所以我的程序上并沒有加效驗位判斷。
AM2302引腳圖
單總線通信時序
主機和傳感器之間的通信可通過下面四個步驟
一、 AM2302 上電后(AM2302 上電后要等待 2S 以越過不穩(wěn)定狀態(tài),在此期間讀取設(shè)備不能發(fā)送任何指令),測試環(huán)境溫濕度數(shù)據(jù),并記錄數(shù)據(jù),此后傳感器自動轉(zhuǎn)入休眠狀態(tài)。AM2302 的 SDA 數(shù)據(jù)線由上拉電阻拉高一直保持高電平,此時 AM2302 的 SDA 引腳處于輸入狀態(tài),時刻檢測外部信號。
二、微處理器的 I/O 設(shè)置為輸出,同時輸出低電平,且低電平保持時間不能小于 800us,典型值是拉低 1MS,然后微處理器的 I/O 設(shè)置為輸入狀態(tài),釋放總線,由于上拉電阻,微處理器的 I/O 即 AM2302的 SDA 數(shù)據(jù)線也隨之變高,等主機釋放總線后,AM2302 發(fā)送響應(yīng)信號,即輸出 80 微秒的低電平作為應(yīng)答信號,緊接著輸出 80 微秒的高電平通知外設(shè)準(zhǔn)備接收數(shù)據(jù)。
三、AM2302 發(fā)送完響應(yīng)后,隨后由數(shù)據(jù)總線 SDA 連續(xù)串行輸出 40 位數(shù)據(jù),微處理器根據(jù) I/O 電平的變化接收 40 位數(shù)據(jù)。
位數(shù)據(jù)“0”的格式為: 50 微秒的低電平加 26-28 微秒的高電平;
位數(shù)據(jù)“1”的格式為: 50 微秒的低電平加 70 微秒的高電平;
連續(xù)讀取五個數(shù)據(jù)
AM2302.C
#