#include <AccelStepper.h>
#define step1 2
#define dir1 3
bool lastButtonState = 0;
AccelStepper stepper1(1,step1,dir1);
void setup() {
// put your setup code here, to run once:
pinMode(4, INPUT_PULLUP);
pinMode(5, OUTPUT);
stepper1.setMaxSpeed(200);
stepper1.setSpeed(150);
stepper1.moveTo(200);
}
void loop() {
// put your main code here, to run repeatedly:
bool buttonState = digitalRead(4);
if(buttonState==0 && lastButtonState ==0){
move();
}
digitalWrite(5,HIGH);
}
void move(){
while(true){
stepper1.run();
if(stepper1.currentPosition()==200){
stepper1.setCurrentPosition(0);
reset();
return;
}
digitalWrite(5,LOW);
}
}
void reset(){
stepper1.moveTo(200);
}