un bouton poussoir pour choisir plusieurs fonction

jpdunord:
pour choisir les différentes entrées mais là ou sa bloque c'est que dans le terminal série la fonction tourne en boucle il s'arrête pas. Il affiche le nombre de fois que le bouton a été appuyer ainsi que l'entrée sélectionner mais ne s'arrête pas si une âme charitable pourrait m'aider ce serait cool.

...

bonjour
il te faut verifier si il y a eu un changement de valeur avant de rentrer dans la boucle
de plus tu test de 0à 3 (4 possibilités) ton case 4 ne sera jamais appelé
tu à oublié un break
il faut te menager un delai pour le relachement du bouton (j'ai mis 20 ms au pif)

const int btn_sel = 5;
int compt=0; // variable de comptage
int oldcompt=0;
void setup()   { // debut de la fonction setup()

// --- ici instructions à exécuter au démarrage ---

Serial.begin(115200); // initialise connexion série à 115200 bauds
// IMPORTANT : régler le terminal côté PC avec la même valeur de transmission

pinMode(btn_sel, INPUT_PULLUP); 
} 

void loop(){ // debut de la fonction loop()
if (digitalRead(btn_sel)==LOW){
  compt=compt+1;
}

if (compt != oldcompt){



if (compt<0) compt=3;
if (compt>3) compt=0;
Serial.print(compt);
Serial.print(" ");
switch (compt){
  case 0:
 Serial.println("cd"); 
 break;
case 1:
Serial.println("dac");
break;
case 2: 
Serial.println("tuner");
break;
case 3:
Serial.println("dvd");
break;
}
oldcompt=compt;
delay(20);
}
}

teste ça (j'ai mis l'entrée en imput_pullup)