Go Down

Topic: Utilisation de 2 bouton (Read 639 times) previous topic - next topic

Marc22190

Bonjour,
je n'arrive pas à faire tourner mon code. j'utilise une mega2560 et un shield adafruit.
mon but est de piloter par 2 boutons le réglage d'un zoom sur appareil photo à distance.
un bouton pour zoomer+ et un pour zoomer-.

voici mon programme actuel.
et merci de votre aide.

#include <Button.h>
    #include <AFMotor.h>
     
    AF_Stepper motor(200, 2); //Tandon KP4M2-203
     
    Button zommAV = Button(14,PULLUP); //Bouton zoom+
    Button zoomAR- = Button(15,PULLUP); //bouton zoom-
   
    int speed = 0;
   
    void setup(){
    Serial.begin(9600); // set up Serial library at 9600 bps
    motor.setSpeed(10); // 10 rpm
    }
   
    void loop(){
    if (zoomAV.uniquePress()){ 
      speed = 10;
      motor.setSpeed(10)
    }
      motor.step(1, FORWARD, SINGLE);
      Serial.print(speed);
      Serial.println("");
      release()
    }
    if (zoomAR.uniquePress()){
      speed = 10;
      motor.setSpeed(10)
    } 
      motor.step(1, BACKWARD, SINGLE);
      Serial.print(speed);
      Serial.println("");
      release()
    }
    }
   

skywodd

Bonjour,

1) mettre le code en balise code (#)
2)
Code: [Select]
Button zoomAR- = Button(15,PULLUP); // En langage C/C++ les noms de variables ne peuvent contenir que des lettres, chiffres et _
// Enlève ce - et ça devrait marcher beaucoup mieux !
Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Marc22190

j'ai corrigé mais toujours problème.
maintenant message "PULLUP' was not declared in this scope

DrWaX

Tu crée un objet Button zommAV mais tu appelles zoomAV dans ton code.

Faute de frappe ?

Marc22190

oui faute de frappe. mais le problème est toujours là avec PULLUP

DrWaX

Essaye de changer PULLUP en BUTTON_PULLUP.

Viproz

Code: [Select]
Button zoomAV = Button(14,PULLUP); //Bouton zoom+
Button zoomAR = Button(15,PULLUP); //bouton zoom-


Je viens de regarder la donc de la lib, ils ne sont pas très précis sur la méthode constructeur mais essai ça :
Code: [Select]
Button zoomAV(14); //Bouton zoom+
zoomAV.pullup(); //très bizarre de ne pas avoir mis le Up avec maj mais c'est la doc
Button zoomAR(15); //bouton zoom-
zoomAR.pullup();


Possible/Probable que ça ne marche pas, dans ce cas là, essai d'ajouter PULLDOWN au constructeur des Button, on ne sait jamais si l'un marchait et que l'autre non
http://stilldrinking.org/programming-sucks

Go Up