头像-367444

1209a6b76f22a509

个人成就

获得 0 次赞

帮助过0人

关于51单片机串口中断的问题 RI TI寄存器设置

各位大佬好,我是新人最近学51单片机有一个问题一直困惑着我,就是关于串口中断函数何时进入的问题,如下面代码void Usart() interrupt 4{        u8 receiveData;        receiveData=SBUF;        RI = 0;        SBUF=receiveData;        while(!TI);         TI=0; }复制代码上面的串口中断函数应该是在RI或TI置一的时候进入,上面的中断函数初次进入是RI=1,但是运行到SBUF=receiveData的时候,此时TI应该置0,等待TI置1,那假如在这个程序中,TI在中断程序中变成1,那中断程序是直接运行到末尾还是重新从头运行,毕竟TI=1触发了中断,应该重头再次运行。