Utiliser un bouton poussoir avec un Arduino

Creation de avatarLetmeknow | Categories : Electronics

Le but de ce montage est de gérer une LED commandée par à un bouton. Ce montage va s’appuyer sur le montage « Allumer une LED ».

License : Attribution (CC BY)

Introduction

Il existe 2 types de boutons :

  • Les interrupteurs qui maintiennent leur état. C’est-à-dire que l’on est pas obligé d’appuyer dessus pour qu’il reste ON ou OFF.
  • Les boutons poussoirs qui reviennent automatiquement à leur état de base si l’on arrête d’appuyer dessus.

Materials

  • 1 Arduino
  • 1 LED
  • 1 résistance 220 Ohm (R1)
  • 1 bouton
  • 1 résistance 10kOhm (R2)
  • 1 Breadboard
  • Des fils de connexion

Tools

Step 1 - Principe du montage

Le montage doit mettre en relation une LED entre une sortie du Arduino (On utilisera la sortie Digital 2) et le GND, un bouton poussoir entre une entrée du Arduino (On utilisera l’entrée Digital 3). On ajoute une résistance entre le 5V et l’entrée Digital 3.

On utilise les mêmes connexions pour l’ensemble LED et résistance que dans le montage « Allumer une LED ». Il est possible de remplacer cette ensemble LED + résistances par 1 LED pour plus de luminosité. Utiliser une LED sans résistance réduit sa durée de vie.

Lorsque le bouton poussoir est appuyé le Arduino verra le 0V sur l’entrée D3 et lorsque le bouton est relâché le Arduino verra 5V sur l’entrée D3.



Step 2 - Montage des composants sur la Breadboard

Tout le montage se réalise sur la plaque prévu à cet effet (Breadboard). Comme nous avons plusieurs composants au même potentiel nous allons réaliser des colonnes avec ces différents potentiels :

  • 1 colonne 5V avec la résistance R2
  • 1 colonne pour l’entrée Digital 3 avec la résistance R2 et le bouton poussoir
  • 1 colonne pour la sortie Digital 2 avec l’anode de la LED
  • 1 colonne avec la cathode de la LED et la résistance R1
  • 1 colonne GND avec la résistance R1 et le bouton poussoir



Step 3 - Câblage de la Breadboard

On câble ensuite les liens vers le Arduino.


Step 4 - Programmation

Le programme doit allumer la LED branchée sur la sortie numérique 2 si il détecte un 1 sur l’entrée numérique 3 sinon elle éteint la LED.

const int L1 = 2; // broche 2 du micro-contrôleur se nomme maintenant : L1
const int BP = 3; // broche 3 du micro-contrôleur se nomme maintenant : BP

void setup() //fonction d'initialisation de la carte
{
//contenu de l'initialisation
pinMode(L1, OUTPUT); //L1 est une broche de sortie
pinMode(BP, INPUT); // BP est une broche d'entree
}

void loop() //fonction principale, elle se répète (s’exécute) à l'infini
{
//contenu du programme
int test = digitalRead(BP); // Lecture de l'entree BP et sockage du résultats dans test

if(test==LOW) // Si test est à l'état bas
{
digitalWrite(L1, HIGH); // Allumer L1
}
else // Sinon
{
digitalWrite(L1, LOW); // Eteindre L1
}
}

Il reste à brancher le Arduino pour compiler le programme et le téléverser.

Step 5 - Test

Une fois terminé cela nous donne :

  • Photo 1 : ON
  • Photo 2 : OFF

Pour aller plus loin : Il est possible de rendre autonome le montage en lui ajoutant un coupleur de pile. Il est aussi possible de modifier les séquences pour garder allumer après un appui et éteindre après un autre appui.


Comments

Published