Bonjour infobarquee,
la lecture est ici, sachant que je désir avancer par pas de 15mn :
void GelProg (){
// - - - initialisation de l'écran en mode programme - - -
lcd.clear();
lcd.setCursor(1, 0); // positionne le curseur à la première ligne
lcd.print("Programmez"); // Affiche programmez
lcd.setCursor(4, 1);
lcd.print("00:00:00"); // Affiche le format du Compte à rebours
if (!(digitalRead(PinSW))) {
encoderPos = 0; // Reset la position si on appui sur l'encodeur
val = LOW; //on initialise val à 0
ArretProg(); // On lance le sous programme ArretProg
}
// - - - lecture de l'encodeur rotatif - - -
while ((digitalRead(PinSW))&& (val == HIGH)) {
n = digitalRead(PinCLK);
if ((PinCLKLast == LOW) && (n == HIGH)) {
if (digitalRead(PinDT) == LOW) {
//Sens antihoraire
encoderPos--;
minute = minute - 15;
if ( encoderPos < 0 ) {
encoderPos = nbPas;
minute = 0;
heure --;
}
} else {
//Sens horaire
encoderPos++;
minute = minute + 15;
if ( encoderPos > ( nbPas - 1 ) ) {
encoderPos = 0;
}
}
Imprime (); // on lance le sous programme d'impression sur le LCD
}
PinCLKLast = n;
}
}