Библиотека DHT
Для работы Arduino с датчиками DH11 и DH22 уже есть готовая библиотека — DHT
Для использования датчика DHT11 необходимо закомментировать строку:
//#define DHTTYPE DHT22 // DHT 22 (AM2302)
и раскомментировать:
#define DHTTYPE DHT11 // DHT 11
Cкетч получения данных с датчика температуры и влажности DH22 и вывода данных в последовательный порт
#include "DHT.h"
#define DHTPIN 2 // пин подключения
//#define DHTTYPE DHT11 // DHT 11
#define DHTTYPE DHT22 // DHT 22 (AM2302)
//#define DHTTYPE DHT21 // DHT 21 (AM2301) DHT dht(DHTPIN, DHTTYPE);
void setup() { Serial.begin(9600); Serial.println("DHTxx test!"); dht.begin();
}
void loop() {
// Reading temperature or humidity takes about 250 milliseconds!
// Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor) float h = dht.readHumidity();
float t = dht.readTemperature();
// check if returns are valid, if they are NaN (not a number) then something went wrong!
if (isnan(t) || isnan(h)) { Serial.println("Failed to read from DHT");
} else { Serial.print("Humidity: "); Serial.print(h); Serial.print(" %\t"); Serial.print("Temperature: "); Serial.print(t); Serial.println(" *C");
}
}