#include <DHT.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include "RGB.h"
#define DHTPIN 11
#define pinRed 3
#define pinGreen 5
#define pinBlue 6
#define pinBuzzer 9
DHT dht(DHTPIN, DHT22);
LiquidCrystal_I2C lcd(0x27,16,2);
float kelembaban, suhu;
void setup() {
lcd.init();
lcd.backlight();
dht.begin();
pinMode(pinBuzzer, OUTPUT);
}
void loop() {
suhu = dht.readTemperature();
kelembaban = dht.readHumidity();
tampilLCD();
indikatorSuhu();
}
void tampilLCD(){
lcd.setCursor(0,0);
lcd.print("Suhu: ");
lcd.print(suhu);
lcd.print(" C");
lcd.print(" ");
lcd.setCursor(0,1);
lcd.print("Lembab: ");
lcd.print(kelembaban);
lcd.print(" %");
lcd.print(" ");
delay(200);
}
void indikatorSuhu(){
noTone(pinBuzzer);
if(suhu <= 13){
ledRGB(pinRed, pinGreen, pinBlue, 0, 0, 255);
} else if(suhu > 13 && suhu < 35){
ledRGB(pinRed, pinGreen, pinBlue, 0, 255, 0);
} else if (suhu >=35){
ledRGB(pinRed, pinGreen, pinBlue, 255, 0, 0);
tone(pinBuzzer, 1500);
}
}