异步串行通信的字符帧可以是连续的,也可以是断续的。连续的异步串行通信,是在一个字符格式的
停止位之后立即发送下一个字符的起始位,开始一个新的字符的传送,即帧与帧之间是连续的。而断续的
异步串行通信,则是在一帧结束之后不一定接着传送下一个字符,不传送时维持数据线的高电平状态,使
数据线处于空闲。其后,新的字符传送可在任何时候开始,并不要求整倍数的位时间。
2. 传送的速率
串行通信的速率用波特率来表示,所谓波特率就是指一秒钟传送数据位的个数。每秒钟传送一个数据位
就是 1 波特。即:1 波特=1bps(位/秒)
在串行通信中,数据位的发送和接收分别由发送时钟脉冲和接收时钟脉冲进行定时控制。时钟频率高,则
波特率高,通信速度就快;反之,时钟频率低,波特率就低,通信速度就慢。
9.1.2 数据转换
MCS-51 单片机只能处理 8 位的并行数据,所以在进行串行数据的发送时,要把并行数
据转换为串行数据。而在接收数据时,只有把接收的串行数据转换成并行数据,单片机才能
进行处理。
能实现这种转换的设备,称为通用异步接收发送器(Universal Asynchronous Receiver
/Transmitter)。这种设备已集成到单片机内部,称为串行接口电路。串行接口电路为用户提
供了两个串行口缓冲寄存器(SBUF),一个称为发送缓存器,它的用途是接收片内总线送来
的数据,即发送缓冲器只能写不能读。发送缓冲器中的数据通过 TXD 引脚向外传送。另一
个称为接收缓冲器,它的用途是向片内总线发送数据,即接收缓冲器只能读不能写。接收缓
冲器通过 RXD 引脚接收数据。因为这两个缓冲器一个只能写,一个只能读,所以共用一个
地址 99H。串行接口电路如图 9.2 所示。
图 9.2 MCS-51 串行口寄存器结构
9.2 MCS-51 单片机串行通信的控制寄存器
1. 串行口控制寄存器(SCON)
SCON 是 MCS-51 单片机的一个可位寻址的专用寄存器,用于串行数据通信的控制。单
元地址为 98H,位地址为 98H~9FH。寄存器的内容及位地址表示如下:
各位的说明如下:
1) SM
0
、SM
1
——串行口工作方式选择位
其状态组合和对应工作方式为: