//PUTRA SATRIA PRAPTIN
// TL 2B
// 2203311016
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// Inisialisasi objek LCD
LiquidCrystal_I2C lcd(0x27, 16, 2); // Alamat I2C untuk modul LCD, ukuran 16x2
// Pin LED
const int ledPin = 2;
void setup() {
// Inisialisasi komunikasi I2C
Wire.begin();
// Inisialisasi LCD
lcd.init();
lcd.backlight();
// Inisialisasi pin LED
pinMode(ledPin, OUTPUT);
}
void loop() {
// Mendapatkan waktu saat ini
unsigned long currentMillis = millis();
unsigned long seconds = currentMillis / 1000; // Konversi waktu menjadi detik
unsigned long minutes = seconds / 60; // Konversi detik menjadi menit
unsigned long hours = minutes / 60; // Konversi menit menjadi jam
// Menghitung waktu dalam format jam:menit:detik
int second = seconds % 60;
int minute = minutes % 60;
int hour = hours % 24;
// Menyala LED setiap detik
digitalWrite(ledPin, second % 2 == 0 ? HIGH : LOW);
// Menampilkan waktu di LCD
lcd.setCursor(0, 0);
lcd.print("Jam Digital");
lcd.setCursor(0, 1);
lcd.print(" ");
if (hour < 10) {
lcd.print("0");
}
lcd.print(hour);
lcd.print(":");
if (minute < 10) {
lcd.print("0");
}
lcd.print(minute);
lcd.print(":");
if (second < 10) {
lcd.print("0");
}
lcd.print(second);
}