// Stepper motor pins setting
#define Am 8
#define Ap 9
#define Bp 10
#define Bm 11
// Press buttons on Arduino
#define btn1 2
#define btn2 3
// Functions to move the stepper motor
void move1(){
int i=0;
if(i++<50){
delay(20);
digitalWrite(Bm, LOW); digitalWrite(Ap, HIGH);
delay(20);
digitalWrite(Ap, LOW); digitalWrite(Bp,HIGH);
delay(20);
digitalWrite(Bp,LOW); digitalWrite(Am,HIGH);
delay(20);
digitalWrite(Am,LOW); digitalWrite(Bm,HIGH);
}
}
void move2(){
int k=0;
if(k++<50){
delay(20);
digitalWrite(Ap, LOW); digitalWrite(Bm, HIGH);
delay(20);
digitalWrite(Bm, LOW); digitalWrite(Am,HIGH);
delay(20);
digitalWrite(Am,LOW); digitalWrite(Bp,HIGH);
delay(20);
digitalWrite(Bp,LOW); digitalWrite(Ap,HIGH);
}
}
// Variables for storing buttons digital informations
bool var1=0;
bool var2=0;
void setup() {
pinMode(Ap, OUTPUT);
pinMode(Am, OUTPUT);
pinMode(Bm, OUTPUT);
pinMode(Bp, OUTPUT);
pinMode(btn1,INPUT);
pinMode(btn2, INPUT);
}
void loop() {
var1 = digitalRead(btn1);
var2 = digitalRead(btn2);
if(var1==HIGH && var2==LOW){
move1();
}
if(var1==LOW && var2==HIGH){
move2();
}
}