education:arduino_dht22
DHT22
- Čidlo teploty a vlhkosti
- Komunikace přes jeden datový pin
- Napájení 3.3 - 6V
DHT22 | ARDUINO | ESP32 |
---|---|---|
VCC | 5V | 3V3 |
DATA | VOLITELNÝ | |
NC | NEZAPOJEN | |
GND | GND |
TEPLOTA | VLHKOST | |
---|---|---|
ROZSAH | -40~80°C | 0~100% |
ROZLIŠENÍ | 0.1°C | 0.1% |
PŘESNOST | ±0.5°C | ±2~5% |
Knihovna obsahuje:
begin(usec);
- inicializace senzoru. usec
- délka pull-up před začátkem čtení dat ze senzoru
readTemperature(S, force);
- Vrátí naměřenou teplotu jako float
. S
- jednotky °F/°C. force
- vynutí nové hodnoty pokud poslední měření proběhlo před méně než dvěma sekundami
readHumidity(force);
- Vrátí naměřenou relativní vlhkost jako float
computeHeatIndex(isFahrenheit);
- Vrátí pocitovou teplotu jako float
. isFahrenheit
- jednotky °F/°C
- DHT22.ino
#include "DHT.h" // Kód je psaný pro verzi knihovny 1.4.4 #define DHTPIN 2 // digitální pin připojený k dht22 #define DHTTYPE DHT22 // DHT22 DHT dht(DHTPIN, DHTTYPE); void setup() { Serial.begin(9600); Serial.println(F("\nDHT22 test")); dht.begin(); } void loop() { delay(2000); float t = dht.readTemperature(); // načtení teploty ve °C float h = dht.readHumidity(); // načtení vlhkosti ze senzoru if (isnan(t) || isnan(h)) { Serial.println(F("Chyba čtení dat z DHT22")); return; } float hi = dht.computeHeatIndex(t, h, false); // výpočet pocitové teploty ve °C (isFahreheit = false) Serial.println("\nTeplota\t\tPocit. teplota\t\tvlhkost"); Serial.print(t); Serial.print(" °C\t\t"); Serial.print(hi); Serial.print(" °C\t\t"); Serial.print(h); Serial.println("%"); }
education/arduino_dht22.txt · Poslední úprava: 2023/08/18 12:37 autor: 127.0.0.1