万福君、潘松峰
:近似于表示频率的赫兹,由于在数字传输中,信息的传送速率一定时,每个单位时间无论信号是0还是1,都表示一个信息位,所以使用波特率的概念。波特率是在一秒钟内传送的数据的位数。
一、 串行口的控制与状态寄存器P184
1、
2、 串口控制寄存器SCON∶SM0、SM1、SM2、REN、TB8、RB8、TI、RI
SM0、SM1用于方式选择见表6-3(P184)
SM2用于多机方式:
SM2=1且REN=1时,如果RB8=1则触发中断,RB8=0则不触发中断
SM2=0且REN=1时,RB8=0也可触发中断接收数据(从机)
REN用于输入允许:=1允许、=0禁止(采用RS-485标准通讯时防止读入写出数据)
TB8多机方式第九位输出
RB8多机方式第九位输入
TI、RI与其它中断请求标志不同,必须在中断程序中用软件清零,如果不清除会在退出中断程序后再次进入中断。
3、 PCON(地址87H,无位寻址)中的波特率选择位SMOD (PCON.7),在前面讲过省电方式中其它位的用处(P49)
4、 SMOD=1时方式1、2、3频率加倍(方式0是固定频率1/12fosc)
5、 波特率定时器T1或T2
51单片机的串行口的波特率取决于波特率发生器(定时器)的溢出率和波特率选择位SMOD.
6、 中断屏蔽位ES(IE.4地址A8H)
二、 51单片机串行口的工作方式
方式0∶同步移位寄存器方式(固定频率1/12fosc) 一般用于极短距离高速串行通讯,时序图见P185图6-11
(要求SM2=0)
TXD(P3.1)用作同步脉冲(只能主动方式)
RXD(P3.0)用作数据输入/数据输出(8位数据低位在先)
应用:
1、用移位寄存器做并口扩展
2、 用于串行工作方式芯片操作:A/D、D/A、EEPROM等
3、 用于多CPU并行工作时的数据连通
发送时:数据写入SBUF后开始自动发送,8位数据低位在先,移位完成后请求中断(应允许中断)
接受时:应允许中断,清除RI,当设置允许输入标志REN=1 时启动输入
方式1∶可设定频率常规异步串行通讯(8位UART格式,一帧数据10位:1位起始位、8位数据位、1位停止位) SM2=0
2SMOD
波特率=-------------×(T1或T2的溢出率)
32
T1的溢出率=定时器1的溢出次数/秒
时序图见P187图6-13
TXD(P3.1)用作数据输出 写入SBUF开始按设定波特率发送,发送完一帧数据后请求中断
RXD(P3.0)用作数据输入 REN=1 当RXD的电平从1到0时,按设定波特率接收,接收完一帧数据后请求中断(条件:RI=0、SM2=0,否则接收的数据作废)
方
式2∶固定频率多机方式异步串行通讯(1/64fosc或1/32fosc)(一帧数据11位:1位起始位、8位数据位、1位第9标志位,1位停止位)时序图见P187图6-14
SM2=1 时只有RB8=1接收的数据才有效,用于多机通讯地址的识别
2SMOD
波特率=-----------