Wednesday, September 14, 2016

Stepper Motor FWD/BCK Sketch




#include <Stepper.h>
int Pin0 = 8;
int Pin1 = 9;
int Pin2 = 10;
int Pin3 = 11;
#define delaytime 4
int m =80;
const int x = 1000; //512
Stepper xStepper(x, 11, 10, 9, 8);
void setup() {

  pinMode(Pin0,OUTPUT);
  pinMode(Pin1, OUTPUT);
  pinMode(Pin2, OUTPUT);
  pinMode(Pin3, OUTPUT);
 xStepper.setSpeed(2000);  //560
  //Serial.begin(9600);
}

void loop() {

  int i=0;   //512
  for(i=0;i<150;i++){
    backward();}
    delay(1000);
     for(i=0;i<150;i++){
    forward();}
    delay(1000);
   

}

  void Step_A() {
    digitalWrite(Pin0, HIGH);
    digitalWrite(Pin1, LOW);
    digitalWrite(Pin2, LOW);
    digitalWrite(Pin3, LOW);
  }

   void Step_B() {
    digitalWrite(Pin0, HIGH);
    digitalWrite(Pin1, HIGH);
    digitalWrite(Pin2, LOW);
    digitalWrite(Pin3, LOW);
  }

  void Step_C() {
     digitalWrite(Pin0, LOW);
    digitalWrite(Pin1, HIGH);
    digitalWrite(Pin2, LOW);
    digitalWrite(Pin3, LOW);
  }

  void Step_D() {
    digitalWrite(Pin0, LOW);
    digitalWrite(Pin1, HIGH);
    digitalWrite(Pin2, HIGH);
    digitalWrite(Pin3, LOW);
  }

void Step_E() {
   digitalWrite(Pin0, LOW);
    digitalWrite(Pin1, LOW);
    digitalWrite(Pin2, HIGH);
    digitalWrite(Pin3, LOW);
  }

  void Step_F() {
    digitalWrite(Pin0, LOW);
    digitalWrite(Pin1, LOW);
    digitalWrite(Pin2, HIGH);
    digitalWrite(Pin3, HIGH);
  }

  void Step_G() {
    digitalWrite(Pin0, LOW);
    digitalWrite(Pin1, LOW);
    digitalWrite(Pin2, LOW);
    digitalWrite(Pin3, HIGH);
  }

void Step_H() {
    digitalWrite(Pin0, HIGH);
    digitalWrite(Pin1, LOW);
    digitalWrite(Pin2, LOW);
    digitalWrite(Pin3, HIGH);
  }
 
  void forward(){
    Step_A();
   delay(delaytime);
    Step_B();
    delay(delaytime);
    Step_C();
    delay(delaytime);
    Step_D();
    delay(delaytime);
    Step_E();
    delay(delaytime);
    Step_F();
    delay(delaytime);
    Step_G();
    delay(delaytime);
    Step_H();
    delay(delaytime);
  }


void backward(){
  Step_H();
    delay(delaytime);
    Step_G();
    delay(delaytime);
    Step_F();
    delay(delaytime);
    Step_E();
    delay(delaytime);
    Step_D();
    delay(delaytime);
    Step_C();
    delay(delaytime);
    Step_B();
    delay(delaytime);
    Step_A();
    delay(delaytime);
  }

void Step_OFF(){
  digitalWrite(Pin0, LOW);
    digitalWrite(Pin1, LOW);
    digitalWrite(Pin2, HIGH);
    digitalWrite(Pin3, LOW);
}



No comments:

Post a Comment