任务一 双机通信(1)(课件)-《单片机技术及应用》(高教版第四版) 同步精品课堂
2025-08-28
|
25页
|
55人阅读
|
0人下载
精品
内容正文:
任务一 双机通信(1)
单片机技术及应用
同步精品课堂
高等教育出版社第 4 版
1
理解并行通信和串行通信的原理与特点
掌握波特率的概念及在串行通信中的重要性
熟悉 51 系列单片机串行口的内部结构和控制寄存器
了解 51 系列单片机串行口的四种工作方式
并行通信和串行通信的区别
51系列单片机串行口的工作方式和波特率计算
串行口工作方式的原理和应用
双机通信的实现
在当今的电子设备中,至关重要。我们如何让单片机之间进行有效的远程通信呢?
下面我们将学习利用单片机的串行通信接口完成双机通信的技术。
任务一 双机通信 - 知识准备
在甲乙单片机之间完成通信,用甲机的按钮控制乙机的LED1亮灭。(按下按钮时LED点亮)。
任务描述
并行通信
并行通信是指构成信息的各位二进制字符同时并行传送的通信方法。其优点是传送速度快,缺点是数据有多少位,就需要多少根传输线,仅适合于近距离通信传输。
任务一 双机通信 - 知识准备
串行通信
串行通信是指构成信息的各位二进制字符按顺序逐位传送的通信方式。
其优点是只需一对传输线(如电话线),占用硬件资源少,从而降低了传输成本,特别适用于远距离通信,
缺点是传送速度较慢。
任务一 双机通信 - 知识准备
并行通信和串行通信
以下为分别为并行通信和串行通信的示意图
并行通信示意图
串行通信示意图
任务一 双机通信 - 知识准备
波特率
在串行通信中,发送设备和接收设备之间发送数据的速度和接收数据的速度必须相同,这样才能保证被传送数据的成功传送。
采用二进制时,可以用波特率表示传输数据的速率,即每秒传输二进制数据的位数。
波特率是串行通信的重要指标,通信双方必须具有相同的波特率,否则无法成功完成串行数据通信传输。
任务一 双机通信 - 知识准备
51 系列单片机串行口的内部结构
51 系列单片机串行口的内部结构框图如图所示。
任务一 双机通信 - 知识准备
51 系列单片机串行口的内部结构
它有两个独立的接收、发送缓冲器 SBUF,可同时发送和接收数据,发送缓冲器只能写入不能读出,接收缓冲器只能读出不能写入,两个缓冲器共用一个地址。
51 单片机串行口有两个控制寄存器:串行口控制寄存器 SCON 和特殊功能寄存器 PCON。
任务一 双机通信 - 知识准备
串行口控制寄存器 SCON
① 串行口控制寄存器 SCON 用于设置串行口的工作方式、监视串行口工作状态、控制发送与接收的状态等。其格式见表。
D7 D6 D5 D4 D3 D2 D1 D0
SMO SM1 SM2 REN TB8 RB8 TI RI
串行口工作方式选择位 多机通信控制位 允许接收位 发送数据的第 9 位 接收数据的第 9 位 发送中断标志位 接收中断标志位
任务一 双机通信 - 知识准备
串行口工作方式选择
SMO 和 SM1 位为串行口工作方式选择位,可构成 4 种串行口工作方式,见下表。
SMO SM1 工作方式 功能说明 波特率
0 0 方式 0 同步移位寄存器方式 (用于扩展 I/O 口) f/12
0 1 方式 1 10 位异步收发 可变
1 0 方式 2 11 位异步收发 f/64 或 f/32
1 1 方式 3 11 位异步收发 可变
任务一 双机通信 - 知识准备
特殊功能寄存器 PCON
② 特殊功能寄存器 PCON 的格式见下表,PCON 的 D7 位与串行口通信波特率有关。
D7 D6 D5 D4 D3 D2 D1 D0
SMOD —— —— —— —— —— PD IDL
波特率选择位
SMOD:波特率选择位
任务一 双机通信 - 知识准备
串行口的工作方式 - 方式 0
在方式 0 下,串行口是作为同步移位寄存器使用的,其波特率固定为单片机振荡频率 (f) 的 1/12,串行传送数据 8 位为一帧。
使用方式 0 发送数据时,外部需要扩展一片 (或几片) 串入并出的移位寄存器
任务一 双机通信 - 知识准备
串行口的工作方式 - 方式 0
在方式 0 时,SCON 中的 TB8 、RB8 位没用,发送或接收完 8 位数据由硬件置 1TI 或 RI 中断标志位,CPU 响应 TI 或 RI 中断。
TI 或 RI 中断标志位必须由用户软件清零,可采用如下指令清零 TI 或 RI。——//TI 位清零 //RI 位清零
方式 0 时,SM2 位 (多机通信控制位) 必须为 0。
任务一 双机通信 - 知识准备
串行口的工作方式 - 方式 1
方式1:工作方式1的波特率是可变的,由定时器T1的计数溢出率决定。
SMO、SM1 为 01 时,串行口工作在方式 1,即 10 位异步通信方式。方式 1 用于数据的串行发送和接收,TXD (P3.1) 引脚和 RXD (P3.0) 引脚分别用于发送和接收数据。方式 1 收发一帧的数据为 10 位,即发送或接收一帧信息中,除 8 位数据移位外,还包含一个起始位 (0) 和一个停止位 (1)。
起始位 D0 D1 D2 D3 D4 D5 D6 D7 停止位
任务一 双机通信 - 知识准备
串行口的工作方式 - 方式 1 发送与接收
方式 1 发送数据时,数据位由 TXD 端输出,发送一帧信息为 10 位,1 位起始位 0,8 位数据位 (先低位) 和 1 位停止位 1,当 CPU 执行一条数据写发送缓冲器 SBUF 的指令,就启动发送。发送开始时,内部发送控制信号变为有效。将起始位向 TXD 输出,此后,每经过一个 TX 时钟周期,便产生一个移位脉冲,并由 TXD 输出一个数据位。8 位数据位全部发送完毕后,中断标志位 TI 置 1。
方式 1 接收数据时 (REN = 1,SM0、SM1 = 01),数据从 RXD (P3.0) 引脚输入。当检测到起始位的负跳变时,则开始接收。
任务一 双机通信 - 知识准备
串行口的工作方式 - 方式 2
方式 2 的帧格式如下:
起始位 D0 D1 D2 D3 D4 D5 D6 D7 D8 停止位
方式 2 的波特率由下式确定:
在发送数据之前,先根据通信协议由软件设置 TB8 (例如:双机通信时的奇偶校验位或多机通信的地址 / 数据的标志位)。然后将要发送的数据写入 SBUF,即可启动发送过程。串行口自动把 RB8 取出,并装入到第 9 位数据位的位置,再逐一发送出去。发送完毕,则把 TI 位置 1。
任务一 双机通信 - 知识准备
串行口的工作方式 - 方式 2 接收
串行口工作在方式 2 进行数据接收时,必须使 SCON 寄存器的 SMO 、SM1 两位为 10,且 REN = 1。接收时,数据由 RXD (P3.0) 端输入,接收 11 位信息。当位检测逻辑取样到 RXD 引脚到 0 的负跳变,并判断起始位有效后,便开始接收一帧信息。在接收完第 9 位数据后,需满足以下两个条件,才能将接收到的数据送入SBUF。
RI = 0,意味着接收缓冲器为空。
SM2 = 0 或接收到的第 9 位数据位 RB8 = 1 时。
当上述两个条件满足时,接收到的数据送入 SBUF (接收缓冲器),第 9 位数据送入 RB8,并置 1 中断标志位 RI。若不能满足这两个条件时,则接收的信息将被丢弃。
任务一 双机通信 - 知识准备
串行口的工作方式 - 方式 3
当 SM0 、SM1 两位为 11 时,串行口工作在方式 3。方式 3 为波特率可变的 11 位异步通信方式,除了波特率外,方式 3 和方式 2 相同。
方式 3的波特率由下式确定:
随堂检测1
并行通信和串行通信的优缺点分别是什么?
答案:并行通信优点是传送速度快,缺点是数据有多少位,就需要多少根传输线,仅适合于近距离通信传输。串行通信优点是只需一对传输线,占用硬件资源少,降低传输成本,适用于远距离通信,缺点是传送速度较慢。
51 系列单片机串行口的两个控制寄存器分别是什么,有什么作用?
答案:两个控制寄存器是串行口控制寄存器 SCON 和特殊功能寄存器 PCON。SCON 用于设置串行口的工作方式、监视串行口工作状态、控制发送与接收的状态等;PCON 的 D7 位与串行口通信波特率有关。
随堂检测2
串行口工作方式 0 适用于什么情况?
答案:串行口工作方式 0 常用于扩展外部并行 I/O 口,不适用于两个单片机之间的串行通信。
在串行通信中,波特率的作用是什么?
答案:波特率是串行通信的重要指标,表示每秒传输二进制数据的位数,通信双方必须具有相同的波特率,否则无法成功完成串行数据通信传输。
1
讨论如何根据实际需求选择合适的串行通信工作方式。分析在双机通信中,可能出现通信失败的原因及解决方法。
1. 并行通信和串行通信
任务一 双机通信(1)
2. 51 系列单片机串行口的内部结构
串行口控制寄存器 SCON
特殊功能寄存器 PCON
并行通信
串行通信
波特率
方式 0
方式 1
方式 2
方式 3
3. 串行口工作方式选择
感谢观看
25
$$
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。