# include <SimpleDHT.h>
# include <LiquidCrystal_I2C.h>
// LCD einen Namen zuweisen
LiquidCrystal_I2C lcd(0x27, 20, 4);
// Pin des Transistors
int TRANSISTOR = 6;
// Pin DHT22
int SENSOR_DHT22 = 9;
// Sensor einen Namen zuweisen (dht22)
SimpleDHT22 dht22(SENSOR_DHT22);
void setup()
{
// LCD einschalten
lcd.init();
lcd.backlight();
pinMode(TRANSISTOR, OUTPUT);
}
void loop()
{
float Temperatur;
// Daten lesen nur Temperatur
dht22.read2(&Temperatur, NULL, NULL);
// in Strings umwandeln, . durch , ersetzen
String AnzeigeTemperatur = String(Temperatur);
AnzeigeTemperatur.replace(".", ",");
// Anzeige LCD
lcd.setCursor(0, 0);
lcd.print("Temperatur: ");
lcd.setCursor(0, 1);
// \337C -> °
lcd.print(AnzeigeTemperatur + " \337C -> DHT22");
// wenn die Temperatur > 25 -> Lüfter einschalten
if (Temperatur > 25)
{
digitalWrite(TRANSISTOR, HIGH);
lcd.setCursor(0, 3);
lcd.print("L\365fter eingeschaltet");
}
// Lüfter ausschalten
else
{
digitalWrite(TRANSISTOR, LOW);
lcd.setCursor(0, 3);
// \365 -> ü
lcd.print("L\365fter ausgeschaltet");
}
// Messintervall
delay(2000);
}
Letzte Aktualisierung: