#include "DHT.h" //导入DHT.H库文件
#define DHTPIN 2 // DHT信号引脚插在uno主板2号引脚
#define DHTTYPE DHT11 // 声明DHT传感器规格为DHT11(DHT22)
DHT dht(DHTPIN, DHTTYPE);//DHT传感器说明
void setup() {
Serial.begin(9600);
Serial.println(F("DHTxx test!"));
dht.begin(); //启动传感器
}
void loop() {
delay(2000); //等待2秒,DHT传感器首次传输数据要250毫秒-2秒
float h = dht.readHumidity(); //读取湿度值
float t = dht.readTemperature(); //读取温度为摄氏度值
float f = dht.readTemperature(true);//读取温度为华氏度
if (isnan(h) || isnan(t) || isnan(f)) { //检查是否有任何读取失败,并提前退出(重试)。
Serial.println(F("Failed to read from DHT sensor!"));
return;
}
float hif = dht.computeHeatIndex(f, h); //以华氏度为单位计算热指数
float hic = dht.computeHeatIndex(t, h, false);//以摄氏度为单位计算热指数(isFahreheit=false)
Serial.print(F("Humidity: "));
Serial.print(h);
Serial.print(F("% Temperature: "));
Serial.print(t);
Serial.print(F("°C "));
Serial.print(f);
Serial.print(F("°F Heat index: "));
Serial.print(hic);
Serial.print(F("°C "));
Serial.print(hif);
Serial.println(F("°F"));
}