#include "DHT.h"
#define DHTPIN 4 // Digital pin connected to the DHT sensor
#define LEDPIN1 26
#define LEDPIN2 13
#define SWITCH 15
#define DHTTYPE DHT22 // DHT 22
DHT dht(DHTPIN, DHTTYPE);
float soll_temperatur = 18.0;
void setup() {
Serial.begin(115200);
Serial.println("DHT22 test!");
dht.begin();
pinMode(LEDPIN1, OUTPUT);
pinMode(LEDPIN2, OUTPUT);
pinMode(SWITCH, INPUT_PULLUP);
}
void loop() {
delay(2000); // Wait 2 seconds between measurements
float h = dht.readHumidity(); // Reading humidity
float t = dht.readTemperature(); // Read temperature as Celsius
if(digitalRead(SWITCH) == HIGH){
soll_temperatur = 18.0;
}
else{
soll_temperatur = 25.0;
}
Serial.print("soll_temperatur = "); Serial.println(soll_temperatur);
// Check if any reads failed and exit early (to try again).
if (isnan(h) || isnan(t)) {
Serial.println("DHT sensor Fehler!");
return;
}
Serial.print("Feuchtigkeit: "); Serial.print(h); Serial.println("%");
Serial.print("Temperatur: "); Serial.print(t); Serial.println("°C ");
if(t < soll_temperatur){
digitalWrite(LEDPIN1, HIGH);
Serial.println("\t Heizung ON!");
}
else{
digitalWrite(LEDPIN1, LOW);
Serial.println("\t Heizung OFF!");
}
if(h > 50.0){
digitalWrite(LEDPIN2, HIGH);
Serial.println("\t Luefter ON!");
}
else{
digitalWrite(LEDPIN2, LOW);
Serial.println("\t Luefter OFF!");
}
}