void commIntProc(void) interrupt 8
{
if (!S2RI) return;//S2RI串口2接收中断请求标志位
//下略。。。
}
S2RI在STC8.h里#define 为0x01(314行), 可以算是常数
当串口2有收到数据时, 串口2中断标志(SCON2位0)置位
进入串口2中断,if(!S2RI) => if(!0x01) => 永远为真-> return 跳出串口2中断
但是串口2标志(SCON2位0)没有被清零,立刻再次进入串口2中断
不断循环
修改方法在我的贴子中已经回答
但正被admin审查中
|