[an error occurred while processing this directive]
|
//
// Motor hadware port definitions
//
#define MOTOR1_PORT PORTB
#define MOTOR1_DDR DDRB
#define MOTOR1_MASK 0x3C#define MOTOR2_PORT PORTC
#define MOTOR2_DDR DDRC
#define MOTOR2_MASK 0x0F//
// Global variables
//
ST_DATA Motor1Data;
__flash ST_MCB Motor1 = {(char*)&MOTOR1_PORT, MOTOR1_MASK, &Motor1Data, 1};#if NMOTORS > 1
ST_DATA Motor2Data;
__flash ST_MCB Motor2 = {(char*)&MOTOR2_PORT, MOTOR2_MASK, &Motor2Data, 2};
#endif//char __flash StepTable[] = {0x4A, 0x29, 0x13, 0x89};
char __flash StepTable[] = {0x45, 0x26, 0x8A, 0x19};
//
// ** InitMotor -- motor initializer routine
//
void InitStepMotor(void)
{
MOTOR1_DDR |= MOTOR1_MASK; // Set motor 1 port as output
*Motor1.Port &= ~Motor1.Mask; // Motor 1 is stoped
Motor1.Data->Status = 0; //
#if NMOTORS > 1
MOTOR2_DDR |= MOTOR2_MASK; // Set motor 2 port as output
*Motor2.Port &= ~Motor2.Mask; // Motor 2 is stoped
Motor2.Data->Status = 0; //
#endif
}