diff --git a/principal.txt b/principal.txt index ac718fb..dfb6b70 100644 --- a/principal.txt +++ b/principal.txt @@ -108,12 +108,11 @@ debut: EICRB <- 0b00000000 ; ADC - ADMUX <- 0b01110000 - ADCSRB <- 0b00001011 - ADCSRA <- 0b10011101 ; TODO Auto-trigger ? + ADMUX <- 0b01100000 + ADCSRB <- 0b00000010 + ADCSRA <- 0b11011110 sei - wdr ; Initialisation des valeurs ; Mercredi 12h34'56 @@ -218,7 +217,6 @@ afficherDi: ; Logique agir1s: - inc d0 ; Met à jour les registres de temps, active agir10s ou agirHeur si nécessaire inc t0 si t0%5 != 0 saut ret ; Continue si on est sur un multiple de 10 secondes @@ -238,10 +236,19 @@ agir1sHeur: ret agir10s: - ; Initialise une lecture ADC - - ; Met à jour l'état de veille (si on est en état veille) - + ; Déclenche une conversion ADC + ADCSRA <- 0b11011101 + si etat = 0 saut a10sVeilleTemp + si etat = 1 saut a10sVeilleHeur + ret +a10sVeilleHeur: + etat <- 0 + call afficherHorloge + ret +a10sVeilleTemp: + etat <- 1 + compteur <- ADCH + call afficherTemperature ret agirHeur: @@ -317,7 +324,7 @@ etatMenuJoursC: etatParaJours: etat <- etat + 7 - compteur <- 12 + compteur <- t0 & 0b00011111 etatParaJoursU: d3 <- afficheur@ROM[compteur/10] d2 <- afficheur@ROM[compteur%10] @@ -424,7 +431,7 @@ etatParaHJourC: etatParaHHeur: etat <- 26 - compteur <- t0 | 0b00011111 + compteur <- t0 & 0b00011111 call afficherHeur reti @@ -559,6 +566,7 @@ timer: ; Watchdog artificiel inc tt if tt < 244 saut timerRestore + ;if tt < 10 saut timerRestore ; DEBUG Avancer le temps tt <- 0 call agir1s -- libgit2 0.21.2