单片机原理及应用 教学课件 ppt 作者 匡忠辉 第9章--串行通讯

上传人:E**** 文档编号:89497766 上传时间:2019-05-25 格式:PPT 页数:68 大小:469.50KB
返回 下载 相关 举报
单片机原理及应用 教学课件 ppt 作者 匡忠辉 第9章--串行通讯_第1页
第1页 / 共68页
单片机原理及应用 教学课件 ppt 作者 匡忠辉 第9章--串行通讯_第2页
第2页 / 共68页
单片机原理及应用 教学课件 ppt 作者 匡忠辉 第9章--串行通讯_第3页
第3页 / 共68页
单片机原理及应用 教学课件 ppt 作者 匡忠辉 第9章--串行通讯_第4页
第4页 / 共68页
单片机原理及应用 教学课件 ppt 作者 匡忠辉 第9章--串行通讯_第5页
第5页 / 共68页
点击查看更多>>
资源描述

《单片机原理及应用 教学课件 ppt 作者 匡忠辉 第9章--串行通讯》由会员分享,可在线阅读,更多相关《单片机原理及应用 教学课件 ppt 作者 匡忠辉 第9章--串行通讯(68页珍藏版)》请在金锄头文库上搜索。

1、第九章 单片机串行通讯设计,9.1 功能要求 9.2 任务分析 9.3 串行通讯技术 9.3.1 键盘工作特性 9.3.2 串行通讯基本概念 94 MCS_51单片机串行口 9.4.1 串行口结构 9.4.2 串行口控制寄存器 9.4.3 串行口的工作方式 95 单片机串行通讯设计 9.5.1 单片机与单片机之间串行通讯,9.1功能要求,一基本要求 实现单片机与单片机之间的串行通讯。 二发挥部分 实现单片机与PC机之间的串行通讯。,回目录,9.2 任务分析,要完成此任务,主要需解决如下四方面的问题: 串行通讯的工作原理; 单片机与单片机串行通讯接口电路和程序设计方法; PC机与单片机串行通讯接

2、口电路的设计方法; PC机与单片机串行通讯的程序设计方法。,回目录,9.3.1 串行通讯基础 在实际工作中,单片机与外部设备之间、单片机与单片机之间经常需要交换信息,所有这些信息的交换均称为通讯。通讯按数据传送的方式分为二种,即并行通讯和串行通讯。 并行通讯是指数据的各位同时进行传送(发送和接收)的通讯方式,接口电路如下页左图所示,数据传送如下页右图所示。由于各位同时传送,其突出优点为传送速度快,但其缺点为所需的数据线较多,数据有多少位,就需要多少根数据线,因此它一般适用于通讯距离较近的场合,如单片机和打印机之间的通讯等,但当通讯距离较远,将导致成本成倍增加,并且接收数据的误码率较高。,9.3

3、 串行通讯技术,回目录,并行通讯的特点 通讯软件控制简单(无需并串之间的转换),传输的速度快(数据各位同时传送),但传输线较多,长距离传送时成本高,且不利于接收方各位的同时接收,一般应用于短距离数据通讯 。,回目录,并行通讯接口电路简图,并行通讯数据传送示意图,串行通讯,串行通讯是指数据的各位依次进行传送(发送和接收)的通讯方式,接口电路如图94所示,TXD表示发送管脚,RXD表示接收管脚,数据传送如图所示,由于各位依次传送,通讯时占用同一根数据线,其突出优点为通讯所需的数据线少,但由于传送时需要进行并串之间的数据转换,因此带来了通讯速度慢、通讯控制程序复杂的缺点。但由于在远距离通讯时,能有效

4、的减少通讯电缆成本,所以在远距离通讯系统中得到广泛的运用,,串行通讯接口电路简图,串行通讯数据传送示意图,9.3.2 串行通讯基本概念 一、串行通讯的传输方式 串行通讯的传输方式一般有三种: 1)单工方式 只允许数据由一个方向传送。 2)半双工方式 即在同一条数据线上,在不同的时间段上实现双向通讯,由于只有一条数据线,对于某一具体时刻而言,数据只能单方向传送。 3)全双工方式 即在二条不同的数据线上,在相同的时间段上也能实现双向通讯,由于有二条数据线,发送和接收互不干扰,可以同时进行。,(a) 单工方式,(b) 半双工方式,(c)全双工方式,回目录,二、异步通讯的通讯协议和格式 起始位:为了实

5、现异步传输字符的同步,采用的办法是使数据线在空闲时保持高电平,在传送每个字符前先发送一位低电平0,称为起始位,以通知接收方准备接收数据。因此,传送的每一个字符都用起始位来进行收发双方的同步。 数据位:指传送的58位的数据,常见的为一个字节(8位)的数据,数据传送时低位在前,高位在后。 奇偶校验位:接收方为了检验数据的正确性,在数据发送完后,可以发送一位奇偶校验位,如在发送方将程序状态字PSW中的P标志作为校验位发送,在接收方接收到数据和校验位后,再用接收到的数据产生的P标志和接收到的校验位比较,如果相同,认为数据正确,如果不相同,表明接收的数据出错。 停止位:为了表示数据结束,并为下一次数据传

6、送的起始位作好准备,一般发送1或2位的高电平1作为停止位。,异步通讯的整体格式,三、异步通讯的数据传送过程 在数据传送开始前,数据线始终保持高电平不变(空闲位),接收方不断的检测数据线的高低电平状态。当发送方开始发送数据前,先发送起始位,将数据线拉低为低电平0。当接收方检测到低电平后,表示数据传送即将开始,作好数据接收准备,准备统计接收数据位数。发送方发送完起始位后,便发送数据的最低位D0,接收方按照事先约定的速率和节拍,同步地将数据D0移入移位寄存器。并将数据位数计数器加1。依据相同的原理继续发送和接收其它的数据位,当数据位发送到最高位D7时,由于数据位数计数器达到预先约定值,便将接收到的数

7、据组合为一个字节。接下来发送和接收校验位和停止位,为下一次数据传送作好准备。,回目录,四、波特率 波特率指数据的传送速率,表示每秒钟传送二进制数据的位数,它的单位为b/s,波特率表示了数据通讯的快慢。假设数据传送速率为120字符每秒,而每个字符包含10位(1位起始位、8位数据、1位停止位),这时传送的波特率为: 10b/字符120字符1200b/s 异步串行通讯的波特率一般设置在5019200b/s之间。,94 MCS_51单片机串行口 MCS_51系列单片机有一个可编程的全双工串行通讯口,它既可作为UART(通用异步收发器)使用,又可用作同步移位寄存器。使用该串行口可以实现单片机之间以及单片

8、机与PC机之间的单机或多机通讯。它通过引脚TXD(P3.1,串行数据发送引脚)发送数据,通过RXD(P3.0, 串行数据接收引脚)接收数据,其帧格式可以是8位、10位、11位,并能设置不同的波特率,给串行数据的传送带来很大的灵活性。,回目录,9.4.1 串行口结构,回目录,串行口内部结构简图,由上图可知,单片机串行通讯实际上是依据数字电路中移位寄存器的工作原理构成,它利用输出移位寄存器实现并串转换发送数据,利用输入移位寄存器实现串并转换接收数据,具体工作过程如下: 一. 数据发送 要发送的数据首先送到发送缓冲器SBUF中,该步骤可以通过写发送SBUF指令:MOV SBUF,A实现。同时发送SB

9、UF得到要发送的数据后,依据约定的通讯协议自动加入附加的控制信息,如起始位、停止位等,并将组合后的控制信息和数据自动装载到输出移位寄存器中,在移位时钟的作用下,将组合后的控制信息和数据依次逐位发送出去,发送完后,置发送完成标志TI为1 。,二.数据接收 先置允许接收标志REN(SCON.4)为1,允许接收器接收,同时检测到RXD引脚由高电平1跳变到低电平0时,输入移位寄存器依据约定的通讯协议在移位时钟的控制下依次移入接收到的数据(含控制信息和数据),一帧接收完后,自动装入接收SBUF中,在接收SBUF中自动去除控制信息,得到接收的数据,同时置位接收标志RI,向中断系统提出接收中断申请。单片机利

10、用中断系统或查询得知接收到数据后,执行读接收SBUF指令:MOV A,SBUF,将接收的数据读入累加器A中。 三.移位时钟的获取 由以上分析可知,串行通讯主要利用数字电路中移位寄存器的工作原理构成,而移位寄存器需要移位时钟来控制数据移位的速度,即波特率。由图98可知,串行通讯的移位时钟由单片机内部定时器T1产生,具体产生过程如下:T1溢出率经16分频后直接输出(SMOD=1)或再2分频(SMOD=0)作为移位时钟,因此串行通讯的波特率主要由T1的溢出率和SMOD值决定。,9.4.2 串行口控制寄存器 单片机的串行口是可编程的,结构图中的SMOD等电子开关的选择都需要通过将控制字写入预定的特殊功

11、能寄存器SCON(串行口控制寄存器)和PCON(电源控制寄存器)来实现的。下面分别对这二个寄存器进行介绍,以便为串行口的编程打下基础。,回目录,一. 串行口控制寄存器SCON SCON是串行口的主要设置寄存器,位于特殊功能寄存器SFR区的98H单元,可以按位寻址,其控制字格式如下图所示:,SCON各位的含义如下: SM0和SM1(SCON.7、SCON.6):串行口工作方式选择位。对应可选四种工作方式,如下表所示:,表串行口工作方式设置,SM2(SCON.5):多机通讯控制位 主要用于方式2和方式3(含9位数据)。如果设置接收机的SM21,则接收机允许多机通讯。多机通讯协议规定: 1当单片机工

12、作在方式2和方式3,并且SM2=1时,如果第9位数据为1,说明本帧为地址帧,如果第9位数据为0,说明本帧为数据帧。 2如果SM2=0,接收一帧数据后,不管第9位是1还是0,即不管是地址还是数据,都将接收的数据送SBUF中,并置接收标志RI为1,提出接收中断申请。 多机通讯过程如下: (1)当一片单片机(称为主机)与多片单片机(称为分机,每个分机预先定义一个地址,即机号)进行多机通讯时,先将所有的从机SM2置为1。 (2)当主机要和某分机(如1号机)通信时,先发送一个地址帧,即该从机的机号(如1号机),并使第9位(TB8)为1(表示地址)。,3由于所有从机的SM21,所以所有的从机都接收数据,并

13、且每接收一个数据,就判断该数据的第9位(RB8)是否为1,如果为1,表明该数据是地址,再判断该地址是否是本机地址,如果是,表明主机将要和本机通信,将本机的SM2设为0,作好接收数据准备;如果RB80,表明是数据,本机对该数据不予理睬。由以上分析可知,只有1号从机经地址比较后匹配,将SM2设置为0,作好接收数据准备,其它分机由于地址不匹配,SM2保持为1。此时主机和1号分机就建立了通讯联系。 4主机继续发送数据,并设置TB8为0(表明是数据),此时由于1号机的SM20,不管接收到的数据第9位是1还是0,都将数据接收下来送SBUF,而其它分机由于SM2=1,数据接收后还要判断接收到的数据第9位是1

14、还是0,由于第9位为0,对该数据不予理睬。所以只有主机和1号机之间进行通讯。,多机通讯过程,REN(SCON.4):允许接收控制位,相当于串行接收的控制开关,REN=1,允许接收,REN=0,禁止接收,所以,如果要使单片机能接收数据,必须在初始化时使REN=1。 TB8(SCON.3):发送数据的第9位,在方式2和方式3中,根据数据的需要由软件置1或清0,它可作为奇偶校验位,也可在多机通讯中作为发送地址帧或数据帧的标志位,如果TB81,表明该帧是地址,如果TB80,表明该帧是数据。在方式0和方式1中,该位未使用。 RB8(SCON.2):接收数据的第9位,在方式2和方式3中,接收的第9位数据放

15、RB8。 TI( SCON.1):发送中断标志,在一帧数据发送完后被自动置位。在方式0中串行发送到第8位数据结束或其它方式中发送到停止位时由硬件自动置1,它可由软件查询。该标志同时向中断系统提出申请,表明数据已经发送完,单片机响应该中断后,该标志不会自动清0,必须由软件清0,以免再次中断。,SCON各位介绍,RI( SCON.0):接收中断标志 在接收到一帧数据后被自动置位。在方式0中串行接收到第8位数据结束或其它方式中接收到停止位时由硬件自动置1,它可由软件查询。该标志同时向中断系统提出申请,表明一帧数据已经成功接收完毕,要求CPU取走该数据,单片机响应该中断,并取走该数据后,该标志不会自动

16、清0,必须由软件清0,以免再次中断。 在中断系统中,发送标志TI和接收标志RI共用同一个中断源,CPU事先并不知产生的串行口中断是由发送标志TI还是接收标志RI引起,所以在全双工通讯中,必须由软件来判别。 复位时,SCON所有位清0。,回目录,二. PCON(电源控制寄存器) PCON中只有D7位SMOD与串行通讯有关,由结构图可知,在方式1、方式2、方式中决定移位时钟是否需要增倍,当SMOD=1,波特率提高一倍。但必须注意,PCON不能按位单独对SMOD进行设置,只能以字节寻址方式对PCON寄存器进行设置。,电源控制寄存器PCON,9.4.3 串行口的工作方式 一、方式0 方式0为移位寄存器工作方式,主要用于扩展并行输入或输出口,解决单片机I/O端口不够的问题。数据由RXD引脚输入或输出,同步移位时钟由TXD引脚输出。发送和接收均为8位数据,低位在先,高位在后。波特率较高,固定为fosc/12。该方式不适用于二个8051之间的直接数据通讯,但可以通过外接移位寄存器来实现单片机的I/0口扩展。,1方式0输出(发送),

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号