#include <Wire.h>
#include <TM1637Display.h>
#include "RTClib.h"
RTC_DS1307 rtc;
#define CLK 8
#define DIO 9
TM1637Display display(CLK, DIO);
char HariDalamMinggu[7][12] = {"Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jum'at", "Sabtu"};
void setup() {
Serial.begin(9600);
if (! rtc.begin()) {
Serial.println("RTC tidak terhubung, Cek kembali wiring!");
while (1);
}
if (! rtc.isrunning()) {
Serial.println("RTC tidak bekerja, Setel ulang waktu!");
rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
}
Serial.println("Test modul RTC DS1307 ...");
display.setBrightness(6);
}
void loop() {
DateTime now = rtc.now();
Serial.print(HariDalamMinggu[now.dayOfTheWeek()]);
Serial.print(", ");
Serial.print(now.day(), DEC); Serial.print('/');
Serial.print(now.month(), DEC); Serial.print('/');
Serial.print(now.year(), DEC); Serial.print(" ");
Serial.print(now.hour(), DEC);
Serial.print(':');
Serial.print(now.minute(), DEC);
Serial.print(':');
Serial.print(now.second(), DEC);
Serial.println();
delay(1000);
for (int minute = 0; minute <= 24; minute++) {
for (int second = 0; second <= 59; second++) {
display.showNumberDecEx(minute * 100 + second, 0b1100, true); // Menit pada digit 1 dan 2, Detik pada digit 3 dan 4
delay(100); // Tunggu selama 1000 milidetik (1 detik)
}
}
}