Bonjour,
Une piste pour toi
/* ************************************************************************ */
/* Bouton poussoir appuyé */
/* ************************************************************************ */
uint8_t appuiBoutonPoussoir(uint8_t pin, uint8_t mode){
/*Mode = 0 pour BP entre entrée et masse (res entre entrée et alimentation)
Mode = 1 pour BP entre entrée et alimentation (res entre entrée et masse)
renvoi 0 si non appuyé et 1 si appuyé
Mode 0 Mode 1
Vcc Vcc
┌┴┐ │
│ │ o │B
└┬┘ o │P
I/O ─┤ I/O ─┤
│ ┌┴┐
o │B │ │
o │P └┬┘
┴ ┴
Gnd Gnd
*/
uint8_t dummy = 0;
uint8_t appui = 0;
if(mode == 0){ //mode 0
if(digitalRead(pin) == 0){ //BP appuyé
dummy = 0;
delay(DEBOUNCE);
if(digitalRead(pin) == dummy){
appui = 1;
}
}
} else { //mode 1
if(digitalRead(pin) == 1){ //BP appuyé
dummy = 1;
delay(DEBOUNCE);
if(digitalRead(pin) == dummy){
appui = 1;
}
}
}
return appui;
}