No.88768 作者:flashmen 邮件:wanderring@163.com ID:47160 登陆:3次 文章数:6篇 最后登陆IP:222.171.7.205 最后登陆:2006/5/23 19:13:54 注册:2006/2/11 16:31:20 财富:127 发帖时间:2006/2/11 17:10:51 发贴者IP:222.171.7.205 标题:flashmen:帮我看看我的程序怎么了,谢谢(89c552程序) 摘要:No.88768帮我看看我的程序怎么了,谢谢(89c552程序) [color=#008B8B]程序的主体部分发送第一个字和处理接受回来的数据, 程序的中断部分接受从通讯设备接受回来的信息 void main(void) { while(1) { switch(TCount) { case 0: { TCount = 1; S0BUF = RollCmd[TSPos } break; case 3: { //对TCount=2接收到的数据进行处理 jieguo = asc2dec(ComTRBuf); //[I]如果加上下面的jieguo处理程序并且case 7 里的jieguo处理程序也加上时,调试有错误[/I] /*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(); } */ //对TCount=2接收到的数据进行处理结束 } break; case 4: { TCount = 5; S0BUF = PitchCmd[TSPos++]; } break; case 7: { //对TCount=6接收到的RollCmd数据进行处理 jieguo = asc2dec(ComTRBuf); //[I]如果加上下面的jieguo处理程序并且case 3 里的处理程序也加上时,调试有错误[/I] 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; } } } /* *********** ......
>>返回讨论的主题
|