//
#define X_DIR     5       //X轴 步进电机方向控制
#define X_STP     2       //x轴 步进控制
/*
//函数:step    功能:控制步进电机方向,步数。
//参数:dir 方向控制, dirPin对应步进电机的DIR引脚,stepperPin 对应步进电机的step引脚, steps 步进的步数
//无返回值
*/
void step(boolean dir, byte dirPin, byte stepperPin, int steps)
{
  digitalWrite(dirPin, dir);
  delay(50);
  for (int i = 0; i < steps; i++) {
    digitalWrite(stepperPin, HIGH);
    delayMicroseconds(800);  //函数以微秒为单位
    digitalWrite(stepperPin, LOW);
    delayMicroseconds(800);  
  }
}
void setup(){//将步进电机用到的IO管脚设置成输出
  pinMode(X_DIR, OUTPUT);
  pinMode(X_STP, OUTPUT);
}
void loop(){
  step(false, X_DIR, X_STP, 1798); //X轴电机 反转1圈,200步为一圈
  delay(1000);
  step(true, X_DIR, X_STP, 1800); //X轴电机 正转1圈,200步为一圈
  delay(1000);
}