第8章MCS 51单片机的串行口
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本书仅讲述 RS-232C接口标准
(1)RS-232C的连接器
(2)RS-232C的电气特性 RS-232C接口采用EIA电平,低电平为+3V~
+15V,高电平为-3V~-15V。实际常用 ±12V或±15V RS-232C接口采用负逻辑,当是高电平,逻 辑值为“0”; 当是低电平,逻辑值为“1”。
8.3 MCS-51串行口的控制寄存器
8.3.1 串行口控制寄存器 SCON
SCON D7 D6
D5
D4
D3
位名 称
SM0
SM1
位地 址
9FH
9EH
功能
工作方式 选择
SM2
9DH
多机通信 控制
REN 9CH
接收允许
TB8
9BH
发送 第9位
D2
D1
D0
RB8
TI
RI
9AH
99H
98H
接收 第9位
发送中断 接收中断
A
发送器
A 发送器 接收器 A 发送器 接收器
B
接收器 a)
B 发送器 接收器 b) B 接收器 发送器 c)
(3)串行通信的校验 ? 奇偶校验 ? 循环冗余校验(CRC) ? 累加和校验
8.1.2 串行通信的接口标准
异步串行通信接口标准有三类: 1. RS-232C、RS-449 2. RS-422 3. RS-423和RS-485、20mA电流环
(1)接收器部分:由一个数据接收缓冲寄存 器(接收SBUF)和一个输入移位寄存器构成, 用于实现接收数据传输格式的拆封和串/并格式 转换功能。
(2)发送器部分:由一个具有移位功能的发 送缓冲寄存器(发送SBUF)组成,用来实现 发送数据的并/串格式转换和发送标准格式的封 装功能。
注意:SBUF是数据接收缓冲寄存器和数据发 送缓冲寄存器的总称,二者共用一个地址为 99H。在单片机的CPU对串行口执行写操作时, 指的是将数据写入发送SBUF中;在CPU对串 行口执行读操作时,是指读出接收缓冲SBUF 中己送到的数据。
(3)RS-232C的连接 RS-232C用于计算机与计算机之间或计算机 与外设调制解调器之间的连接。
单片机
2 3 4 5 6 7 8 20 22
发送数据TxD 接收数据RxD 请求发送RTS 允许发送CTS 数据装置准备好DSR
信号地GND 载波检测CD 数据终端准备好DTR 振铃指示RI
MODEM
8.1.1 串行通信的概念 (1)串行通信: 数据的各位依次逐位发送或接收,
也就是每一次(或每一时刻)只能传送一位二进 制数位 。 (2)串行通信的分类: 异步通信(异步传输)和同 步通信(同步传输)。
所谓异步就是指发送端和接收端使用的不是同一 个时钟。异步串行通信通常以字符(或者字节) 为单位组成 字符帧传送。字符帧由发送端一帧一 帧地传送,接收端通过传输线一帧一帧地接收。
(1)SM0、SM1:串行口工作方式选择位。
SM0 SM1 工作方式
00
方式0
Hale Waihona Puke Baidu
01
方式1
10
方式2
11
方式3
功能说明 同步移位寄存器输入/输出,波特率固定为fosc/12 8位UART,波特率可变(TI溢出率/n,n=32或16)
9位UART,波特率固定为fosc/n,(n=64或32) 9位UART,波特率可变(T1溢出率/n,n=32或16)
在单片机中主要采用异步通信方式,其帧的 格式如图8-1所示。
同步通信依靠同步字符保持通信同步。同步 通信的帧是由 1~2个同步字符和多字节数据 组成,多字节数据之间不允许有空隙, 发送 器和接收器的时钟必须是同一个时钟 。 同步通信的帧的格式如图 8-2所示。
(3)串行通信速率: 串行通信速率用波特率(bps)描述。波特率 定义为每秒传输二进制数的位数,即1波特= 1 位/秒(1bps),波特率的倒数即为每位传输 所需的时间。 (4)串行通信的制式 ? 单工 ? 半双式 ? 全双工
(2)SM2:多机通信控制位,主要用于方式 2和方式3中。
? 在方式0时,SM2必须为0。
? 在方式1时,若SM2=1,则规定只有串行 口接收到有效停止时才置位RI,产生中断 请求,通知CPU接收数据。
? 在方式2和3时,若SM2=1,且RB8(接收 到的第9位数据)=1时,将接收到的前8位 数据送入SBUF,并置位RI产生中断请求; 否则,将接收到的8位数据丢弃。
而当SM2=0时,则不论第9位数据为0还是 为1,都将前8位数据装入SBUF中,并产 生中断请求。
(3)REN:允许接收控制位。 REN位用于对串行数 据的接收进行控制。 REN=0,禁止接收; REN=1 ,允许接收。该位由软件置位或复位。
MODEM
2
2
3
3
4
4
5
电话线 5
6
6
7
7
8
8
20
20
22
22
单片机
2 3 4 5 6 7 8 20 22
单片机 TxD RxD
GND
单片机 TxD RxD
RTS
CTS GND DSR DTR
单片机
单片机
8.2 MCS-51串行口的结构和工作原理
1. 串行口的基本功能 ? 串/并转换功能 ? 串行数据的格式化功能(封装与拆封) ? 可靠性功能 ? 串行口与数据通信设备间的握手联络功能 2. 串行口的结构 MCS-51的串行口是一个全双工的异步串行通 信接口,通过它既可以发送数据也可以接收 数据,其硬件主要由发送器部分和接收器部 分组成。
2. 串行口的工作原理
(1)接收:串行口按软件设定的工作方式和波特率 通过引脚 RXD 串行移入格式化数据至输入移位寄 存器,待整帧接收完毕后进行反格式化处理,然 后并行送入接收 SBUF,并形成中断请求 RI,通 知CPU读取传入的数据。
(2)发送:当CPU向串行口的发送 SBUF写入所需 发送的数据后,串行口自动按软件设定格式将待 传送的数据装成标准格式帧,然后以软件规定的 波特率借助于 SBUF的移位功能通过 TXD逐位移 出。待整帧全部移出后,形成中断请求 TI,通知 CPU准备下一帧数据的发送工作。
第8章 MCS-51单片机的 串行口
本章要点: ?串行通信的分类、波特率及其制式 ?MCS-51 单片机串行口发送和接收数据过程 ?MCS-51 单片机串行口的工作寄存器各位含义 ?MCS-51 单片机串行口的工作方式 本章难点:
?串行通信的接口标准 ?MCS-51单片机串行口工作方式2、3的应用
8.1串行通信基础
(1)RS-232C的连接器
(2)RS-232C的电气特性 RS-232C接口采用EIA电平,低电平为+3V~
+15V,高电平为-3V~-15V。实际常用 ±12V或±15V RS-232C接口采用负逻辑,当是高电平,逻 辑值为“0”; 当是低电平,逻辑值为“1”。
8.3 MCS-51串行口的控制寄存器
8.3.1 串行口控制寄存器 SCON
SCON D7 D6
D5
D4
D3
位名 称
SM0
SM1
位地 址
9FH
9EH
功能
工作方式 选择
SM2
9DH
多机通信 控制
REN 9CH
接收允许
TB8
9BH
发送 第9位
D2
D1
D0
RB8
TI
RI
9AH
99H
98H
接收 第9位
发送中断 接收中断
A
发送器
A 发送器 接收器 A 发送器 接收器
B
接收器 a)
B 发送器 接收器 b) B 接收器 发送器 c)
(3)串行通信的校验 ? 奇偶校验 ? 循环冗余校验(CRC) ? 累加和校验
8.1.2 串行通信的接口标准
异步串行通信接口标准有三类: 1. RS-232C、RS-449 2. RS-422 3. RS-423和RS-485、20mA电流环
(1)接收器部分:由一个数据接收缓冲寄存 器(接收SBUF)和一个输入移位寄存器构成, 用于实现接收数据传输格式的拆封和串/并格式 转换功能。
(2)发送器部分:由一个具有移位功能的发 送缓冲寄存器(发送SBUF)组成,用来实现 发送数据的并/串格式转换和发送标准格式的封 装功能。
注意:SBUF是数据接收缓冲寄存器和数据发 送缓冲寄存器的总称,二者共用一个地址为 99H。在单片机的CPU对串行口执行写操作时, 指的是将数据写入发送SBUF中;在CPU对串 行口执行读操作时,是指读出接收缓冲SBUF 中己送到的数据。
(3)RS-232C的连接 RS-232C用于计算机与计算机之间或计算机 与外设调制解调器之间的连接。
单片机
2 3 4 5 6 7 8 20 22
发送数据TxD 接收数据RxD 请求发送RTS 允许发送CTS 数据装置准备好DSR
信号地GND 载波检测CD 数据终端准备好DTR 振铃指示RI
MODEM
8.1.1 串行通信的概念 (1)串行通信: 数据的各位依次逐位发送或接收,
也就是每一次(或每一时刻)只能传送一位二进 制数位 。 (2)串行通信的分类: 异步通信(异步传输)和同 步通信(同步传输)。
所谓异步就是指发送端和接收端使用的不是同一 个时钟。异步串行通信通常以字符(或者字节) 为单位组成 字符帧传送。字符帧由发送端一帧一 帧地传送,接收端通过传输线一帧一帧地接收。
(1)SM0、SM1:串行口工作方式选择位。
SM0 SM1 工作方式
00
方式0
Hale Waihona Puke Baidu
01
方式1
10
方式2
11
方式3
功能说明 同步移位寄存器输入/输出,波特率固定为fosc/12 8位UART,波特率可变(TI溢出率/n,n=32或16)
9位UART,波特率固定为fosc/n,(n=64或32) 9位UART,波特率可变(T1溢出率/n,n=32或16)
在单片机中主要采用异步通信方式,其帧的 格式如图8-1所示。
同步通信依靠同步字符保持通信同步。同步 通信的帧是由 1~2个同步字符和多字节数据 组成,多字节数据之间不允许有空隙, 发送 器和接收器的时钟必须是同一个时钟 。 同步通信的帧的格式如图 8-2所示。
(3)串行通信速率: 串行通信速率用波特率(bps)描述。波特率 定义为每秒传输二进制数的位数,即1波特= 1 位/秒(1bps),波特率的倒数即为每位传输 所需的时间。 (4)串行通信的制式 ? 单工 ? 半双式 ? 全双工
(2)SM2:多机通信控制位,主要用于方式 2和方式3中。
? 在方式0时,SM2必须为0。
? 在方式1时,若SM2=1,则规定只有串行 口接收到有效停止时才置位RI,产生中断 请求,通知CPU接收数据。
? 在方式2和3时,若SM2=1,且RB8(接收 到的第9位数据)=1时,将接收到的前8位 数据送入SBUF,并置位RI产生中断请求; 否则,将接收到的8位数据丢弃。
而当SM2=0时,则不论第9位数据为0还是 为1,都将前8位数据装入SBUF中,并产 生中断请求。
(3)REN:允许接收控制位。 REN位用于对串行数 据的接收进行控制。 REN=0,禁止接收; REN=1 ,允许接收。该位由软件置位或复位。
MODEM
2
2
3
3
4
4
5
电话线 5
6
6
7
7
8
8
20
20
22
22
单片机
2 3 4 5 6 7 8 20 22
单片机 TxD RxD
GND
单片机 TxD RxD
RTS
CTS GND DSR DTR
单片机
单片机
8.2 MCS-51串行口的结构和工作原理
1. 串行口的基本功能 ? 串/并转换功能 ? 串行数据的格式化功能(封装与拆封) ? 可靠性功能 ? 串行口与数据通信设备间的握手联络功能 2. 串行口的结构 MCS-51的串行口是一个全双工的异步串行通 信接口,通过它既可以发送数据也可以接收 数据,其硬件主要由发送器部分和接收器部 分组成。
2. 串行口的工作原理
(1)接收:串行口按软件设定的工作方式和波特率 通过引脚 RXD 串行移入格式化数据至输入移位寄 存器,待整帧接收完毕后进行反格式化处理,然 后并行送入接收 SBUF,并形成中断请求 RI,通 知CPU读取传入的数据。
(2)发送:当CPU向串行口的发送 SBUF写入所需 发送的数据后,串行口自动按软件设定格式将待 传送的数据装成标准格式帧,然后以软件规定的 波特率借助于 SBUF的移位功能通过 TXD逐位移 出。待整帧全部移出后,形成中断请求 TI,通知 CPU准备下一帧数据的发送工作。
第8章 MCS-51单片机的 串行口
本章要点: ?串行通信的分类、波特率及其制式 ?MCS-51 单片机串行口发送和接收数据过程 ?MCS-51 单片机串行口的工作寄存器各位含义 ?MCS-51 单片机串行口的工作方式 本章难点:
?串行通信的接口标准 ?MCS-51单片机串行口工作方式2、3的应用
8.1串行通信基础