#include <Wire.h>
#include "RTClib.h"
#include <LiquidCrystal.h>
LiquidCrystal lcd(12,11,5,4,3,2);
RTC_DS3231 rtc;
char namaHari [7] [12] = {"Ahad", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"};
void setup() {
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("LAB LISTRIK A");
delay(1000);
lcd.clear ();
}
void loop() {
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(6,1);
printAngka(now.hour());
lcd.print (":");
printAngka(now.minute());
lcd.print(":");
printAngka(now.second()); tone(7,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);
}