I am trying to control a unipolar stepper with two buttons, one on either side of a salvaged typwriter cage. The sketch will run it one one direction but the
button does not reverse the motor. Thanks for advise.
#include <Stepper.h>
Stepper s(20,8,9,10,11);
int button1 = 1;
int button2 = 2;
int buttonState1 = 0;
int buttonState2 = 0;
void setup()
{
pinMode(1,INPUT); //buttons
pinMode(2,INPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
pinMode(11,OUTPUT);
s.setSpeed(500);
s.step(1500); // This is well beyond the max range but I assumed that when the carriage hit the button, it would reverse.
//delay(5000);
}
void loop()
{
buttonState1 = digitalRead(button1);
buttonState2 = digitalRead(button2);
if (buttonState1 == HIGH)
{
s.setSpeed(-500);
s.step(1500);//200
//delay(1000);
}
if (buttonState2 == HIGH)
{
s.setSpeed(500);
s.step(-1500);
delay(1000);
}
}