#include <Wire.h>
#include "RTClib.h"
#include <LiquidCrystal.h>
LiquidCrystal lcd(12,11,5,4,3,2);
RTC_DS3231 rtc;
char namaHari [7][12]={"Minggu","Senin","Selasa","Rabu","Kamis","Jum'at","Sabtu"};
void setup() {
// put your setup code here, to run once:
pinMode(7,OUTPUT);
lcd.begin(20,4);
rtc.begin();
if(rtc.lostPower()){
rtc.adjust(DateTime(F(__DATE__),F(__TIME__)));
}
lcd.setCursor(0,0);
lcd.print("JAM DIGITAL");
delay(1000);
lcd.setCursor(0,1);
lcd.print("Angkasa Pura");
delay(1000);
lcd.setCursor(0,2);
lcd.print("Indonesia");
delay(1000);
lcd.clear();
}
void loop() {
// put your main code here, to run repeatedly:
DateTime now = rtc.now();
lcd.setCursor(2,0);
lcd.print(namaHari[now.dayOfTheWeek()]);
lcd.print(",");
printAngka(now.day());
lcd.print("-");
printAngka(now.month());
lcd.print("-");
printAngka(now.year());
lcd.setCursor(5,2);
lcd.print("INDONESIA");
lcd.setCursor(6,1);
printAngka(now.hour());
lcd.print(":");
printAngka(now.minute());
lcd.print(":");
printAngka(now.second());tone(10,1000,50);
lcd.setCursor(2,3);
lcd.print("SMKN 2 SURAKARTA");
delay (1000);
}
void printAngka (int digits){
if(digits < 10){
lcd.print('0');
lcd.print(digits);
}
else lcd.print (digits);
}