小知识点补充17:
51单片机有一个可编程全双工串行通信接口。由串行数据缓冲器(SBUF)、波特率发生器、控制寄存器及相关控制电路组成。
1,SBUF:包括发送寄存器和接收寄存器。
2,波特率发生器:由定时器T1、时钟信号、分频电路组成。
3,控制寄存器:特殊功能寄存器SCON、PCON
(1)串行口控制寄存器SCON:
SM0 SM1 :串行口方式选择位
SM0 SM1 工作方式 说 明
0 0 0 同步移位寄存器输入/输出。波特率固定为fosc/12
0 1 1 10位UART,波特率可变(由定时T1溢出率控制)
1 0 2 11位UART,波特率为fosc/64或fosc/32
1 1 3 11位UART ,波特率可变(由定时T1溢出率控制)
备注:UART:通用异步收发传输器,方式0常常用于扩展并行IO口,此处的10/11位包含起始位、停止位等
SM2: 方式2和方式3的多机通信控制位,在方式0中SM2必须置0。
REN: 允许串行接收位,由软件置1时,允许接收,清0时。禁止接收
TB8: 方式2和方式3中,发送的第9位数据,需要时由软件置位或复位
在多机通信中,此位=1:表示主机发送的是地址,=0:表示数据
RB8: 方式2和方式3中,接收到的第9位数据,在方式1时,RB 是接收到停止位,在方式0,未使用
TI: 接收中断标志,由硬件置1,在方式0时,串行发送到第8位结束时置1;在其他方式,串行口发送停止位时置1。TI 必须由软件清0
RI: 接收中断标志,由硬件置1。在方式0时( SM2 应置 0),接收到第8位结束时置 1,当SM2=0的其他方式(方式 0,1,3)时,接收到停止位置位“ 1”,当 SM2=1时,若串口工作在方式2和3,接收到的第9位数据(RB8)为1时才激活RI 。在方式1时,只有接收到有效的停止位时才会激活RI。RI必须由软件清0。
(2)电源控制寄存器PCON:
DL: 空闲方式控制位,置1后单片机进入空闲方式,电流为 1.7-5mA
PD: 掉电方式控制位,置1后单片机时钟信号停止,单片机停止工作,掉电方式
GF0: 通用标志位
GF1: 通用标志位
SMOD: 串行口波特率倍率控制位,=1时,波特率加倍
SBUF: 地址:99H,串行通信数据缓冲器
串行口内部结构图:
原创文章 43获赞 47访问量 9998
关注
私信
展开阅读全文
作者:liuxianfei0810