Go Down

Topic: bouton poussoir  (Read 439 times) previous topic - next topic

lea-dmn3

Apr 25, 2020, 07:28 pm Last Edit: Apr 25, 2020, 07:34 pm by lea-dmn3
Bonjour,

Je suis nouvelle sur Arduino.
C'est une grande découverte pour moi car je suis dans le domaine de l'ébénisterie.
J'ai quelques questions à propos de mes premiers montages.
Je ne comprends pas bien le schéma de la led et son bouton poussoir.

Mon code est bon puisque je l'ai pris sur le blog d'eskimon.
Mais mes branchements ne fonctionnent pas.

Est ce que quelqu'un pourrait me donner une photo d'un branchement.

voici mon code.


// le bouton est connecté à la broche 2 de la carte Adruino
const int bouton = 2;
// la LED à la broche 13
const int led = 13;

// variable qui enregistre l'état du bouton
int etatBouton;

void setup() {
  // put your setup code here, to run once:

 pinMode(led, OUTPUT); // la led est une sortie
    pinMode(bouton, INPUT); // le bouton est une entrée
    etatBouton = HIGH; // on initialise l'état du bouton comme "relaché"

}

void loop() {
  // put your main code here, to run repeatedly:

 etatBouton = digitalRead(bouton); // Rappel : bouton = 2

    if(etatBouton == HIGH) // test si le bouton a un niveau logique HAUT
    {
        digitalWrite(led, LOW); //le bouton est relâché, la LED est allumée
    }
    else  // test si le bouton a un niveau logique différent de HAUT (donc BAS)
    {
        digitalWrite(led, HIGH); //la LED reste éteinte
    }

}


hbachetti

La LED pin D13 n'a besoin d'aucun branchement. Elle est sur la carte.

Le bouton dur D2 doit être branché entre D2 et GND.

Par contre ceci ne va pas :

Code: [Select]

    pinMode(bouton, INPUT); // le bouton est une entrée
// ceci ira mieux :
    pinMode(bouton, INPUT_PULLUP); // le bouton est une entrée


Cela veut dire en clair qu'au repallumeros D2 sera lue comme HIGH, et LOW lorsque le bouton sera appuyé.

Dans ton code la LED s'allume avec un niveau LOW :

Code: [Select]

        digitalWrite(led, LOW); //le bouton est relâché, la LED est allumée


Rien ne t'empêche de remplacer LOW par HIGH pour utiliser la LED de la carte et avoir le même effet.

Sinon, tu seras obligée de brancher une LED externe avec résistance en série (1KΩ par exemple) entre D13 et +5V.
Moins pratique ...
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

hbachetti

Sur le blog d'eskimon je vois ceci : ICI



Il explique aussi les PULLUPS.
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

Go Up