#include <DHT.h>
#include <DHT_U.h>
#include <LiquidCrystal.h>
#define DHTPIN A0
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE); //Initialize DHT sensor
#define rs 13
#define rw 12
#define en 11
#define d4 10
#define d5 9
#define d6 8
#define d7 7
#define ledM 6
#define ledK 5
#define ledH 4
LiquidCrystal lcd(rs,rw,en,d4,d5,d6,d7);
void setup()
{
// put your setup code here, to run once:
lcd.begin(16,2);
dht.begin();
Serial.begin(115200);
delay(10);
lcd.clear();
pinMode(ledM, OUTPUT);
pinMode(ledK, OUTPUT);
pinMode(ledH, OUTPUT);
}
void loop()
{
float hum=dht.readHumidity();
float temp=dht.readTemperature();
float hic=dht.computeHeatIndex(temp,hum,false);
switch(int(temp))
{
case 35:
digitalWrite(ledM, HIGH);
break;
case 30:
digitalWrite(ledK, HIGH);
break;
case 25:
digitalWrite(ledH, HIGH);
break;
default:
digitalWrite(ledM, LOW);
digitalWrite(ledK, LOW);
digitalWrite(ledH, LOW);
break;
}
Serial.print("Temp : ");
Serial.print(temp);
Serial.print("°C Hum : ");
Serial.print(hum);
Serial.print("% Heat Index : ");
Serial.print(hic);
Serial.println("°C");
lcd.setCursor(0,0);
lcd.print("Temp : ");
lcd.print(temp);
lcd.setCursor(12,0);
lcd.print(char(223));
lcd.print("C");
lcd.setCursor(0,1);
lcd.print("Hum : ");
lcd.print(hum);
lcd.setCursor(13,1);
lcd.print("%");
delay(1000);
}