Hola Team,
Hoy me he percatado de un problema en mi proyecto "Programador de Riego", inicialmente todo bien básicamente muestra la fecha y hora actual en la pantalla LCD, sin embargo hoy me he percatado que el RTC esta enviando las horas mas de 24, es decir si son la 1:00 am me envía el numero 25 y así para adelante. No sé si es un error de la librería RTClib o del hardware, que creen que esté pasando.
El código es simple, hasta lo he enviado directamente al puerto serial y sale lo mismo.
void dashboard(){
DateTime fechaNow = rtc.now();
diaSemana = fechaNow.dayOfTheWeek(); dia=fechaNow.day(); mes=fechaNow.month(); anio=fechaNow.year()-2000; hora=fechaNow.hour(); minuto=fechaNow.minute();
tft.setTextColor(BLACK,WHITE);
display_day(164,96);
tft.setTextSize(5);
tft.setCursor(90, 140);
printDigits(dia);
tft.print('-');
printDigits(mes);
tft.print("-20");
tft.print(anio);
tft.setCursor(126, 210);
** if (hora==24) hora=0;**
** Serial.println(hora); **
** printDigits(hora);**
tft.print(':');
printDigits(minuto);
tft.print(':');
printDigits(fechaNow.second());
if (digitalRead(valvulas)==LOW) {
tft.setTextColor(BLACK,WHITE);
textSinClear(178, 272, "REGANDO!", 3, NULL);
}
else {
tft.setTextColor(WHITE,WHITE);
textSinClear(178, 272, "REGANDO!", 3, NULL);
}
subDashboard();
}
Adjunto evidencia directamente al puerto serial.
