在MCS-51芯片中,串行接收缓冲器和串行发送缓冲器X使用同一特殊功能寄存器名SBUF(字节地址为99H),但它们是两入不同的寄存器。由于串行接收缓冲器只能读出,不能写入,因此读SBUF寄存器时,操作对象是串行接收缓冲器;而串行发送缓冲器正好相反,即只能写入,不能读出,因此写SBUF寄存器时,操作对象是串行发送缓冲器X在MCS-51中,与串行通信控制有关的寄存器为串行通信接口控制寄存器SCON(选择串行通信接口工作方式)和电源控制寄存器PCON的SMOD1位(发送、接收波特率倍增控制位)
❖ 在MCS-51芯片中,串行接收缓冲器和串行发送缓冲器 使用同一特殊功能寄存器名SBUF(字节地址为99H),但它们 是两个不同的寄存器。由于串行接收缓冲器只能读出,不能 写入,因此读SBUF寄存器时,操作对象是串行接收缓冲器; 而串行发送缓冲器正好相反,即只能写入,不能读出,因此 写SBUF寄存器时,操作对象是串行发送缓冲器。 ❖ 在MCS-51中,与串行通信控制有关的寄存器为串行通 信接口控制寄存器SCON(选择串行通信接口工作方式)和电 源控制寄存器PCON的SMOD1位(发送、接收波特率倍增控 制位)
一、串行通信接口控制寄存器SCON可位寻址字节地址98H,9FH9EH9CH9BH9AH99H98H位地址9DHTIRISCONSMISM2RENTB8RB8SMO/FE字节地址98H西安电子多机通信控制位串行接收允许位待发送的第九位数据接收到的第九位数据发送中断标志接收中断标志选择工作方式西安中股大学出版社技大学出版社西安电子科西安市图5-3-4SCON各位含义
❖ 一、串行通信接口控制寄存器SCON 字节地址98H,可位寻址 图5-3-4 SCON各位含义
D6D5D4D7D3D2D1D0TIRISM1RENTB8SCONSMOSM2RB898 H位地址9FH99H98H9EH9DH9CH9BH9AH(1)SMO、SM1一一串行口4种工作方式的选择位方式SM1SMO功能说明000同步移位寄存器方式(用于扩展1/0口)0118位异步收发,波特率可变(由定时器控制)2019位异步收发,波特率为fosc/64或fosc/323119位异步收发,波特率可变(由定时器控制)
(1)SM0、SM1——串行口4种工作方式的选择位 SM0 SM1 方式 功 能 说 明 0 0 0 同步移位寄存器方式(用于扩展I/O口) 0 1 1 8位异步收发,波特率可变(由定时器控制) 1 0 2 9位异步收发,波特率为fosc/64或fosc/32 1 1 3 9位异步收发,波特率可变(由定时器控制)
(2)SM2一一多机通信控制位用于方式2或方式3中。当串行口以方式2或方式3接收时居(RB8)为“1"时,才如果SM2=1,只有当接收到的第9位数据将接收到的前8位数据送入SBUF,并置“1RI,产生中断请求;当接收到的第9位数据(RB8)为“0”时,则将接收到的前8位数据丢弃。如果SM2=0,则不论第9位数据是“1”还是“0”,都将前8位数据送入SBUF中,并置“1”RI,产生中断请求。方式1时,如果SM2=1,则只有收到停止位时才会激活RI。方式0时,SM2必须为0
(2)SM2 ——多机通信控制位 用于方式2或方式3中。 当串行口以方式2或方式3接收时, 如果SM2=1,只有当接收到的第9位数据(RB8)为“1”时,才 将接收到的前8位数据送入SBUF,并置“1” RI,产生中断请 求;当接收到的第9位数据(RB8)为“0”时,则将接收到的 前8位数据丢弃。 如果SM2=0,则不论第9位数据是“1”还是“0” ,都将前8位数 据送入SBUF中,并置“1” RI,产生中断请求。 方式1时,如果SM2=1,则只有收到停止位时才会激活RI。 方式0时,SM2必须为0
(3)REN一一允许串行接收位由软件置“1"或清“0"。REN=1允许串行口接收数据。REN=O禁止串行口接收数据。(4) TB8发送的第9位数据方式2和3时,TB8是要发送的第9位数据,可作为奇偶校验位使用,也可作为地址帧或数据帧的标志。=1为地址帧,=0为数据帧(5) RB8-接收到的第9位数据-方式2和3时,RB8存放接收到的第9位数据。在方式1,如果SM2=0,RB8是接收到的停止位。在方式0,不使用RB8
(3)REN——允许串行接收位 由软件置“1”或清“0” 。 REN=1 允许串行口接收数据。 REN=0 禁止串行口接收数据。 (4)TB8——发送的第9位数据 方式2和3时,TB8是要发送的第9位数据,可作为奇偶校验位使 用,也可作为地址帧或数据帧的标志。 =1为地址帧, =0为数据帧 (5)RB8——接收到的第9位数据 方式2和3时,RB8存放接收到的第9位数据。在方式1,如果 SM2=0,RB8是接收到的停止位。在方式0,不使用RB8