#include <DHT.h>
#define DHTPIN 7
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
float hum;
float temp;
const int HigherTemp = 27;
const int LowerTemp = 15;
enum State {
Red,
Green,
Blue
};
State currentState ;
const int LED1_Red = 2;
const int LED3_Green = 3;
const int LED2_Blue = 4;
void setup() {
Serial.begin(9600);
pinMode(LED1_Red, OUTPUT);
pinMode(LED2_Blue, OUTPUT);
pinMode(LED3_Green, OUTPUT);
dht.begin();
}
void loop() {
hum = dht.readHumidity();
temp = dht.readTemperature();
if (temp >= LowerTemp && temp <= HigherTemp) {
currentState = Green;
} else if (temp < LowerTemp) {
currentState = Blue;
} else if (temp > HigherTemp) {
currentState = Red;
}
switch (currentState) {
case Green:
digitalWrite(LED1_Red, LOW);
digitalWrite(LED2_Blue, LOW);
digitalWrite(LED3_Green, HIGH);
delay (2000);
break;
case Blue:
digitalWrite(LED1_Red, LOW);
digitalWrite(LED2_Blue, HIGH);
digitalWrite(LED3_Green, LOW);
delay (2000);
break;
case Red:
digitalWrite(LED1_Red, HIGH);
digitalWrite(LED2_Blue, LOW);
digitalWrite(LED3_Green, LOW);
delay (2000);
break;
}
}