Paso 5: El programa
Lo primero que debemos hacer es ajustar el reloj RTC. Utilice las instrucciones en el link https://www.virtuabotix.com/virtuabotix-ds1302-rea...
A continuación, agregue el código principal. Actualmente yo lo tengo configurado para encenderse a las 17:00 y apagar a las 22:00, pero usted puede cambiar fácilmente eso. También una cosa tener en cuenta, usé una aplicación de teclado serial bluetooth que usted puede obtener para cualquier teléfono android y la letra 'a' de a y 'b' para.
#include / / |
Creación del objeto reloj de tiempo Real / / esquema de los terminales: SCLK -> 6, I/O -> 7, CE -> 8, gnd -> gnd, Vcc -> 3,3 v virtuabotixRTC myRTC (6, 7, 8); La fecha actual y el tiempo en el formato siguiente: / / segundos, minutos, horas, día de la semana, día del mes, mes, año //myRTC.setDS1302Time (00, 45, 20, 2, 23, 11, 2015);
Configuración de Bluetooth / / diseño: gnd Pin -> gnd, Vcc -> 5V, TXD -> char RXD Bluetooth_Input; Variable de Bluetooth
Configuración de Relay / / esquema de los terminales: gnd -> gnd, Vcc -> 3.3V, IN -> 13 const int relaypin = 13;
void setup() {Serial.begin(9600); / /}
void loop() {}
Esto permite la actualización de las variables de tiempo o acceso a los elementos individuales. myRTC.updateTime(); Incrementos de tiempo opcional / / comienzo elementos de impresión como individuos //Serial.print ("fecha actual/tiempo:"); Serial.Print(myRTC.DayOfMonth); Serial.Print("/"); Serial.Print(myRTC.month); Serial.Print("/"); Serial.Print(myRTC.Year); Serial.Print(""); Serial.Print(myRTC.hours); Serial.Print(":"); Serial.Print(myRTC.minutes); Serial.Print(":"); Serial.println(myRTC.seconds); Retardo para que el programa no imprime sin parar delay (100);
Bluetooth_Input = Serial.read(); Bluetooth del código si (Bluetooth_Input == 'a') {en //Bluetooth con variable 'a' digitalWrite(13,HIGH);} si (Bluetooth_Input == 'b') {//Bluetooth de con digitalWrite(13,LOW) de la variable 'b';}
Si (myRTC.hours==17) {/ / automáticamente se conectará a 17:00 digitalWrite(13,HIGH);}
Si (myRTC.hours==22) {/ / automáticamente se desconectará a 22:00 digitalWrite(13,LOW);}
}