#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <DHT.h>
#define I2C_ADDR 0x27
#define LCD_COLUMNS 16 // Ganti dari 20 ke 16
#define LCD_LINES 2 // Ganti dari 4 ke 2
LiquidCrystal_I2C lcd(I2C_ADDR, LCD_COLUMNS, LCD_LINES);
#define DHTPIN 4 // Pin data DHT11 terhubung ke pin 4
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
void setup() {
lcd.init();
lcd.backlight();
lcd.clear();
dht.begin();
lcd.setCursor(0, 0); // Ganti dari (3, 0) ke (0, 0)
lcd.print("Suhu :");
lcd.setCursor(0, 1); // Ganti dari (3, 1) ke (0, 1)
lcd.print("Kelembaban:");
}
void loop() {
// Membaca suhu dan kelembaban dari sensor DHT11
float temperature = dht.readTemperature();
float humidity = dht.readHumidity();
// Menampilkan suhu dan kelembaban pada layar LCD
lcd.setCursor(11, 0); // Ganti dari (15, 0) ke (6, 0)
lcd.print(temperature, 1); // Menampilkan suhu dengan satu angka desimal
lcd.print("C"); // Menambahkan satuan derajat Celsius
lcd.setCursor(11, 1); // Ganti dari (12, 1) ke (6, 1)
lcd.print(humidity, 1); // Menampilkan kelembaban dengan satu angka desimal
lcd.print("%"); // Menambahkan satuan persen untuk kelembaban
delay(2000); // Tunggu 2 detik sebelum membaca data lagi
}