《单片机原理及应用教程》第7章单片机的串行通信及接口.
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
99H
98H
(98H)
SM0
SM1
SM2
REN
TB8
RB8
TI
RI
SM0 0 0 1 1
图7.8 串行口控制寄存器
表7.1 串行口的工作方式选择
SM1
工作方式 说明
波特率
0
方式0
同步移位方式 fosc/12
1
方式1
10位异步收发 定时器T1控制
0
方式2
11位异步收发 fosc/32或fosc/64
1
图7.14 串行口扩展数码管显示接口
7.4.2 方式1双机通信应用
例1 甲乙机以方式1进行串行数据通信,其波特率为2400b/s。甲 机发送,发送数据在外部RAM 4000H~401FH单元中。乙机接收, 并把接收到的数据块首末地址及数据依次存入外部RAM 5000H 开始的区域中。数据为ASCII码形式,采用奇校验,单片机时钟 振荡频率为11.0592MHz。
(a)单工方式
(b)半双工方式
(c)全双工方式
7.1.3 异步通信和同步通信
1. 异步通信
第 N 个字符
第 N+1 个字符
停起
数据位
校 停起
数据位
止始 位 位 D0 D1
D2
D3 D4 D5 D6
D7
验 位
止始 位位
D0 D1
D2
……
1 0 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 1 0 0/1 0/1 0/1 ……
7.3 串行接口的工作方式 7.3.1 工作方式0
(a)方式0发送电路
(b)方式0接收电路
图7.10 方式0应用电路
图7.11 串行口方式0发送时序
图7.12 串行口方式0接收时序
7.3.2 工作方式1
帧格式如下:
… 起 D0 D1 D2 D3 D4 D5 D6 D7 停 …
…始
止…
串行口方式1的发送和接收时序如图 7.13所示。
2. 同步通信
同步字符 1 同步字符 2
数据
数据
……
数据 数据
图7.4 串行同步通信格式
7.1.4 串行通信的波特率
波特率,即为数据传送速率,表示每秒钟传送二进制代码的位数,它 的单位是b/s。波特率对于CPU与外界的通信是很重要的。
7.1.5 远距离串行通信
7.1.6 串行通信接口
图7.6 UART的结构示意图
方式2波特率取决于PCON中 SMOD位的值;当SMOD=0时, 波特率为fosc的1/64;若 SMOD=1,则波特率为fosc的 1/32。
3. 方式1和方式3的波特率 (1)方式1、方式3波特率=
(2)方式1、方式3波特率=
wk.baidu.com
2SMOD (T1溢出率) 32
2SMOD
fOSC
32 12 (256 X)
MCS-51 单片机原理及应用教程
清华大学出版社 刘迎春 主编
第7章 单片机的串行通信及接口
串行通信的有关概念 MCS-51 串行通信接口及控制寄存器 串行接口的工作方式 串行口的应用
7.1.1 数据通信
7.1 串行通信的有关概念
(a)并行传输
(b)串行传输
图7.1 两种通信方式
7.1.2 串行通信的传输方向
7.2 MCS-51串行通信接口及控制寄存器
7.2.1 MCS-51串行接口机构
MCS-8051通过引脚RXD(P3.0,串行数据接收端)和引脚TXD(P3.1,串 行数据发送端)与外界进行通信。
7.2.2 串行口控制寄存器
1. 串行口控制寄存器SCON
SCON
9FH
9EH
9DH
9CH
9BH
9AH
7.5 思考练习题
(1)什么是串行异步通信,它有哪些作用? (2)8051单片机的串行口由哪些功能部件组成?各有什么作用? (3)8051串行口有几种工作方式?有几种帧格式?各工作方式的波特率如 何确定? (4)假定异步串行通信采用10位帧格式,字符格式为一个起始位、八个数 据位、一个停止位,请画出传送ASCII码字符“T”并且采用奇偶较验的 帧格式。 (5)8051中SCON的SM2,TB8,RB8有何作用? (6)PCON中SMOD控制位的功能是什么? (7)简述串行通信接口芯片UART的主要功能。 (8)简述单片机多机通信的原理。 (9)设fosc=11.0592MHz,试编写一段程序,对串口初始化,使之工作于 方式l,波特率为1200b/s,用查询串行口状态的方法读出接收缓冲器的数 据并回送到发送缓冲器。
SETB
MOV 许接收
TR1 SCON,#50H ;串行口方式1,允
……
7.4 串行口的应用
7.4.1 同步通信方式的应用
例1 利用74LS164扩展并行口,构成8位静态显示数码管接口。设计 电路图并编写相应的显示驱动程序。显示缓存为40H~47H单元,存 放被显示数字的共阴极代码。 解:根据题目要求,硬件电路如图7.14所示。图中只画了2位数码 管,剩余6位数码管电路与前两位类似。
解:
(1) 求计数器初值 (2) 可采用奇校验 (3) 题目要求将被传送的数据和数据块的首末地址一起传送至
接收方,因此串行发送的内容包括数据块的首末地址和数 据两部分内容。
7.4.3 多机通信 1. 多机通信原理
图7.15 多机通信系统框图
2. 多机通信举例
例1 设计一255台从机的主从式多机通信系统。 解: (1)通信协议:(2)波特率与时间常数的确定 (3)主机的通信软件(查 询方式) (4)从机的通信软件(中断方式)
(a)无空闲位
第 N 个字符
第 N+1 个字符
停起
数据位
校停
止始
验止
位 位 D0 D1 D2 D3 D4 D5 D6 D7 位 位
空闲位
1 0 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 1 1 1 1
起 始 位 数据位 0 ……
(b)有空闲位 图7.3 串行异步通信的帧格式
例1 8051单片机时钟振荡频率为11.0592MHz,选用定时器T1工作模 式2作为波特率发生器,波特率为2400b/s,求初值。并编写初始化 程序。 解:设置波特率控制位(SMOD)=0
F4H 所以:(TH1)=(TL1)=F4H
初始化程序为:
INI:
MOV MOV MOV MOV
TMOD,#20H ;T1定时方式,模式2 PCON,#00H ;SMOD=0 TH1,#0F4H TL1,#0F4H
7.3.3 工作方式2和工作方式3
其帧格式为:
… 起 D0 D1 D2 D3 D4 D5 D6 D7 D8 停 …
…始
止…
方式2和方式3的发送、接收时序与方式1类似,只是 增加了一位第九位。发送和接收时序可参考图7.13。
7.3.4 波特率设计
1. 方式0的波特率 方式0波特率=fosc/12
2. 方式2的波特率
方式3
11位异步收发 定时器T1控制
2. 电源控制寄存器PCON
电源控制寄存器在串行口控制中只用了一位SMOD。见图7.9。
PCON
D7
(87H) SMOD
SMOD称为串行口波特率倍增位,在串行口方式1、方式2和方 式3时,波特率与2SMOD成正比,亦即当SMOD=1时,波特率 提高一倍。复位时,SMOD=0。