#include "DHT.h" // A DHT szenzor kommunikációjához szükséges könyvtár betöltése
// A DHT szenzorhoz csatlakoztatott pin definiálása
#define DHTPIN 12
// A DHT szenzor típusa (ebben az esetben DHT22)
#define DHTTYPE DHT22
// "dht" nevű DHT objektum létrehozása a pin és a szenzor típusa alapján
DHT dht(DHTPIN, DHTTYPE);
#include <LiquidCrystal_I2C.h> // Az OLED kijelző kommunikációjához szükséges könyvtár betöltése
// Az OLED kijelző I2C címe
#define I2C_ADDR 0x27
// Az OLED kijelző oszlopainak száma
#define LCD_COLUMNS 16
// Az OLED kijelző sorainak száma
#define LCD_LINES 2
// "lcd" nevű LiquidCrystal_I2C objektum létrehozása címmel, oszlopszámmal és sorszámmal
LiquidCrystal_I2C lcd(I2C_ADDR, LCD_COLUMNS, LCD_LINES);
void setup() {
Serial.begin(9600); // Sorszár kommunikáció inicializálása 9600 baud sebességgel
Serial.println(F("DHTxx teszt!")); // "DHTxx teszt!" kiírása a szériál monitorra
dht.begin(); // DHT szenzor kommunikáció inicializálása
lcd.init(); // OLED kijelző inicializálása
lcd.backlight(); // OLED háttérfény bekapcsolása
}
void loop() {
delay(10000); // 10 másodperces késleltetés a leolvasások között
float h = dht.readHumidity(); // Páratartalom adatok olvasása a szenzorból és tárolása "h" változóban
float t = dht.readTemperature(); // Hőmérséklet adatok olvasása a szenzorból és tárolása "t" változóban
Serial.print("Páratartalom: "); // "Páratartalom: " kiírása a szériál monitorra
Serial.print(h); // A szenzorból olvasott páratartalom érték kiírása
Serial.print("% "); // "%" szimbólum kiírása
Serial.print("Hőfok: "); // "Hőfok: " kiírása a szériál monitorra
Serial.print(t); // A szenzorból olvasott hőmérséklet érték kiírása
Serial.print("°C "); // "°C" szimbólum kiírása
lcd.setCursor(0, 0); // Kurzor pozícionálása az OLED kijelzőn (0, 0) - bal felső sarok
lcd.print("Hum: "); // "Hum:: " kiírása
lcd.print(h); // A páratartalom érték kiírása az OLED kijelzőre
lcd.print("%"); // "%" szimbólum kiírása
lcd.setCursor(0, 1); // Kurzor pozícionálása az OLED kijelzőn (0, 1) - második sor
lcd.print("Temp: : "); // "Temp: " kiírása
lcd.print(t); // A hőmérséklet érték kiírása az OLED kijelzőre
lcd.print("C"); // "C" szimbólum kiírása
}