Bouton Poussoir pour Arduino
Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

Bouton Poussoir pour Arduino



  1. #1
    naramdani

    Talking Bouton Poussoir pour Arduino


    ------

    Bonjour tout le monde,

    Je souhaite mettre un bouton poussoir que lorsque j'appui dessus la première fois m'effectue une tache et lors de mon deuxième appui m'effectue l'inverse de ma tâche.

    Voudriez vous me proposez la solution la plus simplifiée pour ce faire.

    Merci d'avance pour vos retours
    Code:
    void setup()
    {
    pinMode(A0,INPUT); // BP
    pinMode(12, OUTPUT); // Relais
    digitalWrite(A0, HIGH); // Désactivation
    digitalWrite(12, LOW); // Désactivation
    }
    
    void loop();
    {
    if digitalRead(A0==LOW)
    {
    digitalWrite(12, LOW);
    }
    
    }

    -----

  2. #2
    sandrecarpe

    Re : Bouton Poussoir pour Arduino

    Salut,
    Voici un exemple :

    Code:
    const int pinBtn = 2;
    volatile bool flag;
    
    void setup()
    {
    	flag = true;
    	//flag = false;
    	
    	pinMode(pinBtn, INPUT);
    	attachInterrupt(digitalPinToInterrupt(pinBtn), interruptBouton, CHANGE);
    }
    
    
    void loop()
    {
    	if(flag)
    		action1();
    	else
    		action2();
    }
    
    
    void interruptBouton()
    {
    	//on inverse l'état du flag
    	flag = !flag;
    }
    Par contre faut gérer l'antirebond par hard, sinon tu risques de devoir appuyer plusieurs fois (si t'as pas de chance) avant de faire changer le flag
    Je vois pas plus simple
    Dernière modification par sandrecarpe ; 12/05/2017 à 14h58.

  3. #3
    naramdani

    Re : Bouton Poussoir pour Arduino

    Bonjour Sandrecarpe,

    Je tiens à vous remercier vivement pour votre réponse.

    Cependant, je ne sais pas si en travaillant avec un autre bouton d'interruption (pin 6)dans le même programme va me générer des défaillances vu que j'utilise déjà le reset de mon arduino sur la pin 4.

    Bon week end

  4. #4
    sandrecarpe

    Re : Bouton Poussoir pour Arduino

    Je tiens à vous remercier vivement pour votre réponse.
    C'est avec plaisir

    Tu peux faire une interruption sur chaque pin prévue pour. Mais attention sur l'arduino uno, on peut mettre en place des interruptions seulement sur les pin 2 et 3 !

    https://www.arduino.cc/en/Reference/attachInterrupt

  5. A voir en vidéo sur Futura

Discussions similaires

  1. [Programmation] Problème bouton poussoir + débitmètre Arduino [Résolu]
    Par jmjim dans le forum Électronique
    Réponses: 62
    Dernier message: 15/11/2015, 20h52
  2. arduino, servomoteur et bouton poussoir
    Par Anolis57 dans le forum Électronique
    Réponses: 68
    Dernier message: 22/07/2015, 12h53
  3. besoin d'aide bouton poussoir avec l'arduino mega
    Par joeman1 dans le forum Électronique
    Réponses: 11
    Dernier message: 20/10/2014, 20h32
  4. Problème bouton poussoir Arduino
    Par moha698 dans le forum Électronique
    Réponses: 8
    Dernier message: 27/04/2014, 17h07
  5. Help Bouton Poussoir pour Servomoteur '" Arduino "
    Par moha698 dans le forum Électronique
    Réponses: 6
    Dernier message: 23/04/2014, 07h11