#define MAX_STEP 400
#define DEBUG 1
/*
Direction
*/
void dir(int k)
{
if(k == 0)
{
digitalWrite(2, LOW);
}
else if(k == 1)
{
digitalWrite(2, HIGH);
}
}
/*
Step
*/
void step(void)
{
digitalWrite(3, HIGH);
delay(1);
digitalWrite(3, LOW);
delay(1);
}
/*
Setup
*/
void setup(void)
{
if(DEBUG == 1)
{
Serial.begin(115200);
}
else
{
Serial.end();
}
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
dir(0);
}
/*
Nema-17 200step 360°
Half tour 60x1000mS
A4988 setup 1/4 => EN = 0, MS1 = 0, MS2 = 1, MS3 = 0, VMOT = PSU +12V, VDD = +5V, GND1 + GND2 + Arduino GND = PSU GND
if you wanna, PSU +5V and Arduino +5V can merge.
All GND should be merged.
400 step half tour
(60 x 1000) / 400 = 150mS
*/
void loop(void)
{
dir(0);
for(int i = 0; i < MAX_STEP; i++)
{
if(DEBUG == 1)
{
Serial.print(i);
Serial.println(" step Left");
}
step();
delay(150);
}
dir(1);
for(int i = 0; i < MAX_STEP; i++)
{
if(DEBUG == 1)
{
Serial.print(i);
Serial.println(" step Right");
}
step();
delay(150);
}
}