#include <LiquidCrystal_I2C.h>
#include <RTClib.h>
LiquidCrystal_I2C lcd(0x27,16,2); // untuk alamat Lcd 0x27
RTC_DS1307 RTC;
const int buzzer=11;
void setup() {
lcd.init(); //inisiasi lcd
lcd.backlight(); //untuk menyalankan backlight lcd
RTC.begin(); //mengambil data waktu laptop atau komputer secara otomatis
pinMode(buzzer, OUTPUT);
lcd.setCursor(4,0);//untuk baris dan kolom di lcd
lcd.print("Project"); // untuk menampilkan kalimat di objek
lcd.setCursor(2,1);
lcd.print("Jam Digital");
delay(5000);
lcd.clear(); //untuk menghilangkan kalimat di lcd
// put your setup code here, to run once:
}
void loop() {
tone(buzzer,1000);
DateTime baca_rtc = RTC.now(); //bisa dilihat dari library digunakan example code nya
lcd.setCursor(0, 0);
lcd.print("DATE: ");
lcd.print(baca_rtc.year());
lcd.print("/");
lcd.print(baca_rtc.month());
lcd.print("/");
lcd.print(baca_rtc.day());
lcd.setCursor(0,1);
lcd.print("TIME: ");
lcd.print(baca_rtc.hour());
lcd.print("/");
lcd.print(baca_rtc.minute());
lcd.print("/");
lcd.print(baca_rtc.second());
int alarm_jam=10;
int alarm_menit=50;
if(baca_rtc.hour() == alarm_jam && baca_rtc.minute() == alarm_menit) {// == untuk pembanding nilai, = untuk menyimpan nilai di variabel, && untuk logic end harus terjadi pembang pertama dan kedua harus tercapai baru bisa lanjut ke program selanjutnya
// put your main code here, to run repeatedly:
// Note buzzer ada dua tipe: Buzzer aktif(berbunyi ketika dipasang) dan Buzzer Pasif(tidak lansung berbunyi ketika dipasang)
// ketika ingin ada nada di buzzer maka buzzer dihubungkan pin pwm(garis gelombang)
}