🛠 RTC timestamps and a minute alarm (no battery!)
Objetivo
Utilizar el reloj en tiempo real RA4M1 para mantener la hora, imprimir una marca de tiempo en cada cambio de minuto y lanzar un evento (LED + línea serie) como alarma. Advertencia inicial: la placa no tiene batería de respaldo, por lo que el reloj se reinicia desde el valor del sketch en cada arranque.
Código
#include "RTC.h"
RTCtime now;
uint8_t lastMinute = 255;
void setup {
Serial.begin(115200);
RTC.begin;
RTCtime t(2026, 10, 14, 8, 0, 0); // Y M D H M S, set once per boot
RTC.set(t);
}
void loop {
RTC.get(now);
if (now.minute != lastMinute) {
lastMinute = now.minute;
Serial.printf("%04d-%02d-%02d %02d:%02d:%02d\n",
now.year, now.month, now.dayofmonth,
now.hour, now.minute, now.second);
digitalWrite(13, !digitalRead(13)); // blink each minute
}
delay(100);
}
Resultado esperado
Una línea de marca de tiempo por minuto, con el LED alternando con ella. Realiza el sondeo más rápido que una vez por minuto o perderás los límites de minuto.
Errores comunes
> SIN VERIFICAR: las cifras de precisión / deriva del RTC no se indican en las páginas de la placa consultadas.
- Esperar que la hora sobreviva a un corte de energía: sin batería se restablece en cada arranque; vuelve a sincronizar por serie después de cargar el programa.
- Llamar a RTC.set dentro de loop: congelas el reloj.
- La biblioteca no incluye lógica de horario de verano: debes gestionarlo tú mismo.
Otros tutoriales para esta placa
Ejemplos de código para esta placa
clignotante.inoArduinobouton-poussoir.inoArduinodac-analogique.inoArduinoentree-analogique.inoArduinopwm-respiration.inoArduinoservo-balayage.inoArduino