//Se incluyen lirerías
#include <RTClib.h>
#include <LiquidCrystal.h>
RTC_DS1307 rtc; //Le damos un nombre al objeto rtc
LiquidCrystal lcd(12, 11, 10, 9, 8, 7); //Le damos un nombre al objeto lcd
int led_rojo = 4; //Configuración del pin de lectura de la LED
void setup(){
//Se abre un puerto serie y especifica la velocidad de transmisión
Serial.begin(115200); //Se abre un puerto serie y especifica la velocidad de transmisión
lcd.begin(16, 2); //Se da comienzo al lcd
if (! rtc.begin()) { //Condicionante
Serial.println("Couldn't find rtc"); //Imprime datos al puerto serie
Serial.flush(); //Espera a que la transmisión de datos de salida serie termine.
abort(); //Llama a la instrucción "exit"
}
pinMode(led_rojo, OUTPUT); //Asigna el pin como salida
DateTime now = rtc.now();
//Imprimimos el día
Serial.print("Fecha de activación: ");
Serial.print(now.day(), DEC);
Serial.print('/');
//Imprimimos el mes
Serial.print(now.month(), DEC);
Serial.print('/');
//Imprimimos el año
Serial.print(now.year(), DEC);
Serial.print(' ');
Serial.println();
//Imprimimos la hora
Serial.print("Hora de activación: ");
Serial.print(now.hour(), DEC);
Serial.print(':');
//Imprimimos los minutos
Serial.print(now.minute(), DEC);
Serial.print(':');
//Imprimimos los segundos
Serial.print(now.second(), DEC);
Serial.println();
delay(1000); //Tiempo de esperar
digitalWrite (led_rojo, HIGH); //Cuando se ejecute la LED estará encendida
lcd.setCursor(0, 0); //Determina la posición del cursor
lcd.print("SISTEMA ACTIVADO"); //Imprime texte por la pantalla lcd
lcd.setCursor(0, 1);
lcd.print ("Y OPERATIVO"); //Imprime texte por la pantalla lcd
delay(10000); //Tiempo de esperar
lcd.clear(); //Borra la pantalla lcd y posiciona el cursor en la esquina superior izquierda
digitalWrite (led_rojo, LOW); //Cuando se ejecute la LED estará apagada
}
void loop(){
DateTime now = rtc.now();
if (now.day() == 19 && now.hour() == 20 && now.minute() == 34 && now.hour() == 20){
lcd.setCursor(0, 0); //Determina la posición del cursor
lcd.print("SUBSISTEMA 1"); //Imprime texte por la pantalla lcd
lcd.setCursor(0, 1); //Determina la posición del cursor
lcd.print ("ACTIVADO"); //Imprime texte por la pantalla lcd
digitalWrite (led_rojo, HIGH); //Cuando se ejecute la LED estará encendida
delay(500); //Tiempo de esperar
digitalWrite (led_rojo, LOW); //Cuando se ejecute la LED estará apagada
delay(5000); //Tiempo de esperar
lcd.clear(); //Borra la pantalla lcd y posiciona el cursor en la esquina superior izquierda
}
else if (now.day() == 19 && now.hour() == 20 && now.minute() == 35 && now.hour() == 20){
lcd.setCursor(0, 0); //Determina la posición del cursor
lcd.print("SUBSISTEMA 2"); //Imprime texte por la pantalla lcd
lcd.setCursor(0, 1);
lcd.print ("ACTIVADO"); //Imprime texte por la pantalla lcd
digitalWrite (led_rojo, HIGH); //Cuando se ejecute la LED estará encendida
delay(500); //Tiempo de esperar
digitalWrite (led_rojo, LOW); //Cuando se ejecute la LED estará apagada
delay(5000); //Tiempo de esperar
lcd.clear(); //Borra la pantalla lcd y posiciona el cursor en la esquina superior izquierda
}
else if (now.day() == 19 && now.hour() == 20 && now.minute() == 36 && now.hour() == 20){
lcd.setCursor(0, 0); //Determina la posición del cursor
lcd.print("SUBSISTEMA 3"); //Imprime texte por la pantalla lcd
lcd.setCursor(0, 1);
lcd.print ("ACTIVADO"); //Imprime texte por la pantalla lcd
digitalWrite (led_rojo, HIGH); //Cuando se ejecute la LED estará encendida
delay(500); //Tiempo de esperar
digitalWrite (led_rojo, LOW); //Cuando se ejecute la LED estará apagada
delay(5000); //Tiempo de esperar
lcd.clear(); //Borra la pantalla lcd y posiciona el cursor en la esquina superior izquierda
}
else if (now.day() == 19 && now.hour() == 20 && now.minute() == 37 && now.hour() == 20){
lcd.setCursor(0, 0); //Determina la posición del cursor
lcd.print("SUBSISTEMA 4"); //Imprime texte por la pantalla lcd
lcd.setCursor(0, 1);
lcd.print ("ACTIVADO"); //Imprime texte por la pantalla lcd
digitalWrite (led_rojo, HIGH); //Cuando se ejecute la LED estará encendida
delay(500); //Tiempo de esperar
digitalWrite (led_rojo, LOW); //Cuando se ejecute la LED estará apagada
delay(5000); //Tiempo de esperar
lcd.clear(); //Borra la pantalla lcd y posiciona el cursor en la esquina superior izquierda
}
else if (now.day() == 19 && now.hour() == 20 && now.minute() == 38 && now.hour() == 20){
lcd.setCursor(0, 0); //Determina la posición del cursor
lcd.print("SUBSISTEMA 5"); //Imprime texte por la pantalla lcd
lcd.setCursor(0, 1);
lcd.print ("ACTIVADO"); //Imprime texte por la pantalla lcd
digitalWrite (led_rojo, HIGH); //Cuando se ejecute la LED estará encendida
delay(500); //Tiempo de esperar
digitalWrite (led_rojo, LOW); //Cuando se ejecute la LED estará apagada
delay(5000); //Tiempo de esperar
lcd.clear(); //Borra la pantalla lcd y posiciona el cursor en la esquina superior izquierda
}