if(((jieguo> -90)&&(jieguo <-3))||((jieguo> 3)&&(jieguo <90)))
{
TCount = 0;
P13 = 1;
delay();
P13 = 0;
}
else if ((jieguo> =-3)&&(jieguo <-0.03))
{
TCount = 4;
PWM1 = 0xfe;
P32 = 1;
delay();
P32 = 0;
}
else if((jieguo> =-0.03)&&(jieguo <=0.03))
{
TCount = 4;
PWM1 = 0x7f;
P32 = 1;
delay();
P32 = 0;
}
else if ((jieguo> 0.03)&&(jieguo <=3))
{
TCount = 4;
PWM1 = 0x04;
P32 = 1;
delay();
P32 = 0;
}
else if(jieguo==255)
{
TCount = 0;
delay();
}
else
{
TCount = 0;
delay();
}
//对TCount=6接收到的RollCmd数据进行处理结束
}
break;
default:
break;
}
}
}
/* *************************************************************** */
/* ************************************************************** */
/* * 子程序:void Int4Serial() interrupt 4 using 1 * */
/* * 输 入:无 * */
/* * 输 出:无 * */
/* * 调 用:无 * */
/* * 被调用:无 * */
/* * 功 能:串行中断服务子程序处理 * */
/* *************************************************************** */
/* ************************************************************** */
void Int4Serial() interrupt 4 using 1
{
/* 2006年1月12日添加 */
if(RI)
{
RI = 0;
switch(TCount)
{
case 2:
{
if(RSPos <RRollNum)
{
ComTRBuf[RSPos++] = S0BUF;
}
else
{
REN = 0;
TCount = 3;
RSPos = 0;
}
}
break;
case 6:
{
if(RSPos <RRollNum)
{
ComTRBuf[RSPos++] = S0BUF;
}
else
{
REN = 0;
TCount = 7;
RSPos = 0;
}
}
break;
case 10:
{
if(RSPos <RPitchNum)
{
ComTRBuf[RSPos++] = S0BUF;
}
else
{
REN = 0;
TCount = 11;
RSPos = 0;
}
}
break;
}
}
else if(TI)
{
TI = 0;
switch(TCount)
{
case 1:
{
if(TSPos <0x04)
{
S0BUF = RollCmd[TSPos++];
}
else
{
TCount = 2;
REN = 1;
TSPos = 0;
}
}
break;
case 5:
{
if(TSPos <TPitchNum)
{
S0BUF = PitchCmd[TSPos++];
}
else
{
TCount = 6;
REN = 1;
TSPos = 0;
}
}
break;
case 9:
{
if(TSPos <TPitchNum)
{
S0BUF = PitchCmd[TSPos++];
}
else
{
TCount = 10;
REN = 1;
TSPos = 0;
}
}
break;
}
}
/* 2006年1月12日添加结束*/
}[/color]