按网上的教程,Arduino + A4988 + 光驱步进电机;
Arduino + A4988 驱动电机没问题,程序如下:
int x;
#define ALL_ENABLE 8
#define X_STEP 5
#define X_DIR 2
#define Y_STEP 6
#define Y_DIR 3
#define Z_STEP 7
#define Z_DIR 4
void setup()
{
pinMode(ALL_ENABLE, OUTPUT); // Enable
pinMode(X_STEP, OUTPUT); // Step
pinMode(X_DIR, OUTPUT); // Dir
digitalWrite(ALL_ENABLE, LOW);
}
void loop()
{
digitalWrite(X_DIR, HIGH); // Set Dir high
for(x = 0; x < 106; x++) // Loop 200 times
{
digitalWrite(X_STEP, HIGH); // Output high
delayMicroseconds(800); // Wait 1/2 a ms
digitalWrite(X_STEP, LOW); // Output low
delayMicroseconds(800); // Wait 1/2 a ms
}
delay(1000); // pause one second
digitalWrite(X_DIR, LOW); // Set Dir low
for(x = 0; x < 106; x++) // Loop 2000 times
{
digitalWrite(X_STEP, HIGH); // Output high
delayMicroseconds(800); // Wait 1/2 a ms
digitalWrite(X_STEP, LOW); // Output low
delayMicroseconds(800); // Wait 1/2 a ms
}
delay(1000); // pause one second
}
电机16细分,电机电源12V 3A;
但是Arduino烧入grbl后,电机不转。0.9版和1.1版都一样。
已经设置grbl的x 、 y轴Step为106.666.
请高手指点。
|