/*
電子元件:DHT22
功能:偵測環境溫度、濕度
*/
#include "DHTesp.h" // 使用 DHT sensor library for ESPx 函式庫
const int DHT_PIN = 32; // DHT22腳位 // 32、33、34、35為佳
DHTesp dhtSensor;
void setup() {
Serial.begin(115200);
dhtSensor.setup(DHT_PIN, DHTesp::DHT22); // DHT22
//dhtSensor.setup(DHT_PIN, DHTesp::DHT11); // DHT11
}
void loop() {
// 讀取溫度和濕度資料
TempAndHumidity data = dhtSensor.getTempAndHumidity();
// 判斷是否有正確讀取
if(dhtSensor.getStatus() != 0){
Serial.println("DHT sensor error status: " + String(dhtSensor.getStatusString())); // 回傳是 timeout 或是 checksum 錯誤
}else if (isnan(data.humidity) || isnan(data.temperature)){
Serial.println("Data is NaN!");
}else{
Serial.println("Temperature : " + String(data.temperature, 2) + " °C"); // 參考語法 String(val, decimalPlaces)
Serial.println("Humidity : " + String(data.humidity, 2) + " %");
Serial.println("------------------");
}
delay(2000);
}