AT89S51单片机串行口接收/发送数据缓冲器都用SBUF,如果同时接收/发送数据时,是否会发生冲突?为什么?
正确答案:不会发生冲突的。串口通信中,有两个缓冲寄存器SBUF,一个是发送寄存器,一个是接收寄存器,这两个寄存器在物理结构上是完全独立的。它们都是字节寻址的寄存器,字节地址均为99H。这个重叠的地址靠读/写指令区分:串行发送时,CPU向SBUF写入数据,此时99H表示发送SBUF;串行接收时,CPU从SBUF读出数据,此时99H表示接收SBUF。
答案解析:有
微信扫一扫手机做题
AT89S51单片机串行口接收/发送数据缓冲器都用SBUF,如果同时接收/发送数据时,是否会发生冲突?为什么?
微信扫一扫手机做题