Bouton poussoir Arduino
Tout d’abord, comme meilleure pratique, nous utilisons quelques définitions pour garder le numéro de pin pour la LED et le bouton poussoir. Ainsi, si vous avez utilisé des broches différentes des miennes, il vous suffit de modifier ces 2 lignes. Aussi, dans le futur, si vous voulez changer la LED de la broche 8 à la broche 11 par exemple, vous pouvez modifier cette ligne sans toucher à rien d’autre dans le code.
Dans la fonction de boucle, nous commençons par lire l’état du bouton avec la fonction digitalRead(). Comme nous avons une résistance d’excursion basse sur le bouton, nous savons que l’état non pressé nous donnera la valeur LOW.
(Remarque : si vous utilisiez une résistance pull up, ou aucune résistance du tout – avec l’option INPUT_PULLUP pour pinMode – ce serait l’inverse. HIGH lorsque le bouton n’est pas pressé, et LOW lorsqu’il est pressé).
Avec la condition, nous n’entrons dans le bloc de code suivant que si l’état actuel et le dernier état sont différents. Si les 2 états sont les mêmes, alors nous n’entrons pas dans le if et la fonction de boucle est terminée pour ce tour.
Ici, nous changeons l’état de la LED. Je ne suis pas un grand fan des one-liners mais celui-ci est vraiment pratique quand vous avez juste besoin de basculer un état. Cela vous permettra d’économiser 3-4 lignes de code pour quelque chose de vraiment trivial.
Bouton Arduino uno sur la carte
Jusqu’à présent, nous nous sommes surtout concentrés sur les sorties. Nous allons maintenant passer à l’autre extrémité du spectre et jouer avec les entrées. Dans l’expérience 2, nous avons utilisé une entrée analogique pour lire le potentiomètre. Dans ce circuit, nous allons lire l’une des entrées les plus courantes et les plus simples – un bouton-poussoir – en utilisant une entrée numérique. La façon dont un bouton poussoir fonctionne avec votre RedBoard ou votre Arduino Uno R3 est que lorsque le bouton est enfoncé, la tension devient BASSE. Votre RedBoard ou Arduino Uno R3 le lit et réagit en conséquence.
Ouvrez le logiciel Arduino IDE sur votre ordinateur. Le codage dans le langage Arduino contrôlera votre circuit. Ouvrez le code du circuit 5 en accédant au “Code Guide SIK” que vous avez téléchargé et placé dans votre dossier “Exemples” plus tôt.
Vous devriez voir la LED s’allumer si vous appuyez sur l’un des boutons, et s’éteindre si vous appuyez sur les deux boutons. (Si elle ne fonctionne pas, assurez-vous que vous avez assemblé le circuit correctement, vérifié et téléchargé le code sur votre carte ou consultez la section de dépannage.
Interrupteur à bouton Arduino
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 facile que vous pouvez le penser, mais en même temps peut ê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 poussoir code arduino
S’il y a dix autres tâches, la méthode de poling vous fait attendre que les dix tâches soient terminées avant de pouvoir vérifier à nouveau l’état de la broche du bouton. Dans certains scénarios, cela ne sera pas acceptable.
Je vais vous montrer une procédure étape par étape pour configurer Arduino afin de lire l’état du bouton dans la méthode d’interruption. Dans cet exemple, nous allons faire clignoter la LED embarquée connectée à la broche #13 de l’Arduino.
MODE D’INTERRUPTIONMode de fonctionnementL’événement sera indépendant de la tâche sur laquelle travaille l’UC (asynchrone)Synchrone aux tâches de l’UC. Se produit à intervalles réguliersTrès efficace pour gérer les tâches qui sont moins fréquentesMoins efficaceS’adapte aux applications alimentées par batterieNon adapté aux applications sur batterie car l’interrogation prend beaucoup de cycles CPUNécessite plus de code pour une configuration uniqueSimple à configurer.