基于51单片机的步进电机控制系统-单片机课程设计报告 下载本文

}

if(direction==1) //方向标志 { if(v<8)

{P1 = FFW[v];v++;} //取数据,正转 if(v==8) { v=0; } }

else

{ if(v<8)

{P1 = REV[v];v++;} //取数据,反转 if(v==8) { v=0; } } } }

/********************************************************/ /*

/* 定时器 1 中断 /*

/********************************************************/ void motor_onoff1() interrupt 3 {

TL1 = 0xff; TH1 = 0xf5; q1++;

if(q1 < rate) { return; } else

{ q1=0;

number2++; //脉冲计数

if(number2==4096) //64个脉冲电机转一圈 {

number2=0;

} //电机转动圈数

if(direction==1) //方向标志 { if(v<8)

{P1 = FFW[v];v++;} //取数据,正转 if(v==8) { v=0; } }

else

{ if(v<8)

{P1 = REV[v];v++;} //取数据,反转 if(v==8) { v=0; } } }