while(!TI); TI=0; 这一小段程序是怎么回事?当TI不等于0时,一直执行空语句???

如题所述

第1个回答  2012-12-05
这是单片机串口通信的程序,TI是标志位。通信进行时,硬件自动将TI置0,按照程序,就是CPU什么也不做,继续进行通信。当传送完一个字节后,硬件将TI置1,跳出while循环,这时候需要人工将TI清零
第2个回答  2012-07-24
也许程序的原意是while(!TI) TI=0; 吧 。 当TI !=0 时 就执行 TI=0 。
多了个分号,就变成 当 TI !=0 时 ,死循环。本回答被网友采纳
第3个回答  2012-07-24
TI=0时进入死循环!
相似回答