#define IN1 21
#define IN2 26
#define IN3 33
#define IN4 34
const int stepsPerRevolution =200;
int stepSequence[4][4]={
{1,0,1,0},
{0,1,1,0},
{0,1,0,1},
{1,0,0,1},
};
void setup(){
Serial.begin(9600);
pinMode(IN1,OUTPUT);
pinMode(IN2,OUTPUT);
pinMode(IN3,OUTPUT);
pinModde(IN4,OUTPUT);
serial.println("stepper motor continuous rotation started...");
}
void loop(){
rotatedStepper(stepsPerRevolution, true);
delay(500);
rotateStepper(stepsPerRevolution, false);
delay(500);
}
void rotateStepper(int steps,bool clocvkwise){
for(int i=0;i<steps;i++){
int stepIndex=clockwise ? i% 4:(3-(i%4));
stepMotor(stepIndex);
delay(5);
}
}
void stepMotor(int step){
digitalWrite(IN1, stepSequence[step][0]);
digitalWrite(IN2,stepSequence[step][1]);
digitalWrite(IN3,stepSequence[step][2]);
digitalWrite(IN4,stepSequence[step][3]);
}
}