50 lines
833 B
Arduino
50 lines
833 B
Arduino
|
/* Send pulses to stepper motor drivers */
|
||
|
void stepper_move()
|
||
|
{
|
||
|
if(stepAz>0)
|
||
|
{
|
||
|
digitalWrite(DIR_AZ, HIGH);
|
||
|
digitalWrite(STEP_AZ, HIGH);
|
||
|
stepPosAz++;
|
||
|
stepAz--;
|
||
|
}
|
||
|
else if(stepAz<0)
|
||
|
{
|
||
|
digitalWrite(DIR_AZ, LOW);
|
||
|
digitalWrite(STEP_AZ, HIGH);
|
||
|
stepPosAz--;
|
||
|
stepAz++;
|
||
|
}
|
||
|
|
||
|
if(stepEl>0)
|
||
|
{
|
||
|
digitalWrite(DIR_EL, LOW);
|
||
|
digitalWrite(STEP_EL, HIGH);
|
||
|
stepPosEl++;
|
||
|
stepEl--;
|
||
|
}
|
||
|
else if(stepEl<0)
|
||
|
{
|
||
|
digitalWrite(DIR_EL, HIGH);
|
||
|
digitalWrite(STEP_EL, HIGH);
|
||
|
stepPosEl--;
|
||
|
stepEl++;
|
||
|
}
|
||
|
|
||
|
delay(T_STEPPER);
|
||
|
digitalWrite(STEP_AZ, LOW);
|
||
|
digitalWrite(STEP_EL, LOW);
|
||
|
delay(T_STEPPER);
|
||
|
|
||
|
}
|
||
|
/* Convert degrees to steps */
|
||
|
int deg2step(double deg)
|
||
|
{
|
||
|
return(60*SPR*deg/360);
|
||
|
}
|
||
|
/* Convert steps to degrees */
|
||
|
float step2deg(int Step)
|
||
|
{
|
||
|
return(360*Step/(SPR*60));
|
||
|
}
|