Créer un télérupteur avec Arduino piloter par un bouton

Niveau APPRENTISSAGE :   Intermédiaire

 

    Prérequis :

Matériel :

  • 1 x Carte Arduino
  • 1 x Bouton
  • 1 x Résistance 220 Ω
  • 1 x Led
  • Fils de connexion
  • 1 x Breadboard

Version IDE :

 

 

Vidéo de démonstration :

 

Schéma de câblage :

 

Code :

// La broche numérique 3 est reliée au Bouton. On lui donne le nom Bouton.
int Bouton = 3;
// La broche numérique 5 est reliée à la led . On lui donne le nom Ledrouge.
int Ledrouge = 5;
// Déclaration variable EtatBouton qui va servir à stocker une valeur au format bool soit LOW ou HIGH.
bool EtatBouton;
// Déclaration variable EtatBoutonAppuyer qui va servir à stocker une valeur au format bool soit LOW ou HIGH.
bool EtatBoutonAppuyer;
// Déclaration variable EtatLedrouge qui va servir à stocker une valeur au format bool soit LOW ou HIGH.
bool EtatLedrouge;

void setup() {
  // Faire de la broche du Bouton une entrée avec activation de la résistance de rappel interne de l'ARDUINO .
  pinMode(Bouton, INPUT_PULLUP);
  // Définit Ledrouge soit la broche numérique 5 comme sortie.
  pinMode(Ledrouge, OUTPUT);
}

void loop() {
  // Lit la broche d'entrée du Bouton et stock ça valeur dans EtatBouton
  EtatBouton = digitalRead(Bouton);
  // Si EtatBouton == LOW et que EtatBoutonAppuyer == LOW
  if (EtatBouton == LOW && EtatBoutonAppuyer == LOW)
  {
    // Si EtatLedrouge = HIGH alors EtatLedrouge = LOW et inversement.
    EtatLedrouge = !EtatLedrouge;
    // La variable EtatBoutonAppuyer prend la valeur de HIGH
    EtatBoutonAppuyer = HIGH;
    // Met Ledrouge soit la broche numérique 5 sur HIGH ou LOW en fonction de la valeur de EtatLedrouge.
    digitalWrite(Ledrouge, EtatLedrouge);
  }
  // Si EtatBouton == HIGH et que EtatBoutonAppuyer == HIGH
  if (EtatBouton == HIGH && EtatBoutonAppuyer == HIGH)
  {
    // La variable EtatBoutonAppuyer prend la valeur de LOW.
    EtatBoutonAppuyer = LOW;
  }
  // attend 1 milliseconde.
  delay(1);
}

 

Simulation TINKERCAD :

 


+ Infos sur le langage utilisé :

1. Fonctions
2. Variables
3. Stucture

 

Laisser un commentaire