创客出手

目录

Arduino 使用A4988驱动模块控制步进电机

示例目的

学会使用A4988驱动电机对于DIY3D打印机,雕刻机很有帮助。

BOM表

  • Arduino uno *1
  • A4988            *1
  • 42步进电机    *1
  • 面包板            *1
  • 9V外接电源    *1
  • 导线               若干

接线

file

关于接线更详细的相关资料:http://fritzing.org/projects/a4988-single-stepper-test/

MS1 , MS2 , MS3 跳线说明:(例子里是低电平,悬空或接地线,使用全步进模式)

分别是全步进,1/2步进,1/4步进,1/8步进,1/16步进模式。

步进电机走一步是1.8度,一圈就是200步。例如使用1/16步进,则需要走3200步才等于一圈。

程序代码

int x;

void setup()
{
  pinMode(6,OUTPUT); // Enable
  pinMode(5,OUTPUT); // Step
  pinMode(4,OUTPUT); // Dir
  digitalWrite(6,LOW); // Set Enable low
}

void loop()
{

  digitalWrite(4,HIGH); // Set Dir high

  for(x = 0; x < 200; x++) // Loop 200 times
  {
      digitalWrite(5,HIGH); // Output high
      delayMicroseconds(800); // Wait 1/2 a ms
      digitalWrite(5,LOW); // Output low
      delayMicroseconds(800); // Wait 1/2 a ms
    }
  delay(1000); // pause one second

  digitalWrite(4,LOW); // Set Dir low

  for(x = 0; x < 200; x++) // Loop 2000 times
  {
      digitalWrite(5,HIGH); // Output high
      delayMicroseconds(800); // Wait 1/2 a ms
      digitalWrite(5,LOW); // Output low
      delayMicroseconds(800); // Wait 1/2 a ms
    }
    delay(1000); // pause one second
}

注意:

*脚6(-en) 低电平为启动电机(enable),貌似也可以不接,试过一样能运行.但如果要控制电机的启动关闭还是要用上

*脚4(-dir) 用高低电平控制方向.

*脚5(-step) 用高低电平驱动电机转动.注意中间间隔等待的微秒值,如果太快会导致电机有声响不转动.

更多关于 的文章
关注创客出手公众号

关注创客出手