第7章 80C51单片机的串行口通信

上传人:我*** 文档编号:137677355 上传时间:2020-07-11 格式:PPT 页数:122 大小:2.74MB
返回 下载 相关 举报
第7章 80C51单片机的串行口通信_第1页
第1页 / 共122页
第7章 80C51单片机的串行口通信_第2页
第2页 / 共122页
第7章 80C51单片机的串行口通信_第3页
第3页 / 共122页
第7章 80C51单片机的串行口通信_第4页
第4页 / 共122页
第7章 80C51单片机的串行口通信_第5页
第5页 / 共122页
点击查看更多>>
资源描述

《第7章 80C51单片机的串行口通信》由会员分享,可在线阅读,更多相关《第7章 80C51单片机的串行口通信(122页珍藏版)》请在金锄头文库上搜索。

1、第7章:80C51系列单片机的串行通信,7.1 串行通信基础知识 7.1.1 并行通信与串行通信 7.1.2 串行通信的通信方式 7.1.3 串行通信的数据传送方向 7.1.4 通信中的误码问题 7.2 80C51系列单片机的串行接口 7.2.1 串行接口的结构 7.2.2 串行接口的控制寄存器 7.2.3 串口通信的波特率设计 7.3 串行口工作模式 7.3.1 模式0 7.3.2 模式1 7.3.3 模式2 7.3.4 模式3,目录,80C51系列单片机的串行通信,7.4 串行通信应用举例 7.4.1 串行口模式0的应用 7.4.2 串行口模式1的应用 7.4.3 串行口模式2的应用 7.

2、4.4 串行口模式3的应用 7.5 串行通信实用技术 7.5.1 双机串行通信的硬件连接 7.5.2 80C51单片机的多机通信 7.5.3 双机串行通信软件编程 7.5.4 PC机与单片机的点对点串行通信接口设计 7.5.5 PC机与多个单片机的串行通信接口设计,目录,80C51系列单片机的串行通信,本节内容,7.1.1 并行通信与串行通信 7.1.2 串行通信的通信方式 7.1.3 串行通信的数据传送方向 7.1.4 通信中的误码问题,7.1串行通信基础知识,5,7.1串行通信基础知识,计算机与外部设备或计算机与计算机之间的信息交换称为通信。 通信的基本方式:并行通信和串行通信。 在现代单

3、片机测控系统中信息交换多采用串行通信方式。,7.1串行通信基础知识,6,7.1.1并行通信与串行通信 一、并行通信 并行通信:将数据字节的各位用多条数据线同时进行传送。,(a)并行通信,7.1串行通信基础知识,7,通信控制线,并行通信的缺点:每一位数据都需要一条传输线,距离较远、位数又多时导致了通信线路复杂且成本高。 并行通信的优点:控制简单、传送速度快。 并行通信一般适合于短距离的数据传输。,8,二、串行通信 串行通信:所传送的数据按顺序一位接一位地进行传送。 因为一次只能传送一位,所以对于一个字节的数据,至少要分8位才能传送完毕。,7.1串行通信基础知识,(b)串行通信,9,7.1串行通信

4、基础知识,串行通信的优点:需要的数据传输线少,通信线路简单、成本低,适用于远距离通信,且可以利用电话网等现成的设备。 串行通信的缺点:是传送速度较慢,数据的传送控制比并行通信复杂。 假设并行传送n位数据所需的时间为t,那么串行传送的时间至少为nt,而实际上总是大于nt。,本节内容,7.1.1 并行通信与串行通信 7.1.2 串行通信的通信方式 7.1.3 串行通信的数据传送方向 7.1.4 通信中的误码问题,7.1串行通信基础知识,11,7.1.2串行通信的通信方式 根据通信协议的不同,串行通信可分为同步通信和异步通信两种基本方式。,7.1串行通信基础知识,一、同步通信 同步通信:是一种连续串

5、行传输数据的通信方式,传送的数据可以是多个字符组成的数据块,每次传送的一帧数据由同步字符、数据字符和校验字符三部分组成。,12,同步通信传输一帧数据的开头采用附加12个同步字符使收发双方实现严格同步,期间不允许出现空隙,没有起始位和停止位,提高了传输速度。无数据传送时,发送同步字符填充。 同步通信方式发送的数据量大、速度快,常用于传输速度要求高的场合,但较复杂。,7.1串行通信基础知识,同步通信方式帧格式:,图7-2 字符帧的同步串行通信格式,13,同步通信方式帧格式:,图7-2 字符帧的同步串行通信格式,7.1串行通信基础知识,要求:发送和接收双方要保持完全的同步,所以,要求发送和接收设备必

6、须使用同一时钟。 解决办法: 1)对于近距离通信:采用在传输线中增加一根时钟信号线来解决。 2)对于远距离通信:通过解调器从数据流中提取同步信号,用锁相技术实现收、发频率完全相同的时钟信号。,14,二、异步通信(80C51单片机一般采用的通信方式) 异步通信以字符(构成的帧)为单位进行传输。发送的每一字符,都必须先按照通信双方约定好的格式进行格式化,在其前、后分别加上起始位和停止位,用以指示每一字符的开始和结束。,7.1串行通信基础知识,图7-3 字符帧的异步串行通信格式,一个字符帧的异步串行通信格式:,15,图7-3 字符帧的异步串行通信格式,7.1串行通信基础知识,异步通信用一帧表示一个字

7、符,一个字符包括4个部分: 起始位:1位(0有效) 数据位:5-8位(低位在先,高位在后) 奇偶校验位:1位 停止位:1位、1位半、2位(1有效),16,7.1串行通信基础知识,异步通信不需要同步字符,也不需要发送端保持数据块的连续性。 数据在线路上的传送不连续,字符间隔(时间间隔)不定,字符与字符之间的间隙是任意的。各个字符可以连续传送也可以间断传送(停止位后,线路上自动保持为1),完全取决于通信协议或约定。,17,7.1串行通信基础知识,同步通信传输速率高,适用于高速率、大容量的数据通信,但硬件复杂。 异步通信技术对硬件要求较低,实现起来比较简单、灵活,适用于数据的随机发送/接收,应用范围

8、广。 异步通信但因每个字节都要建立一次同步,在每个数据前后附加起始位、停止位,即每个字符都要额外附加20%的附加数据,占用了传输时间,降低了传送效率。 异步通信不要求收发双方时钟的严格一致,实现容易,设备开销较小。,如上所述:,本节内容,7.1.1 并行通信与串行通信 7.1.2 串行通信的通信方式 7.1.3 串行通信的数据传送方向 7.1.4 通信中的误码问题,7.1串行通信基础知识,19,7.1.3串行通信的数据传送方向 数据通信系统一般由数据发送方、数据接收方及数据通路组成的。 串行通信的数据是在两个站之间传送的,按照数据的传送方向,串行通信有三种数据通路连接方式:单工方式、半双工方式

9、、全双工方式。,7.1串行通信基础知识,20,7.1串行通信基础知识,一、单工方式 在单工方式下,通信线的一端接发送器,另一端接接收器,形成单向连接。 若A为发送端,B为接收端,数据仅能从A端发至B端,如广播、无线寻呼等。,(a)单工方式,21,二、半双工方式 在半双工方式下,系统中的每个通信设备都由一个发送器和一个接收器组成,通过收、发开关接到通信线上。 数据既可从A端发送到B端,也可以由B端发送到A端,不过在同一时间只能作一个方向的数据传送,如使用同一载波频率的对讲机。,7.1串行通信基础知识,(b)半双工方式,22,三、全双工方式 在全双工方式下,在同一时间两端既可同时发送,也可同时接收

10、,如普通电话、手机等。 80C51单片机使用全双工方式。,7.1串行通信基础知识,(c)全双工方式,本节内容,7.1.1 并行通信与串行通信 7.1.2 串行通信的通信方式 7.1.3 串行通信的数据传送方向 7.1.4 通信中的误码问题,7.1串行通信基础知识,7.1.4通信中的误码问题 数据在串行传输过程中,由于干扰可能使传输的数据发生错误,这种情况称为出现了“误码”,错误的数据位数与所有传输数据总位数的比率叫做“误码率”,发现传输中的错误叫做“检错”,发现错误后消除错误叫做“纠错”。 目前较为流行的方法有奇偶校验、累加和校验、循环冗余码校验几种。,7.1串行通信基础知识,一、奇偶校验 最

11、简单的检错方法是“奇偶校验”,在传送字符的各位之外,再传送1位奇/偶校验位。 奇校验:数据中1的个数与校验位1的个数之和应为奇数。 偶校验:数据中1的个数与校验位1的个数之和应为偶数。 在接收字符时,对1的个数进行校验,若发现不一致,则说明传输数据过程中出现了差错。 奇偶校验无法实现自动纠错,发现错误后只能要求重发,但由于其实现简单,仍得到了广泛使用。,7.1串行通信基础知识,7.1串行通信基础知识,奇/偶校验 采用奇校验,在传送每一个字节的时候另外附加一位作为校验位,当实际数据中“1”的个数为偶数的时候,这个校验位就是“1”,否则这个校验位就是“0”,在接收方收到数据时,将按照奇校验的要求检

12、测数据中“1”的个数,如果是奇数,表示传送正确,否则表示传送错误。 采用偶校验,当实际数据中“1”的个数为偶数的时候,这个校验位就是“0”,否则这个校验位就是“1”,这样就可以保证传送数据满足偶校验的要求。在接收方收到数据时,将按照偶校验的要求检测数据中“1”的个数,如果是偶数个“1”,表示传送正确,否则表示传送错误。,27,二、累加和校验 “累加和校验”是指发送方将发送的数据块求和,并将“校验和”附加到数据块末尾。 接收方接收数据时也是先对数据块求和,将所得结果与发送方的“校验和”进行比较,相符则无差错,否则即出现了差错。 “校验和”的加运算可用逻辑加,也可用算术加。校验和能够检测到比奇偶校

13、验更多的错误。 累加和校验的缺点是当字节顺序颠倒时,无法检验出字节位序(或1、0位序不同)的错误。,7.1串行通信基础知识,28,三、循环冗余码校验(Cyclic Redundancy Check,简称CRC) 循环冗余码校验是通过某种数学运算实现有效信息与校验位之间的循环校验,常用于对磁盘信息的传输、存储区的完整性校验等。 循环冗余码校验的基本原理是将一个数据块看成一个位数很长的二进制数,然后用一个特定的数去除它,将余数作校验码附在数据块后一起发送。接收端收到该数据块和校验码后,进行同样的运算来校验传送是否出错。目前CRC已广泛用于数据存储和数据通信中,并在国际上形成规范,已有不少现成的CR

14、C软件算法。 循环冗余码校验纠错能力强,广泛应用于同步通信中。,7.1串行通信基础知识,本节内容,7.2.1 串行接口的结构 7.2.2 串行接口的控制寄存器 7.2.3 串口通信的波特率设计,7.2 80C51系列单片机的串行接口,30,7.2 80C51系列单片机的串行接口,80C51系列单片机有一个全双工的串行口,这个口除可以实现串行异步通信,还可以作为同步移位寄存器使用。 7.2.1串行接口的结构 80C51系列单片机串行口主要由发送数据缓冲器、发送控制器、接收数据缓冲器、接收控制器、输出控制门、输入移位寄存器等组成。,31,图7-5 串行口结构框图,7.2 80C51系列单片机的串行

15、接口,串行口结构框图如图7-5所示:,由于串行口对外有两条独立的收、发信号线RXD(P3.0)、TXD(P3.1),因此可以同时发送、接收数据,实现全双工通信。,7.2 80C51系列单片机的串行接口,7.2 80C51系列单片机的串行接口,33,MCS-51系列单片机串行通信的基本工作: 发送数据时,将CPU发送来的数据转换成一定格式的串行数据,由引脚TXD上按规定的波特率逐位输出; 接收数据时,监视引脚RXD,一旦出现起始位0,就将外围设备送来的一定格式的串行数据转换成并行数据,等待CPU读入。,本节内容,7.2.1 串行接口的结构 7.2.2 串行接口的控制寄存器 7.2.3 串口通信的

16、波特率设计,7.2 80C51系列单片机的串行接口,35,7.2.2串行接口的控制寄存器 对串行口的访问和设置是通过访问相关的特殊功能寄存器完成的,与串行口相关的特殊功能寄存器共有3个,如表7-1所示。,表7-1 串口控制寄存器,7.2 80C51系列单片机的串行接口,36,一、串行数据缓冲器SBUF 串行数据缓冲器SBUF,单元地址99H,既表示发送寄存器,又表示接收寄存器,用指令判断区分。 发送缓冲器只能写入不能读出,接收缓冲器只能读出不能写入,两者均只能进行字节寻址。,7.2 80C51系列单片机的串行接口,37,7.2 80C51系列单片机的串行接口,数据传输过程中: 1)MOV SBUF,A-将数据写入发送缓冲器,启动一次数据发送 数据发送时,只需将发送数据输入SBUF,CPU将自动启动和完成串行数据的发送。 发送器为单缓冲器,因为发送时CPU是主动的。,38,7.2 80C51系列单片机的串行接口,数据传输过程中: 2)MOV A,SBUF-从接收缓冲器读取数据,完成一次数据接收

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

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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