On dirait que l'entrée Arduino de l'interrupteur échantillonne différemment lorsque je change ce débit, et qu'elle devient très sensible au rebond de l'interrupteur avec des valeurs élevées de débit.
L'envoie d'information sur la liaison série "occupe" le processeur pendant un certain temps plus ou moins long suivant la vitesse de transmission et donc agit comme une temporisation plus ou moins longue.
Lorsque cette temporisation est (relativement) longue cela masque les rebonds de l'interrupteur.
Pour lire un interrupteur, il y a 2 ou 3 précautions à prendre:
- lorsque tu détectes un changement d'état, déclencher une temporisation d'une dizaine de millisecondes et relire l'interrupteur pour confirmer l'état.
- après confirmation de l'étape 1 et si tu as détecté un appui, attendre le relâché du bouton avant de reprendre la boucle sinon le programme voit des appuis multiples et le résultat est aléatoire.
Principe de gestion d'un poussoir
- lecture état
- delais
- confirmation de l'état (si confirmé on continue sinon retour à 1)
- action
- attente relâché
- retour à 1
Une librairie qui pourrais t'intéresser : Arduino Playground - HomePage