#include <DHT.h>
#include <LiquidCrystal_I2C.h>
#define DHTPIN 4
#define DHTTYPE DHT22
#define LCD_COLUMNS 20
#define LCD_LINES 4
#define GLED 26
#define RLED 27
#define BUZZ 14
DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal_I2C lcd(0x27, LCD_COLUMNS, LCD_LINES);
void setup() {
pinMode(GLED, OUTPUT);
pinMode(RLED, OUTPUT);
pinMode(BUZZ, OUTPUT);
lcd.init();
lcd.backlight();
dht.begin();
}
void loop() {
float temp = dht.readTemperature();
float hum = dht.readHumidity();
lcd.setCursor(0,0);
lcd.print("Temp:");
lcd.print(temp);
lcd.print("C");
lcd.setCursor(0,1);
lcd.print("Hum:");
lcd.print(hum);
lcd.print("%");
lcd.setCursor(0,2);
lcd.print("Warm:temp > 28C");
lcd.setCursor(0,3);
lcd.print("Cool:temp <= 28C");
if (temp <= 27) {
digitalWrite(GLED, HIGH);
digitalWrite(RLED, LOW);
digitalWrite(BUZZ, HIGH);
}
else{
digitalWrite(RLED, HIGH);
digitalWrite(GLED, LOW);
digitalWrite(BUZZ, LOW);
}
}