硬件型号:RisymSTC89C52RC

 

系统版本:IC系统

 

51单片机的串口是全双工的串口,发送数据的同时,还可以接收数据。

 

接收数据时,基本上都是使用“中断方式”,这是正确合理的。即每当收到一个新数据,就在中断函数中,把RI清零,并用一个变量,通知主函数,收到了新数据。

 

发送数据时,很多的程序都是使用的"查询方式”,就是执行 while(Tl ==O);这样的语句来等待发送完毕。

 

串行发送完毕后,将在标志位TI置1,同样,当收到了数据后,也会在RI 置1。无论Rl或Tl出现了1,只要串口中断处于开放状态,单片机都会进入串口中断处理程序。在中断程序中,要区分出来究竟是发送引起的中断,还是接收引起的中断,然后分别进行处理。