The DHT22 is a reliable sensor for measuring temperature and humidity. It is a digital sensor that provides high accuracy and long-term stability. The DHT22 is widely used in weather stations, home automation systems, and environmental monitoring due to its ease of use and affordability.
Pin Number | Name | Description |
---|---|---|
1 | VDD | Power supply (3.3 to 6V DC) |
2 | DATA | Serial data output |
3 | NC | Not connected |
4 | GND | Ground |
#include "DHT.h"
#define DHTPIN 2 // Digital pin connected to the DHT sensor
#define DHTTYPE DHT22 // DHT 22 (AM2302)
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
dht.begin();
}
void loop() {
// Wait a few seconds between measurements.
delay(2000);
// Reading temperature or humidity takes about 250 milliseconds!
float humidity = dht.readHumidity();
// Read temperature as Celsius (the default)
float temperature = dht.readTemperature();
// Check if any reads failed and exit early (to try again).
if (isnan(humidity) || isnan(temperature)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
// Compute heat index in Celsius (isFahrenheit = false)
float heatIndex = dht.computeHeatIndex(temperature, humidity, false);
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.print("% Temperature: ");
Serial.print(temperature);
Serial.print("°C Heat index: ");
Serial.print(heatIndex);
Serial.println("°C");
}
Q: How long does the DHT22 need to warm up? A: The DHT22 typically requires one to two seconds to warm up after power-on.
Q: Can I use a longer cable to connect the DHT22 to a microcontroller? A: Yes, but keep the cable length under 20 meters to prevent signal degradation.
Q: How often can I request data from the DHT22? A: You should wait at least 2 seconds between data requests to avoid self-heating and ensure accurate measurements.
Q: Is the DHT22 waterproof? A: No, the DHT22 is not waterproof. Protect it from condensation and water exposure.
For further assistance, consult the datasheet or contact technical support.