#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include "RTClib.h" // Inisialisasi LCD (Alamat 0x27, 16 kolom, 2 baris)
LiquidCrystal_I2C lcd(0x27, 16, 2); // Inisialisasi RTC
RTC_DS1307 rtc;
char daysOfTheWeek[7][12] = {"Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"};
void setup() {
lcd.begin(16,2);
lcd.backlight();
if (!rtc.begin()) {
lcd.print("RTC Gagal!");
while (1);
}
}
void loop() {
DateTime now = rtc.now();
// --- BARIS ATAS: Tampilkan Tanggal ---
lcd.setCursor(0, 0);
lcd.print(now.day());
lcd.print("/");
lcd.print(now.month());
lcd.print("/");
lcd.print(now.year());
lcd.print(" ");
lcd.print(daysOfTheWeek[now.dayOfTheWeek()]);
lcd.print(" "); // Spasi tambahan untuk menghapus sisa karakter lama // --- BARIS BAWAH: Tampilkan Jam ---
lcd.setCursor(0, 1);
lcd.print("Jam: ");
if (now.hour() < 10) lcd.print('0'); // Tambah angka 0 di depan jika < 10
lcd.print(now.hour());
lcd.print(":");
if (now.minute() < 10) lcd.print('0');
lcd.print(now.minute());
lcd.print(":");
if (now.second() < 10) lcd.print('0');
lcd.print(now.second());
lcd.print(" ");
delay(1000); // Update setiap 1 detik
}