這幾天弄了兩片DHT11溫溼度傳感器,令人蛋疼的數據讓我忙了整整一天。現在終於明白了。
數據手冊上說是40bit的數據流:8bit溼度整數部+8bit溼度小數部分+8bit溫度整數部分+8bit溫度小數部分+8bit校驗和
檢驗和=8bit溼度整數+8bit溼度小數+8bit溫度整數+8bit溫度小數
我數學學得不是多好,所以涉及到數制的轉換就很不明白
將溫度和溼度的數據進行拼接在轉換成十進制數,截取小數點即可
例:
unsigned char temp_h=0x32,temp_l=0x00;
unsigned int temp=0;
temp=temp_h<<8+temp_l;
temp/1000爲整數部分,
temp%1000爲小數部分,
故,該手冊中的整數和小數的用法很容易引起誤解,並且沒有具體的計算公式,讓我這樣的人,無從下手了。