这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » while,UTCTL0,amp,0X01 while ((UTCTL0&

共2条 1/1 1 跳转至

while,UTCTL0,amp,0X01 while ((UTCTL0&0X01)==0);怎么一直没发出去,请大侠指点。

院士
2006-09-17 18:14:16     打赏
while,UTCTL0,amp,0X01 while ((UTCTL0&0X01)==0);怎么一直没发出去,请大侠指点。



关键词: while     UTCTL0     怎么     一直     没发     出去         

院士
2006-12-22 22:43:00     打赏
2楼
问 我的程序比较大中断比较多,在某种特定的情况下,会出现以下情况。
通过控制软件发送控制命令,单片机能够接受(通过液晶观察得出),但控制软件一直不能收到返回码06,应此我把程序停一下来一看,发现它一直在while ((UTCTL0&0X01)==0);这个指令上,说明发不出去,那这是为什么呢,这是小概率事件,但肯定是程序的问题,请大家来分析一下,谢谢。 1: while (!(IFG2 & UTXIFG1)); // USART0 TX buffer ready? 2: 引用: 3: while (!(IFG2 & UTXIFG1)); // USART1 TX buffer ready?这是UART1
UTXIFG1置位,表示UTXBUF准备好处理下个字符。
while ((UTCTL0&0X01)==0);应while((UTCTL0&0x01)==0x01)还是可以得,我没有试过 4: 引用: 5: 你在while ((UTCTL0&0X01)==0)语句上面加上一段很短的延时程序试试. 6: 引用: 7: 偶也碰到这样的问题,还在困扰中,大侠怎样解决的,分享一下经验,谢谢!
while((UTCTL0&0x01)==0x01) 我试过好像能跳出,但仿真时观察值好像不对的

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]