DHT11溫溼度偵測模組。
模組有三根PIN,分別為DC5V,DATA輸出。
DATA和DC+需並聯一個4.7K電阻做上拉電阻。
因為我沒有4.7K電阻,所以我串聯兩個2.2K代替(如下圖)。
一開始我以為這個模組已經內建上拉電阻了,仔細看才發現上面的SMD電阻只是給LED分壓
而已。
來看程式 :
#include <dht.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,2,1,0,4,5,6,7,3,POSITIVE);
//LCD+轉換器的的定義設定。
const int dht_dpin A1;
dht DHT;
//宣告腳位和變數
void setup(){
lcd.begin(16, 2);
Serial.begin(9600);
//序列阜9600 bps。
}
void loop(){
lcd.setCursor(0, 0);
DHT.read11(dht_dpin);
//偵測器的回傳數值。
lcd.print("Humidity:");
lcd.print((float)DHT.humidity, 1);
lcd.print("%");
lcd.setCursor(0, 1);
lcd.print("Tempure:");
lcd.print((float)DHT.temperature, 1);
lcd.print("oC");
//LCD顯示規則。
Serial.println((float)DHT.humidity);
Serial.println((float)DHT.temperature);
Serial.println();
//序列阜顯示規則。
delay(2000);
//兩秒回傳一次
}
但說真的很不準,當時我房間只有15度,卻顯示20度。
沒有留言:
張貼留言