// Library yang digunakan
#include <LiquidCrystal_I2C.h>
#include <DHTesp.h>
// Mendefinisikan pin
#define DHTpin 25 // Pin DHT22 dihubungkan ke ESP32
#define BUTTON 18 // Pin Switch push button dihubungkan
#define LED 21 // Pin LED dihubungkan
DHTesp dhtSensor;
LiquidCrystal_I2C lcd(0x27, 16,2);
// Fungsi untuk melakukan konfigurasi awal
void setup()
{
Serial.begin(9600);
lcd.init();
lcd.backlight();
dhtSensor.setup(DHTpin, DHTesp::DHT22); //Konfigurasi sensor DHT22 sebagai sensor
// Menentukan mode pin
pinMode(LED, OUTPUT);
pinMode(BUTTON, INPUT);
}
void loop()
{
// Membaca suhu dan kelembaban dari sensor DHT
TempAndHumidity data = dhtSensor.getTempAndHumidity();
float suhu = data.temperature;
float kelembapan = data.humidity;
// Menampilkan suhu dan kelembapan
//Serial.print("Suhu : ");
//Serial.print(suhu);
//Serial.print(" || Kelembaban : ");
//Serial.println(kelembapan);
//Serial.println("---");
//lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Temp: ");
lcd.print(suhu);
lcd.print("C");
lcd.setCursor(0, 1);
lcd.print("Humidity: ");
lcd.print(kelembapan);
lcd.print("%");
// Fungsi untuk push button dan LED
if (digitalRead(BUTTON) == HIGH) {
digitalWrite(LED, LOW);
}
else {
digitalWrite(LED, HIGH);
}
delay(200);
}