2.串行口的内部 (1)串行数据缓冲寄存器SBUF 有接收缓冲器SBUF和发送缓冲器SBUF,以便80C51能 以全双工方式进行通信。它们在物理上是隔离的,但是占用同 个地址(9H)。 (2)串行口控制寄存器SCON (3)串行数据输入/输出引脚 接收方式下,串行数据从RXD(P3.0)引脚输入,串行 口内部在接收缓冲器之前还有移位寄存器,从而构成了串行接 收的双缓冲结构,可以避免在数据接收过程中出现帧重叠错误, 即在下一帧数据来时,前一帧数据还没有读走。 在发送方式下,串行数据通过TXD(P3.1)引脚输出
⒉ 串行口的内部 ⑴ 串行数据缓冲寄存器SBUF 有接收缓冲器SBUF和发送缓冲器SBUF,以便80C51能 以全双工方式进行通信。它们在物理上是隔离的,但是占用同 一个地址(99H) 。 ⑵ 串行口控制寄存器SCON ⑶ 串行数据输入/输出引脚 接收方式下,串行数据从RXD(P3.0)引脚输入,串行 口内部在接收缓冲器之前还有移位寄存器,从而构成了串行接 收的双缓冲结构,可以避免在数据接收过程中出现帧重叠错误, 即在下一帧数据来时,前一帧数据还没有读走。 在发送方式下,串行数据通过TXD(P3.1)引脚输出
(4)串行口控制逻辑 接受来自波特率发生器的时钟信号 TXCLOCK(发 送时钟)和 RXCLOCK(接收时钟); 控制内部的输入移位寄存器将外部的串行数据转换为并 行数据; 控制内部的输出移位寄存器将内部的并行数据转换为串 行数据输出; 控制串行中断(R和TI)
⑷ 串行口控制逻辑 ·接受来自波特率发生器的时钟信号——TXCLOCK(发 送时钟)和RXCLOCK(接收时钟); ·控制内部的输入移位寄存器将外部的串行数据转换为并 行数据; ·控制内部的输出移位寄存器将内部的并行数据转换为串 行数据输出; ·控制串行中断(RI和TI)
72.280C51串行口控制 1.串行口状态控制寄存器SCON 串行口状态控制寄存器SCON用来控制串行通信的方式选 择、接收,指示串行口的中断状态。寄存器SCON既可字节寻 址也可位寻址,字节地址为98H,位地址为98H~9FH。其格式 如下 位地9FH9EH9DH9CH9BH9AH99H98H 位功SM0SM1SM2 REN TB8RB8 RI
7.2.2 80C51串行口控制 ⒈ 串行口状态控制寄存器SCON 串行口状态控制寄存器SCON用来控制串行通信的方式选 择、接收,指示串行口的中断状态。寄存器SCON既可字节寻 址也可位寻址,字节地址为98H,位地址为98H~9FH。其格式 如下: 位 地 址 9FH 9EH 9DH 9CH 9BH 9AH 99H 98H 位 功 能 SM0 SM1 SM2 REN TB8 RB8 TI RI
(1)SM0(SCON7),SM1(SCON.6)串行口工作方式选择位。 其功能见表7-1。 (2)SM2(SCON5)允许方式2、3中的多处理机通信位 方式0时,SM2=0。 方式1时,若SM2=1,只有接收到有效的停止位,接收中 断R才置1。 方式2和方式3时,若SM2=1,则只有当接收到的第9位 数据(RB8)为1时,才将接收到的前8位数据送入缓冲器SBUF 中,并把RI置1、同时向CPU申请中断;如果接收到的第9位数 据(RB8)为0,RI置0,将接收到的前8位数据丢弃。 而当SM2=0时,则不论接收到的笫九位数据是0或1 都将前8位数据装入SBUF中,并申请中断
⑴ SM0(SCON.7),SM1(SCON.6)——串行口工作方式选择位。 其功能见表7–1。 ⑵SM2(SCON.5)—允许方式2、3中的多处理机通信位。 方式0时,SM2=0。 方式1时,若SM2=l,只有接收到有效的停止位,接收中 断RI才置1。 方式2和方式3时,若SM2=1,则只有当接收到的第9位 数据(RB8)为1时,才将接收到的前8位数据送入缓冲器SBUF 中,并把RI置1、同时向CPU申请中断;如果接收到的第9位数 据(RB8)为0,RI置0,将接收到的前8位数据丢弃。 而当SM2=0时,则不论接收到的笫九位数据是0 或1 , 都将前8位数据装入SBUF中,并申请中断
(3)REN(SCON4)允许串行接收位。 REN=1时,允许串行接收;REN=0时,禁止串行接收 用软件置位/清除。 (4)TB8(SCON3)方式2和方式3中要发送的第9位数据。 机通信中,TB8-0用来表示数据帧;TB8=1表示是地多0c51多 在通信协议中,常规定TB8作为奇偶校验位。在8 用软件置位/清除 (5)RB8(SCON2)—方式2和方式3中接收到的第9位数据。 方式1中接收到的是停止位。方式0中不使用这一位
⑶REN(SCON.4)——允许串行接收位。 REN=1时,允许串行接收;REN=0时,禁止串行接收。 用软件置位/清除。 ⑷TB8(SCON.3)——方式2和方式3中要发送的第9位数据。 在通信协议中,常规定TB8作为奇偶校验位。在80C51多 机通信中,TB8=0用来表示数据帧;TB8=1表示是地址帧。 用软件置位/清除。 ⑸RB8(SCON.2)——方式2和方式3中接收到的第9位数据。 方式1中接收到的是停止位。方式0中不使用这一位