#include "DHT.h"
#include <LCD-I2C.h>
byte ldr = 4;
byte led = 2;
int nilai;
#define DHTPIN 12 // PIN ESP 32 YANG KONEK DG PIN DHT22
LCD_I2C lcd (0x27, 16, 2);
//tipe sensor DHT
//#define DHTTYPE // DHT11
#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
//#define DHTTYPE DHT 21 // DHT 21 (AM2301)
//INISIALISASI SENSOR DHT
DHT dht(DHTPIN, DHTTYPE);
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
Serial.println(F("DHTxx test!"));
dht.begin();
lcd.begin();
lcd.display ();
lcd.backlight();
lcd.setCursor(1,0);
lcd.print("Pak Sabin");
lcd.setCursor(1,1);
lcd.print("By:Anbi&Galang");
delay(5000);
lcd.clear();
Serial.begin(9600);
pinMode(led, OUTPUT);
}
void loop() {
delay(2000);
float humid = dht.readHumidity ();
float temp = dht.readTemperature ();
if (isnan(humid) || isnan(temp)){
Serial.println(F("failed to read from DHT sensor!"));
return;
}
Serial.print(F("humidity: "));
Serial.print(humid);
Serial.print(F("% Temperature: "));
Serial.print(temp);
Serial.println(F("C "));
lcd.setCursor (0,0);
lcd.print("suhu:");
lcd.setCursor(10,0);
lcd.print(temp);
lcd.setCursor(0,1);
lcd.print("Kelembapan:");
lcd.setCursor(10,1);
lcd.print(humid);
delay(1000);
lcd.clear();
nilai = analogRead(ldr);
Serial.print("Nilai LDR : ");
Serial.println(nilai);
if(nilai < 500){
digitalWrite(led, HIGH);
Serial.println("keadaan gelap, lampu menyala");
}else{
digitalWrite(led, LOW);
Serial.println("Keadaan Terang, lampu mati");
}
delay(1000);
}