51单片机SBUF意思是SBUF串行口数据缓冲寄存器,分为输入和输出,但使用时用同一个名字。比如MOV SBUF,A(是输出),MOV A,SBUF(是输入)。SBUF既是接收缓冲器又是发送缓冲器,同一时间只能为一种,要么接收,要么发送。a=SBUF是把接收缓冲器中的数据复制给a。SBUF=a是把a中的数据复制给发送缓冲器。通过读写缓冲器SBUF实现数据收发功能。
SBUF简介:
SBUF全称serial data buffer,中文名称“串行数据缓冲器”。
这个重叠的地址靠读/写指令区分:串行发送时,CPU向SBUF写入数据。
99H表示发送SBUF;串行接收时,CPU从SBUF读出数据,99H表示接收SBUF。
串行口中有两个缓冲寄存器SBUF,一个是发送寄存器,一个是接收寄存器。
SBUF在物理结构上是完全独立的。它们都是字节寻址的寄存器,字节地址均为99H。
请确认:1.串口模式,波特率等设置正确;
2.已经开了中断,包括EA,ES等;
3.有不同的字符送入UART;
4.已经在中断函数中清除了RI,即设置RI=0,否则第1次收到字符后,由于没有清掉RI,这个中断函数会不断地响应,相当于死循环。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)