全部博文(2005)
分类:
2007-05-17 15:07:22
/*---------------------------------------------------------------------------
//【函数名】 uint8 Gprinter_step(uint16 step_num)
//【创建人及创建时间】 gliethttp 2005-09-28 20:15
//【修改人及修改时间】
//【修改原因】
//【功能描述】 步进角控制
7 6 5 4 3 2 1 0 //
位
I0 I1 PH0 PH1 strobe0 strobe1 latch voltage //
位定义
1 1 0 0 1 1 1 1 //
上电默认值
PH0 0 1 1 0
PH1 0 0 1 1
/---------------------------------------------------------------------------*/
uint8 Gprinter_step(uint16 step_num)
{static const uint8 GPH[] = {0x00<<4,0x02<<4,0x03<<4,0x01<<4};
static uint8 phase = 0;
*AT91C_TC1_RC = Gprinter_timer_interval_start_HZ;
for(uint16 i = 0;i < step_num;i++)
{
phase++;
phase %= 4;
Gprin_CMD &= ~(GPph0 | GPph1);
Gprin_CMD |= GPH[phase];
Gcpld_send(Gprin_CMD,Gxx_cs1);
EPrin_clock();
OSSemPend(GPrinter_Time_Grain,0,0);
if(i == 0){*AT91C_TC1_RC = Gprinter_timer_interval_normel_HZ;};
}
return true;
}