#include <Wire.h> //permite la comunicación i2c
#include "RTClib.h"//permite el uso del modulo rtc
#include <TM1637Display.h>//permite el uso del display
TM1637Display display(12,13);//CLK,DIO
RTC_DS1307 rtc;// se crea un objeto con el nombre personalizado
DateTime HoraFecha;
int hora;
int minuto;
int segundo;
int dia;
int mes;
int anio; //variable ñ}
int horaactual;
int indicador=0;
int fechaactual;
void setup() {
Serial.begin(9600);
rtc.begin(); //inciando comunicaciónn RTC
display.setBrightness(0x0a);
pinMode(11, INPUT_PULLUP);//boton en pullup
}
void loop() {
HoraFecha = rtc.now(); //obtener el tiempo y fecha real
hora = HoraFecha.hour();
minuto = HoraFecha.minute();
segundo = HoraFecha.second();
dia= HoraFecha.day();
mes = HoraFecha.month();
anio= HoraFecha.year();
horaactual= (hora * 100)+minuto;
fechaactual=(dia*100)+mes;
if(digitalRead(11)==0){
indicador=indicador+1;
while(digitalRead(11)==0)
{ }
}
if(indicador==0){
display.showNumberDecEx(horaactual,0x40,true);
}
if(indicador==1){
display.showNumberDec(segundo);
}
if(indicador==2){
display.showNumberDecEx(fechaactual,0x40,true);
}
if(indicador==3){
indicador=0;
}
///alarma// a las 22:00
if(horaactual==2200){
digitalWrite(10, HIGH);
}
Serial.println(indicador);
delay(100);
}