#include <Wire.h>
#include <RTClib.h> // Library untuk RTC
RTC_DS3231 rtc; // Membuat objek RTC_DS3231 untuk RTC
#define BUZZER_PIN 3 // Pin untuk buzzer
#define ALARM_FREQUENCY 1000 // Frekuensi suara buzzer (Hz)
void setup() {
Serial.begin(9600);
// Inisialisasi RTC
if (!rtc.begin()) {
Serial.println("Tidak dapat menemukan RTC!");
while (1); // Jika RTC tidak terdeteksi, berhenti
}
pinMode(BUZZER_PIN, OUTPUT); // Set pin buzzer sebagai output
}
void loop() {
// Mendapatkan waktu dari RTC
DateTime now = rtc.now();
// Menampilkan waktu di Serial Monitor
Serial.print(now.year(), DEC);
Serial.print('/');
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.day(), DEC);
Serial.print(" ");
Serial.print(now.hour(), DEC);
Serial.print(':');
Serial.print(now.minute(), DEC);
Serial.print(':');
Serial.print(now.second(), DEC);
Serial.println();
// Mengecek apakah waktu adalah 11:30 malam
if (now.hour() == 11 && now.minute() == 30) {
tone(BUZZER_PIN, ALARM_FREQUENCY, 1000); // Mengaktifkan buzzer dengan frekuensi 1000Hz selama 1 detik
delay(1000); // Menunggu selama 1 detik sebelum memeriksa waktu lagi
}
delay(1000); // Menunggu 1 detik sebelum memeriksa waktu lagi
}