Bonjour ,
je retrouve mon mega qui est " freeze " regulierement le matin , mais pas forcement tous les matins ...
plus rien ne repond , le seul moyen est de debranché puis rebranche l ' alimentation .
a chaque fois que cela se produit , le relais correspondant aux heures creuses est allumé , bien sur il devrait etre eteint lorsque je m' apercois du probleme , je pense donc que la partie de code gerant ce relais est peut etre d' ou vient le probleme .
Cependant je ne vois pas ce qui peut clocher :
void relaisHeureCreuse () {
int8_t RHC = -1; // jamais lu
bool oldRHC=false;
static unsigned long chrono = 0;
uint8_t RHC_PIN_RELAY = RELAY_NUMBER - RELAY_NUMBER_R; // 45
if ((RHC == -1) || (millis() - chrono > TIMER_V )) { // si jamais lue ou lue depuis plus de 30 secondes
if (RTC.heure() < 6 || (RTC.heure() >= 12 && RTC.heure() < 14)) RHC = true; // heures creuses de minuit a 6 H et de 12 a 14 Heures
else RHC = false;
if (oldRHC != RHC && RHC != -1) { // inverseRelais(RHC_PIN_RELAY); pas mis car active gestionnaire de tache ..
tableau_Etat_Relais[RHC_PIN_RELAY] = !tableau_Etat_Relais[RHC_PIN_RELAY]; //on affiche le nouvel état du relais
digitalWrite(tableau_Pin_Relais[RHC_PIN_RELAY], tableau_Etat_Relais[RHC_PIN_RELAY]); //on effectue la mise à jour du pin
oldRHC = RHC;
if (DEBUG) Serial.println (F("relaisHeureCreuse => changement etat" ));
}
chrono = millis();
}
}
si vous avez des idées pour resoudre ce probleme , elles sont les bienvenues , merci d' avance .