#include <Servo.h>
#include <uRTCLib.h>
#define pinServo1 9
#define pinServo2 10
#define pinServo3 11
#define pot1 A0
#define pot2 A1
#define pot3 A2
Servo servo1;
Servo servo2;
Servo servo3;
uRTCLib rtc(0x68);
void setup() {
// put your setup code here, to run once:
servo1.attach(pinServo1);
servo2.attach(pinServo2);
servo3.attach(pinServo3);
pinMode(pot1, INPUT);
pinMode(pot2, INPUT);
pinMode(pot3, INPUT);
URTCLIB_WIRE.begin();
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
calibragem();
rtc.refresh();
int hora = rtc.hour();
int minuto = rtc.minute();
int dezena = minuto / 10;
int unidade = minuto % 10;
//QUANDO CHEGAR NO "0" NOVAMENTE, USAR A FUNÇÃO DE CALIBRAÇÃO
if(rtc.hour()>12){
hora = hora-12;
}
Serial.print("HORA:");
Serial.println(hora);
Serial.print("DEZENA DO MINUTO:");
Serial.println(dezena);
Serial.print("UNIDADE DO MINUTO:");
Serial.println(unidade);
servo1.write(0);
servo2.write(0);
servo3.write(0);
delay(1000);
servo1.write(90);
servo2.write(90);
servo3.write(90);
delay(1000);
}
void calibragem(){
int e1;
int e2;
int e3;
while(e1 < 500){
e1 = analogRead(pot1);
servo1.write(45);
}
servo1.write(0);
while(e2 < 500){
e2 = analogRead(pot2);
servo2.write(45);
}
servo2.write(0);
while(e3 < 500){
e3 = analogRead(pot3);
servo3.write(45);
}
servo3.write(0);
delay(50);
}