#include "DHT.h"
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
#define DHTPIN 2    
#define DHTTYPE DHT22  
#define led1 13
#define led2 12
#define led3 11
DHT dht(DHTPIN, DHTTYPE);


void setup() 
{
  lcd.init();
  lcd.backlight();
  Serial.begin(9600);
  lcd.setCursor(0,0);
  lcd.print("Temperature &");
  lcd.setCursor (8,1);
  lcd.print("Humidity");
  delay(2000);
  lcd.clear();
  dht.begin();

}

void loop() {
  delay(1000);
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  
  if (isnan(h) || isnan(t) ) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

if (t > 40)
{
  lcd.clear();
  digitalWrite(led3, HIGH);
  digitalWrite(led2, LOW);
  digitalWrite(led1, LOW);
   lcd.print("Temp : ");
  lcd.print(t);
  lcd.print("C");
  lcd.setCursor(0,1);
  lcd.print("Hum : ");
  lcd.print(h);
  lcd.print("%");
  lcd.setCursor(0,2);
}
if(t <= 40)
{
  lcd.clear();
  digitalWrite(led3, LOW);
  digitalWrite(led2, HIGH);
  digitalWrite(led1, LOW);
  lcd.print("Temp : ");
  lcd.print(t);
  lcd.print("C");
  lcd.setCursor(0,1);
  lcd.print("Hum : ");
  lcd.print(h);
  lcd.print("%");
  lcd.setCursor(0,2);
}
if (t <= 25)
{
  lcd.clear();
  digitalWrite(led3, LOW);
  digitalWrite(led2, LOW);
  digitalWrite(led1, HIGH);
   lcd.print("Temp : ");
  lcd.print(t);
  lcd.print("C");
  lcd.setCursor(0,1);
  lcd.print("Hum : ");
  lcd.print(h);
  lcd.print("%");
  lcd.setCursor(0,2);
}

  Serial.print("Temperature: ");
  Serial.print(t );
  Serial.print(" C\t");
  Serial.print("Humidity: ");
  Serial.print(h);
  Serial.println(" %");
}
uno:A5.2
uno:A4.2
uno:AREF
uno:GND.1
uno:13
uno:12
uno:11
uno:10
uno:9
uno:8
uno:7
uno:6
uno:5
uno:4
uno:3
uno:2
uno:1
uno:0
uno:IOREF
uno:RESET
uno:3.3V
uno:5V
uno:GND.2
uno:GND.3
uno:VIN
uno:A0
uno:A1
uno:A2
uno:A3
uno:A4
uno:A5
dht1:VCC
dht1:SDA
dht1:NC
dht1:GND
led1:A
led1:C
led2:A
led2:C
led3:A
led3:C
lcd1:GND
lcd1:VCC
lcd1:SDA
lcd1:SCL