Programmation des boutons poussoirs
Imaginez que votre réveil sonne et qu’en raison d’une nuit tardive, vous appuyez sur la touche “snooze” et vous vous rendormez aussitôt. Vous vous rendez compte que vous êtes en retard au travail et vous appuyez sur quelques touches de votre téléphone pour appeler votre patron et lui raconter comment vous avez crevé. Vous démarrez rapidement votre voiture avec le démarreur à distance et réglez l’alarme de la maison.
Une résistance pull-up, similaire à une résistance pull-down, est un moyen de diriger l’électricité ou un signal vers un endroit spécifique en fonction de certaines conditions. La principale chose à retenir est que l’électricité veut aller à la terre aussi vite que possible. Si vous regardez le diagramme, vous pouvez voir un schéma de base sur la façon dont cela fonctionne.
Dans notre cas, avec le bouton, la tension peut prendre deux chemins. Le premier chemin va de la source de tension à la broche numérique, ce qui donne un signal élevé, ou bien il peut aller à la masse via le bouton, ce qui fait que le microcontrôleur lit un signal faible.
Lorsque le bouton est ouvert (non enfoncé), le signal de tension va vers le microcontrôleur car c’est le chemin le plus rapide vers la terre. Lorsque le bouton est fermé (enfoncé), le signal sera tiré vers la terre.
Feedback geben
Tout ce qui est cool a des boutons. Ils sont partout et il y a un certain plaisir à les presser. Il est très utile de savoir comment les utiliser dans vos projets. L’utilisation d’un bouton est aussi simple que l’on pourrait le croire, mais peut en même temps être une source de frustration.
Dans cet exemple, nous connectons simplement 5 volts à un côté d’un bouton et à l’autre côté du bouton nous connectons la broche 2. Lorsque vous appuyez sur le bouton, une connexion électrique est établie, la broche 2 “voit” les 5 volts et si nous lisons numériquement la broche 2, elle indique HIGH. Pendant les périodes où l’on n’appuie pas sur le bouton, la broche 2 indique un niveau BAS.
La broche 2 est également reliée à la masse à tout moment par une résistance. En effet, lorsque nous lisons des valeurs sur la broche 2, nous voulons obtenir un signal HIGH ou LOW. Si la broche 2 n’est pas reliée à la masse, lorsque le bouton n’est pas enfoncé, elle devient ce que l’on appelle une broche flottante – elle n’est reliée à rien. Les broches flottantes de l’Arduino sont généralement correctes – sauf si vous essayez d’enregistrer une entrée à partir d’elles – alors elles sont mauvaises et peuvent vous donner des informations erronées. Vérifiez la section sur les lectures supplémentaires pour une vidéo qui démontre pourquoi la résistance qui maintient la broche 2 à la masse est essentielle.
Bouton Arduino sans résistance
Détection du changement d’état du bouton Dans cette section, je vais vous montrer comment détecter le changement d’état du bouton poussoir. Le code ci-dessous détectera le moment où la sortie du bouton passe de l’état HAUT à l’état BAS. Cela signifie qu’il ne détectera que l’appui sur le bouton, et non son relâchement. Vous pouvez utiliser cet événement pour contrôler beaucoup de choses. Cet exemple fonctionnera sur le circuit précédent. Donc vous n’avez pas besoin de changer le circuit. Il suffit de télécharger le code ci-dessous, d’appuyer sur le bouton plusieurs fois et de voir comment cela fonctionne.Le code ci-dessous fera basculer une LED chaque fois que le bouton est pressé.Arduino Codeconst int buttonPin = 13 ;
Arduino Push Button CounterDans certains projets, vous avez besoin de compter les pressions sur le bouton. Par exemple, si vous voulez augmenter la luminosité d’une LED par étapes à chaque fois que vous appuyez sur le bouton ou si vous voulez augmenter/diminuer la vitesse d’un moteur avec une entrée de bouton.Dans cette section, je vais vous montrer comment compter les pressions sur le bouton. Le code ci-dessous comptera les pressions sur le bouton de 0 à 10, puis remettra le compteur à zéro. Vous pouvez voir la sortie sur le moniteur série de l’Arduino. Dans les sections suivantes, vous pouvez voir les utilisations pratiques du compteur de boutons-poussoirs.Arduino Codeconst int buttonPin = 13 ;
Bouton Elegoo
Le bouton est un composant de base et largement utilisé dans de nombreux projets ESP32. Il n’est pas aussi simple qu’il y paraît (en raison de ses caractéristiques mécaniques et physiques). Les débutants peuvent avoir beaucoup de problèmes avec lui. Ce tutoriel rend les choses faciles pour les débutants. Commençons !
La broche d’un bouton est connectée à une broche d’entrée numérique de l’ESP32. L’autre broche est connectée à VCC ou GND. Dans le code ESP32, en lisant l’état de la broche d’entrée, nous pouvons déduire que le bouton est enfoncé ou non.
La relation entre l’état de la broche d’entrée et l’état de pression du bouton dépend de la façon dont nous connectons le bouton à l’ESP32 et du réglage de la broche de l’ESP32. Il y a deux façons d’utiliser un bouton avec l’ESP32 :
Si on n’utilise ni une résistance pull-down ni une résistance pull-up, l’état de la broche d’entrée est aléatoire entre HIGH ou LOW (instable, non fixé) lorsque le bouton n’est PAS pressé. C’est ce qu’on appelle le “problème de l’entrée flottante”. Il en résulte un dysfonctionnement.
Pour simplifier la tâche des débutants, ce tutoriel leur recommande vivement d’utiliser une résistance pull-up interne pour la broche ESP32. Aucune résistance externe n’est nécessaire. Cela permet d’économiser du matériel et de simplifier le schéma de câblage.