#include <RTClib.h>
#include <Wire.h>
RTC_DS1307 rtc;
//Koding LCD----------------------------------->
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
//Koding servo--------------------------------->
#include <Servo.h>
const int servoPin = 3;
Servo mekanik;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
//Koding servo----------------------------->
mekanik.attach(servoPin);
mekanik.write(0);
//Koding LCD
lcd.init();
lcd.backlight();
lcd.clear();
//Koding rtc------------------------------->
Wire.begin();
if(!rtc.begin()){
Serial.println("RTC tidak terhubung");
lcd.setCursor(0,0);
lcd.print("RTC Tidak Konek");
while(1);
}
}
void loop() {
// put your main code here, to run repeatedly:
//Koding RTC-------------------------------->
DateTime now=rtc.now();
int tahun=now.year();
int tanggal=now.day();
int bulan=now.month();
int jam=now.hour();
int menit=now.minute();
int detik=now.second();
//Koding LCD---------------------------------->
lcd.setCursor(0,0);
lcd.print(String() + "Tang.:" +tanggal+ "-"+bulan+ "-" +tahun);
lcd.setCursor(0,1);
lcd.print(String() + "waktu:" +jam+ ":" +menit+ ":" +detik);
Serial.println(String() + "Tang.:" +tanggal+ "-"+bulan+ "-" +tahun);
Serial.println(String() + "waktu:" +jam+ ":" +menit+ ":" +detik);
Serial.println();
//pakan1
if( (jam==8) && (menit==53)&&(detik==00)){
pakan1();
}
//pakan2
if( (jam==9) && (menit==00)&&(detik==00)){
pakan2();
}
//pakan3
if( (jam==12) && (menit==00)&&(detik==00)){
pakan3();
}
//pakan4
if( (jam==15) && (menit==00)&&(detik==00)){
pakan4();
}
//pakan5
if( (jam==19) && (menit==00)&&(detik==00)){
pakan5();
}
//pakan6
if( (jam==22) && (menit==00)&&(detik==00)){
pakan6();
}
delay(1000);
}
//koding servo
void pakan1(){
lcd.clear();
lcd.print("WAKTU MAKAN..");
mekanik.write(180);
delay(3000);
mekanik.write(0);
lcd.clear();
}
void pakan2(){
lcd.clear();
lcd.print("WAKTU MAKAN..");
mekanik.write(90);
delay(3000);
mekanik.write(0);
lcd.clear();
}
void pakan3(){
lcd.clear();
lcd.print("WAKTU MAKAN..");
mekanik.write(45);
delay(3000);
mekanik.write(0);
lcd.clear();
}
void pakan4(){
lcd.clear();
lcd.print("WAKTU MAKAN..");
mekanik.write(45);
delay(3000);
mekanik.write(0);
lcd.clear();
}
void pakan5(){
lcd.clear();
lcd.print("WAKTU MAKAN..");
mekanik.write(45);
delay(3000);
mekanik.write(0);
lcd.clear();
}
void pakan6(){
lcd.clear();
lcd.print("WAKTU MAKAN..");
mekanik.write(45);
delay(3000);
mekanik.write(0);
lcd.clear();
}