第7章51单片机串行口

合集下载

串行通信

串行通信

3、串行通信工作方式 、
单工 A 发 A 发 收 B 收 广播电台 收音机
半双工
B 收 发
对讲机
全双工
A 发 收
B 收 发
电话机
4、波特率 、
波特率是指每秒钟传送信号的数量,单位为波特(Baud)。 波特率是指每秒钟传送信号的数量,单位为波特(Baud) 是指每秒钟传送信号的数量 波特 例:异步串行通信的数据传送的速率是120字符/秒,而每个字符规 异步串行通信的数据传送的速率是120字符/ 120字符 定包含10位( 1个起始位、8个数据位、1个停止位)数字,则传输 定包含10位 个起始位、 个数据位、 个停止位)数字, 10 波特率为: 波特率为: 120字符/秒× 10位/字符=1200位/秒= 1200bps 10位 字符=1200 =1200位 120字符/ 字符
(P3.1)
去申请中断
1、SBUF:串行发送 / 接收数据缓冲器 99H 、 : 发送 接收 2、SCON:串行口控制寄存器 、 :
SM0 SM1 SM2 REN TB8
98H
RB8 TI RI
3、PCON:特殊功能寄存器 :
SMOD
87H
4、IE:中断允许寄存器 、 :
EA ES
A8H
ET1 EX1 ET0 EX0
如何发送和接收数据 可中断、 可中断、可查询
MCS-51串行口的结构如下图所示: SBUF (发) A 累 加 器 波 特 率 发 生 器
T1
(门)移位寄存器 门 移位寄存器 发送控制器 TI
引脚 TxD
(P3.1)
CPU CPU 内 部
≥1
接收控制器 RI SBUF (收) 引脚 移位寄存器 RxD

单片机习题答案

单片机习题答案

单片机-习题答案第七章MCS-51的串行口1.串行数据传送的主要优点和用途是什么?答:串行数据传送的主要优点是硬件接口简单,接口端口少(2个)。

主要用于多个单片机系统之间的数据通信。

2.简述串行口接收和发送数据的过程。

答:以方式一为例。

发送:数据位由TXT端输出,发送1帧信息为10为,当CPU执行1条数据写发送缓冲器SBUF的指令,就启动发送。

发送开始时,内部发送控制信号/SEND变为有效,将起始位想TXD输出,此后,每经过1个TX时钟周期,便产生1个移位脉冲,并由TXD输出1个数据位。

8位数据位全部完毕后,置1中断标志位TI,然后/SEND信号失效。

接收:当检测到起始位的负跳变时,则开始接收。

接受时,定时控制信号有2种,一种是位检测器采样脉冲,它的频率是RX时钟的16倍。

也就是在1位数据期间,有16个采样脉冲,以波特率的16倍的速率采样RXD引脚状态,当采样到RXD端从1到0的跳变时就启动检测器,接收的值是3次连续采样,取其中2次相同的值,以确认是否是真正的起始位的开始,这样能较好地消除干扰引起的影响,以保证可靠无误的开始接受数据。

3.帧格式为1个起始位,8个数据位和1个停止位的异步串行通信方式是方式(1)。

4.串行口有几种工作方式?有几种帧格式?各种工作方式的波特率如何确定?答:串行口有3种工作方式:方式0、方式1、方式2、方式3;有3种帧格式,方式2和3具有相同的帧格式;方式0的发送和接收都以fosc/12为固定波特率,方式1的波特率=2SMOD/32×定时器T1的溢出率方式2的波特率=2SMOD/64×fosc方式3的波特率=2SMOD/32×定时器T1的溢出率5.假定串行口串行发送的字符格式为1个起始位,8个数据位,1个奇校验位,1个停止位,请画出传送字符“A”的帧格式。

起始位01000000校验位停止位6.判断下列说法是否正确:(1)串行口通信的第9数据位的功能可由用户定义。

《单片机原理及应用教程》第7章:单片机的串行通信及接口

《单片机原理及应用教程》第7章:单片机的串行通信及接口
8051单片机通过引脚RXD和TXD进行串行通信。其串行口结构包括控制寄存器SCON和PCON,分别用于配置工作方式和波特率。串行通信可选工作方式有四种:方式0为同步移位方式,方式1、方式2和方式3为异步收发方式,不同方式下帧格式和时序有所不同。波特率是数据传送速率,可通过设置定时器T1和SMOD位来调整。在方式0下,波特率固定为fosc/12;方3的波特率则通过T1溢出率和SMOD位共同决定。此外,文档还提供了波特率设计的实例和初始化程序,帮助读者更好地理解和应用8051单片机的串行通信功能。

第7章串行口

第7章串行口
串行口在中断方式工作时,要进行中断设置(编程 IE、IP寄存器)。
一、 89C51串行口 1、结 构
图7-7 串行口内部结构示意简图
☞ 2、串行口控制字及控制寄存器
串行口控制寄存器SCON(98H)
• ①SM0和SM1(SCON.7,SCON.6)——串行
口工作方式选择位。两个选择位对应4种通信方式,
如表7-1所示。其中,fosc是振荡频率。
3、串行通信工作方式
2 SMOD f osc 16 / 2 初值 串行方式1、方式3波特率≌ 32 12


4、波特率设计
• 定时器T1用作波特率发生器时,通常选用定时器模 式2(自动重装初值定时器)比较实用。每过“28-X” 个机器周期,定时器T1就会产生一次溢出。
• T1溢出速率为 T1溢出速率≌(fosc/12)/(28-X)
移位时钟来源不同,因此,各种方式的波特率计算公式也
不同。
4、波特率设计
• (1)方式0的波特率 由图7-14可见,方式0时,发送或接收一位数据的移位 时钟脉冲由S6(即第6个状态周期,第12个节拍)给出, 即每个机器周期产生一个移位时钟,发送或接收一位数据。
因此,波特率固定为振荡频率的1/12,并不受PCON寄存
TxD输出移位时钟,频率=fosc1/12;
每接收 8位数据RI就自动置1;
需要用软件清零 RI。
☞经常配合“串入并出”“并入串出”移位 寄存器一起使用扩展接口
☞方式0工作时,多用查询方式编程: 发送:MOV SBUF,A 接收:JNB RI,$ JNB TI,$ CLR RI CLR TI MOV A, SBUF ☞复位时,SCON 已经被清零,缺省值: 方式0。 ☞接收前,务必先置位 REN=1 允许接收数据。

binbin详解第7章-串行输入输出接口电路

binbin详解第7章-串行输入输出接口电路
验位可以是“ 或 验位可以是“0”或“1”,使所发送的每个字符中(包括校验位)“1”的个数为 ,使所发送的每个字符中(包括校验位) 的个数为 奇数(称为奇校验)或偶数(称为偶校验)。 奇数(称为奇校验)或偶数(称为偶校验) 奇校验 偶校验 奇偶校验法是对一个字符校验一次,通常只用于异步通信中。 奇偶校验法是对一个字符校验一次,通常只用于异步通信中。奇偶校验 位的产生和检验,可用软件或硬件的方法实现。 位的产生和检验,可用软件或硬件的方法实现。
5. 信号的调制和解调
利用电话信道(频带宽度通常为 利用电话信道(频带宽度通常为300~3400Hz)进行远距离传输,为完 ~ )进行远距离传输, 成传输数字信号,通常把数字信号的“ 或 成传输数字信号,通常把数字信号的“0”或“1”转换成较高的不同频率的模拟 转换成较高的不同频率的模拟 信号,而在接收端再将该模拟信号转换成数字信号。前一种转换称为调制, 调制 信号,而在接收端再将该模拟信号转换成数字信号。前一种转换称为调制,后 一种转换称为解调。完成调制、解调功能的设备叫做调制解调器(Modem) 一种转换称为解调。完成调制、解调功能的设备叫做调制解调器(Modem)。 解调 调制解调器
波特率与字符的传送速率不同: 波特率与字符的传送速率不同:
波特率是每秒钟传送的二进制位数,传送率是每秒钟传送的字符个数, 波特率是每秒钟传送的二进制位数,传送率是每秒钟传送的字符个数,二 者之间存在如下关系: 者之间存在如下关系:
波特率=位 字符 字符/秒 位 秒 字符× 波特率 位/字符×字符 秒=位/秒
串行通信按通信的格式分为:异步通信和同步通信。 串行通信按通信的格式分为:异步通信和同步通信。
通信协议:通信的双方约定,何时开始发送, 通信协议:通信的双方约定,何时开始发送,何时发送完毕以及双方的 联络方式、正确与否等。 联络方式、正确与否等。

周国运单片机原理及应用(C语言版)7

周国运单片机原理及应用(C语言版)7

VCC 时钟禁止 D C 并 B 入 A 串入 QH串出
并入/串出
7.3.2 串行口方式1
方式1真正用于串行发送或接收。TXD与RXD 分别用于发送、接收数据。 帧格式:1位起始位、8位数据位(低位在前)、 1位停止位,共10位。 在接收时,停止位进入SCON的RB8 此方式的波特率可调,由T1控制。 SCON=0101 0000b=0x50
方式1发送
只要写SBUF就启动发送
方式1接收 1)接收条件:SCON中的REN置1 2)接收过程: REN置1后,串行口对接收引脚 RXD检测,当RXD由高变低时开始移位接收;接收 完后将停止位装入RB8中。 3)接收的数据有效的条件: a、RI=0; b、SM2=0,或者SM2=1并且RB8=1 满足以上2条,则将8位数据装入SBUF,且RI置1。 有以下情况之一则数据无效: a) RI=1; b) SM2=1并且RB8=0 注意:除了方式2、3的多机通信之外,SM2应清0
GND
图7-1 并行通信示意图
图7-2 串行通信示意图
两种通信特点: 并行通信连线多,速度快,适合近距离通信; 图7-1 并行通信示意图 串行通信连线少,速度慢,适合远距离通信。
7.1.2 异步通信和同步通信
1.异步通信
异步通信中,传送的数据可以是一个字符代码或 一个字节数据,数据以帧的形式一帧一帧传送。
+5V
SH/LD
接收电路
7.3.1 串行口方式0
串入/并出
串 A 入 B QA QB QC QD
GND
74LS164 1 14 2 13 3 12 4 11 5 10 6 9 7 8
SH/LD CLK E 并 F 入 G H 串出 Q
GND

单片机第7章89C51串行口和串行通信PPT课件

单片机第7章89C51串行口和串行通信PPT课件

4
7.1 串行通信的概念
• 在实际工作中,计算机的CPU与外部设备之间常常要进 行信息交换,一台计算机与其他计算机之间也往往要交 换信息,所有这些信息交换均可称为通信。
• 通信方式有两种,即并行通信和串行通信。
• 通常根据信息传送的距离决定采用哪种通信方式。
• 例如,在IBM-PC机与外部设备(如打印机等)通信时, 如果距离小于30m,可采用并行通信方式;当距离大于 30m时,则要采用串行通信方式。89C51单片机具有并 行和串行二种基本通信方式。
字 同 符 步 1 字 同 符 步 2 数 据 块 ( 若 干 字 节 )校 符 验 1 校 符 验 2
起 始
结 束
➢ 在这种通信方式中,数据块内的各位数据之间没有间 隔,传输效率高;
➢ 发送、接收双方必须保持同步(使用同一时钟信号), 且数据块长度越大,对同步要求就越高。
➢ 同步通信设备复杂,成本高,一般只用在高速数字通 信系统中。
• 在同步传送时,要求用时钟来实现发送端与接收端之间的同步。为了保 证接收正确无误,发送方除了传送数据外,还要同时传送时钟信号。
• 同步传送可以提高传输速率(达56kb/s或更高),但硬件比较复杂。
返回
28.09.2020
14
2、异步通信
• 起始位(0)信号只占用一位,用来通知接收设备一个待接收的字符开始到达。线路上在不 传送字符时应保持为1。接收端不断检测线路的状态,若连续为1以后又测到一个0,就知道 发来一个新字符, 应马上准备接收。字符的起始位还被用作同步接收端的时钟,以保证以 后的接收能正确进行。
28.09.2020
1
第七章 89C51串行口及串行通信技术
• 串行通信只用一位数据线传送数据的位信号,即使加上几 条通信联络控制线,也用不了很多电缆线。因此,串行通 信适合远距离数据传送,如大型主机与其远程终端之间、 处于两地的计算机之间采用串行通信就非常经济。当然, 串行通信要求有转换数据格式、时间控制等逻辑电路,这 些电路目前已被集成在大规模集成电路中(称为可编程串 行通信控制器),使用很方便。

nj单片机原理及应用(C语言版)第7章

nj单片机原理及应用(C语言版)第7章

单片机原理及应用(C语言版)第7章MCS-51单片机串行口主编:周国运中国水利水电出版社本章要点本章主要讲述MCS-51单片机串行口的结构、工作原理以及应用。

主要内容包括串行通信基本知识、MCS-51单片机串行口结构、串行口工作方式以及单片机与PC机通信的接口电路。

7.1 串行通信基本知识主要内容7.1.1 数据通信7.1.2 异步通信和同步通信7.1.3 波特率7.1.4 通信方向7.1.5 串行通信接口种类7.1.1 数据通信计算机与外界的信息交换称为通信。

基本的通信方法有并行通信和串行通信两种。

1.并行通信单位信息(通常指一个字节)的各位数据同时传送的通信方法称为并行通信。

优点:传送速度快;缺点:数据有多少位,就需要多少根传送线。

适合近距离通信7.1.1 数据通信2.串行通信单位信息的各位数据被分时一位一位依次顺序传送的通信方式称为串行通信。

优点:只需一对传输线,大大降低了传送成本,特别适用于远距离通信;缺点:传送速度较低。

适合远距离通信1.异步通信异步通信中,传送的数据可以是一个字符代码或一个字节数据,数据以帧的形式一帧一帧传送。

7.1.2异步通信和同步通信图7-3 异步通信的一帧数据格式1、异步通信起始位(0):信号只占用一位,用来通知接收设备一个待接收的字符开始到达。

线路上在不传送字符时应保持为1。

接收端不断检测线路的状态,若连续为1以后又测到一个0,就知道发来一个新字符,应马上准备接收。

数据位:紧接着起始位后面,它可以是5位(D0--D4)、6位、7位或8位(D0--D7)。

1、异步通信奇偶校验:只占一位,但也可以规定不使用奇偶校验位,这一位就可省去。

也可用这一位(1/0)来确定这一帧中的字符所代表信息的性质(地址/数据等)。

停止位:用来表征字符的结束,它一定是高电位(逻辑1)。

停止位可以是1位、1.5位或2位。

接收端收到停止位后,知道上一字符已传送完毕,同时,也为接收下一个字符做好准备--只要再接收到0,就是新的字符的起始位。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1)当74LS165的S/ L 端由高到低跳变时,并行输入端的数
据被置入寄存器;
2)当S/ L= 1,且时钟禁止端(第15脚)为低电平时,
在移位脉冲作用下(TXD(P3.1)输出串行移位脉冲), 数据由右向左方向移动,以串行方式进入51串行口的接收缓 冲器中。
36
图7-8 扩展74LS165作为并行输入口
使用TI标志完成发送--中断方式
TI (SCON.1):发送完成标志。 当完成一帧数据的发送后,TI=1。 ①如果系统中断是开放的,则TI=1会自动引发中断。 用户通过串口中断服务程序向SBUF输送下一个数据:
MOV SBUF, A ——— 中断方式发送数据;
使用TI标志完成发送—查询方式
②使用查询的方式对TI进行检测, 如果TI=1则执行: MOV SBUF , A 否则等待
如何使用RI,TI标志完成接收、发送?
CPU通过RI,TI标志了解SBUF的发送、接收的状态, 以便决定后续操作。
使用RI标志完成接收--中断方式
RI(SCON.0):接收完成标志。
1)从RXD接收完一个完整的数据帧
2)并将数据从移位寄存器送到SBUF时
RI=1。
①如果串口中断是开放的,则RI=1时会自动引发中断。
发送方
接收方
局部时钟1
局部时钟2
异步串行通信:发/收双方采用本地局部时钟
异步串行通讯
数据帧: 字符帧 “起始位”+“数据位”+(可选择的奇/偶校验位)+“停止位”
异步通讯双方必须约定: 使用相同的波特率和字符帧格式。 双方可以使用独立的时钟。
起始位
校验位 停止位 空闲位
0 D0 D1 D2 D3 D4 D5 D6 D7
输入。 当扩展多个8位输入口时,相邻两芯片的首尾(QH与SIN)
相连。
38
7.3.2 串行口模式1
异步串行方式 帧格式: 10位 1个起始位+8个数据位+1个停止位
可变波特率: 定时器T1的溢出率/16 定时器T1的溢出率/32
起始位
8位数据
停止位
D0 D1 D2 D3 D4 D5 D6 D7
34
RXD为数据输入端,TXD为移位脉冲信号输出端,频率为fosc/12 接收器以fosc/12的固定波特率采样RXD引脚的数据信息,当接收完8位数据 时,中断标志RI置1,表示一帧数据接收完毕。
图7-7 方式0接收时序
(2)方式0接收应用举例 图7-8为串行口外接两片8位并行输入串行输出的寄存器 74LS165扩展两个8位并行输入口的电路。
内部结构如图7-1所示。 ➢ 接收、发送缓冲器SBUF:
物理上独立,可同时发送、接收数据。 发送缓冲器只能写入不能读出 接收缓冲器只能读出不能写入 两个缓冲器共用一个特殊功能寄存器字节地址(99H)。 ➢ 控制寄存器: 特殊功能寄存器SCON和PCON。
13
图7-1 51串行口的内部结构图
14
51 TXD
串行通信:
使用一条数据线。 实现远距离、低成本的数据传输 缺点:传输速度慢.
串行通信与并行通信
(a)
(b)
通信的两种基本方式 (a) 串行通信;(b) 并行通信
串行通信基本特点
串行通信: ●每个时间单位仅传送一位信息; ●每个字符(字节)的各位依次传送。
串行通信的传输速率
波特率: 每秒钟传输二进制位的个数。 单位: bps(bits per second) 位/秒
RXD
发送数据: CPU写SBUF: MOV SBUF, A
接收数据 : CPU读SBUF: MOV A, SBUF
串行口控制寄存器SCON 地址:98H
SCON SM0 SM1 SM2 REN TB8 RB8 TI RI
SM0 SM1: 串行口工作模式选择位。
SM0 SM1 00 01 10
用户通过串口中断服务程序将SBUF中的数据取出送累加器A。
MOV A,SBUF
—— 中断方式接收数据;
使用RI标志完成接收-查询方式
②使用查询的方式对RI进行检测, 如果RI=1则执行: MOV A,SBUF —— 查询方式接收数据 否则等待 。
使用查询RI标志方式接收N个数据
SETB SCON .REN
1
异步串行通信字符帧的格式
串行通信-同步串行通信
特点: (1) 连续的数据块传输,字符间无间隙。 (2) 通信双方使用统一的时钟。
要求: 通信双方帧格式、波特率、时钟完全一致
发送方
接收方
时钟
同步串行通信:发/收双方采用统一时钟
同步串行通信帧格式
同步字段 字符1 字符2 ...... 字符N 校验字段
字符流传输帧格式
同步字段 b0 b1 b2 b3 b4 b5 ....
bn CRC 校验
二进制位流传输帧格式
同步串行通信
发送方在时钟信号的下降沿发送数据位
时钟
发送数据 (61H)
接收数据 (61H)

0
1
1
0
00010110
0
0
0
1
接收方在时钟信号的上升沿接收数据位
7.2 51单片机串行口的结构
REN: 允许接收位,REN=1时允许接收.由软件置位或清零。
返回前一次
SCON SM0 SM1 SM2 REN TB8 RB8 TI RI
SM2 :
方式2或3时的多机通信使能位.(模式0、1时SM2不用,设为0) 模式2、3时: 对接收方起作用 SM2=0:无论RB8如何,RI都能被激活(RI=1)。 SM2=1:接收方能否真正接收数据,取决于收到的第9位RB8 SM2=1;RB8=0时, RI不会被激活; SM2=1;RB8=1时,RI被激活=1,并引发中断。 SM2=1 用于多机通信:由发送方来控制接收方的数据接收。
串行口模式1时数据帧格式及接收采样示意图
起始位
8位数据
停止位
D0 D1 D2 D3 D4 D5 D6 D7
检测 脉冲
7.8.9
当连续8次采集到低电 在每个数据期间的第7,8,9个检测脉冲对RXD采样
平时,确认起始位到来
并采用“以三取二”来确定采集的数据
检测脉冲频率=16X波特率:对RXD线的数据以16倍速度采样 好处: (1)防止干扰 (2)在数据的中间时刻采样
同步串行通信和异步串行通信
串行通信的时钟信号: 串行通信需要一个时钟信号来作为数据的定时参考。 发送器:用时钟来决定何时发送每一位数据 接收器:用时钟来决定何时读取每一位数据。 基于时钟信号,串行通信分为: 异步串行通信和同步串行通信
串行通信--异步串行通信
特点: (1)数据是以字符或字节为单位组成字符帧传送。 字符间允许间断。 (2)发送与接收时钟相互独立。
模式 0 1 2
功能 同步移位寄存器模式 8位异步通信UART 9位异步通信UART
11
3
9位异步通信UART
波特率
Fosc/12 可变
Fosc/64或 /32 可变
SCON SM0 SM1 SM2 REN TB8 RB8 TI RI
RI :完成一帧数据接收标志 初始应软件清零,一帧接收完成后RI=1,并申请中断 (如果中断开放,则引发中断);
MOV SBUF,A
SCON SM0 SM1 SM2 REN TB8 RB8 TI RI
模式2、3的接收过程
REN=1, RI=0时数据可以接收。 模式2、3时,RB8是接收到的第9位:1/0
SCON SM0 SM1 SM2 REN TB8 RB8 TI RI
第7章 51单片机的串行口
1
目录
7.1 概述 7.2 51单片机的串行接口结构
7.2.1 数据缓冲寄存器 SBUF 7.2.2 串行口控制寄存器SCON 7.3 串行口工作模式 7.4 波特率与定时器初值的计算 7.5 串行口的应用
7.1 并行通信与串行通信
并行通信:
需要多条数据线 适于近距离高速通信
7.3.3 串行口模式2、3
特点: 模式2、3都是11位传输格式 1个起始位+9个数据位+1个停止位
起始位
8+1位数据
停止位
D0 D1 D2 D3 D4 D5 D6 D7 D8
模式2、3 帧格式
第9 位
7.3.3 串行口模式2、3
区别: 波特率: 模式2:固定为fosc/64或fosc/32。 模式3:由定时器T1/T2的溢出波特率来确定。 定时器T1的溢出率/16 定时器T1的溢出率/32 (由PCON中的SMOD位来确定)
TI :完成一帧数据发送标志 初始应软件清零,一帧发送完成后TI=1,同时申请中断 (如果中断开放,则引发中断);
返回前一次
SCON SM0 SM1 SM2 REN TB8 RB8 TI RI
RB8: 在模式2、3时, 本机作为接收方时,接收到的第9位数据;
TB8: 在模式2、3时,本机作为发送方时将要发送的第9位数据;
37
在图7-8中: TXD(P3.1)作为移位脉冲输出与所有75LS165的移位 脉冲输入端CP相连; RXD(P3.0)作为串行数据输入端与74LS165的串行输 出端QH相连;
P1.0与S/ L 相连,用来控制74LS165的串行移位或并行
输入; 74LS165的时钟禁止端(第15脚)接地,表示允许时钟
使用查询TI标志方式发送N个数据
CLR SCON .TI
将发送缓冲区的数据送累加器A 修改数据区指针
MOV SBUF,A
TI=1? NO
YES
N个数据发送完?
YES
NO
发送数据的程序框图
7.3 串行口的4种工作方式 4种工作方式由SCON中SM0、SM1位定义, 7.3.1 方式0 方式0为同步移位寄存器输入/输出方式。
相关文档
最新文档