1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
#include <AccelStepper.h>
AccelStepper Mon_moteur( 8, 9, 10, 11); // https://www.arduino.cc/reference/en/libraries/accelstepper/
// https://www.pjrc.com/teensy/td_libs_AccelStepper.html
int monMotVitesse = 0;
const int BP1=2;
const int BP2=3;
const int led=7;
const int fourche1=5;
const int fourche2=6;
void setup()
{ pinMode(led,OUTPUT);
pinMode(BP1,INPUT);
pinMode(BP2,INPUT);
pinMode(fourche1,INPUT);
pinMode(fourche2,INPUT);
Mon_moteur.setMaxSpeed(600);
}
void loop()
{
if ((digitalRead(BP1) == HIGH)&(digitalRead(fourche1)== LOW))
{
monMotVitesse = 600; // Marche CW (sens des aiguilles d'une montre)
}
else if ((digitalRead(BP2 ) == HIGH)&(digitalRead(fourche2) == LOW))
{
monMotVitesse = -600; // Marche CCW (sens contraire des aiguilles d'une montre)
}
else
{
monMotVitesse = 0; // Arrêt
}
if (monMotVitesse != 0) // Si un bouton est pressé
{
//digitalWrite(led,HIGH);
digitalWrite(led,HIGH);
delay(1000);
digitalWrite(led,LOW);
delay(1000);
Mon_moteur.setSpeed(monMotVitesse);
Mon_moteur.runSpeed();
}
else
{
digitalWrite(led,LOW);
}
} |
Partager