第6章-串行通信.ppt





《第6章-串行通信.ppt》由会员分享,可在线阅读,更多相关《第6章-串行通信.ppt(82页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第6章章 串行通信串行通信6.1串行通信基础知识串行通信基础知识6.2MCS-51系列单片机的串行接口系列单片机的串行接口6.351单片机串行口应用单片机串行口应用 串行通信基本概念串行通信基本概念 计算机与外界的信息交换称为通信。通信的基本计算机与外界的信息交换称为通信。通信的基本方式有并行通信和串行通信两种。方式有并行通信和串行通信两种。并行通信并行通信是将构成一组数据的各位是将构成一组数据的各位同时同时进行进行传送传送,并排传,并排传输,如输,如8位数据或位数据或16位数据并行传送。其特点是传送速度快,位数据并行传送。其特点是传送速度快,但当距离较远、位数较多时,会导致通信线路复杂且成
2、本高。但当距离较远、位数较多时,会导致通信线路复杂且成本高。串行通信串行通信是是按位按位进行进行顺序传送顺序传送,其特点是通信线路简单,其特点是通信线路简单,只需一对传输线就可以实现通信,从而降低成本,特别适合于只需一对传输线就可以实现通信,从而降低成本,特别适合于远距离通信。缺点是传送速度慢。远距离通信。缺点是传送速度慢。6.1 串行通信基础知识串行通信基础知识 两种基本通信方式两种基本通信方式 6.1 串行通信基础知识串行通信基础知识 串行数据传输方式串行数据传输方式 按照信号传输的方向和同时性,一般把传送方式分为按照信号传输的方向和同时性,一般把传送方式分为单工单工方式方式、半双工方式半
3、双工方式和和全双工全双工方式方式3种种。如下图所示:。如下图所示:其中:其中:A端为发送站,端为发送站,B端为接收站。端为接收站。6.1 串行通信基础知识串行通信基础知识 串行数据传输方式串行数据传输方式(1)单工方式:通信双方一方固定为发送方,另一方固定)单工方式:通信双方一方固定为发送方,另一方固定为接收方,数据只能是单向传输;为接收方,数据只能是单向传输;(2)半双工方式:通信双方只使用一根数据线,每一方都)半双工方式:通信双方只使用一根数据线,每一方都有发送器和接收器,可以在两个方向上传送,但通信双方不能有发送器和接收器,可以在两个方向上传送,但通信双方不能同时接收或发送数据,只能交替
4、进行;同时接收或发送数据,只能交替进行;(3)全全双双工工方方式式:通通信信双双方方使使用用两两根根数数据据线线,分分别别用用于于不不同方向的数据传输,通信双方能够同时收发数据。同方向的数据传输,通信双方能够同时收发数据。6.1 串行通信基础知识串行通信基础知识 串行异步传送方式串行异步传送方式异步传送的特点是数据在线路上的传送不连续。传送时数异步传送的特点是数据在线路上的传送不连续。传送时数据以一个据以一个字符字符为单位进行传送。它用一个起始位表示字符的开为单位进行传送。它用一个起始位表示字符的开始,用停止位表示字符的结束。始,用停止位表示字符的结束。一个字符又称为一一个字符又称为一帧帧信息
5、,每帧数据由信息,每帧数据由起始位起始位、数据位数据位、奇偶校验位奇偶校验位和和停止位停止位4部分组成。起始位为部分组成。起始位为0,占,占1位;数据位位;数据位可以是可以是5位、位、6位、位、7位或位或8位,位,传送时低位在先传送时低位在先、高位在后高位在后;奇;奇偶校验位占偶校验位占1位(也可不要);最后是停止位,用信号位(也可不要);最后是停止位,用信号1来表来表示一帧的结束,可以是示一帧的结束,可以是1位、位、1位半或位半或2位。位。字符间用字符间用空闲位空闲位填充填充(高电平高电平),用于等待传送。,用于等待传送。6.1 串行通信基础知识串行通信基础知识 串行异步传送的字符格式串行异
6、步传送的字符格式6.1 串行通信基础知识串行通信基础知识 串行异步传送方式串行异步传送方式串行异步传送的通信双方必须事先进行约定:串行异步传送的通信双方必须事先进行约定:字符格式。双方要事先约定字符的编码形式、奇偶校验字符格式。双方要事先约定字符的编码形式、奇偶校验形式及起始位和停止位的规定。形式及起始位和停止位的规定。波特率(波特率(Baudrate)。是指数据的传送速率,即每秒钟)。是指数据的传送速率,即每秒钟传送的二进制位数,单位为传送的二进制位数,单位为b/s。它与字符的传送速率(字符。它与字符的传送速率(字符/秒)之间有以下关系:秒)之间有以下关系:波特率单个字符的二进制编码位数波特
7、率单个字符的二进制编码位数字符字符/秒秒要求通信双方(接收与发送方)的波特率必须一致。要求通信双方(接收与发送方)的波特率必须一致。通常通常51单片机串行异步通信传送速率为单片机串行异步通信传送速率为509600波特。波特。6.1 串行通信基础知识串行通信基础知识 串行异步传送方式串行异步传送方式波特率的另一种定义:数据信号对载波的调制速率称为波特率的另一种定义:数据信号对载波的调制速率称为波特率,它用单位时间内载波调制状态改变的次数来表示,单波特率,它用单位时间内载波调制状态改变的次数来表示,单位为波特(位为波特(Bd)。)。如:数据传送速率为如:数据传送速率为120字符字符/秒,而每一个字
8、符为秒,而每一个字符为10个数个数据位,则传输速率为:据位,则传输速率为:12010=1200bit/s,即波特率为,即波特率为1200,每一位数据的传送时间为波特率的倒数:每一位数据的传送时间为波特率的倒数:T1波特率波特率=11200=0.833ms常用的波特率取值有:常用的波特率取值有:600、1200、1800、2400、4800、7200、9600、19200等。等。6.1 串行通信基础知识串行通信基础知识 串行同步传送方式串行同步传送方式同步传送是以同步传送是以数据块数据块为单位的传输方式,每一个数据块开为单位的传输方式,每一个数据块开头处要用头处要用同步字符同步字符SYN加以指示
9、,使发送方和接收方取得同加以指示,使发送方和接收方取得同步。数据块的各字符之间取消了起始位和停止位(没有间隙),步。数据块的各字符之间取消了起始位和停止位(没有间隙),从而使通信速度得以提高,如下图所示。从而使通信速度得以提高,如下图所示。如果发送的数据块之间有间隔时间,则发送同步字符填充。如果发送的数据块之间有间隔时间,则发送同步字符填充。6.1 串行通信基础知识串行通信基础知识 51单片机的串行口单片机的串行口 功能与结构功能与结构51单片机内部有一个功能很强的单片机内部有一个功能很强的全双工串行口全双工串行口,可同时接,可同时接收和发送数据。接收、发送数据均可工作于查询方式和中断方收和发
10、送数据。接收、发送数据均可工作于查询方式和中断方式,使用十分灵活,能方便地与其他计算机或串行传送信息的式,使用十分灵活,能方便地与其他计算机或串行传送信息的外部设备实现双机、多机通信。外部设备实现双机、多机通信。51单片机串行口有四种工作方式。方式单片机串行口有四种工作方式。方式0不用于串行通信,不用于串行通信,用于串行口扩展并行接口;方式用于串行口扩展并行接口;方式1、方式、方式2、方式、方式3为串行异步为串行异步通信方式。通信方式。6.2 MCS-51系列单片机的串行接口系列单片机的串行接口 51单片机的串行口单片机的串行口 串行口工作方式串行口工作方式方式方式1是是8位异步通信接口,用于
11、双机通信;方式位异步通信接口,用于双机通信;方式2和方和方式式3是是9位异步通信接口,主要用于位异步通信接口,主要用于多机通信多机通信。6.2 MCS-51系列单片机的串行接口系列单片机的串行接口SM0SM1工作工作方式方式功能功能波特率波特率000移位寄存器方式,用于并行移位寄存器方式,用于并行I/O扩扩展(使用串口扩展并行口)展(使用串口扩展并行口)fosc/120118位通用异步接收器位通用异步接收器/发送器发送器可变可变1029位通用异步接收器位通用异步接收器/发送器发送器fosc/32或或fosc/641139位通用异步接收器位通用异步接收器/发送器发送器可变可变 51单片机的串行口
12、单片机的串行口 功能与结构功能与结构串行口主要由串行口主要由接收接收、发送数据缓冲器(发送数据缓冲器(SBUF)、发送控、发送控制器、输出控制门、接收控制器、输入移位控制器等组成。制器、输出控制门、接收控制器、输入移位控制器等组成。发送数据缓冲器发送数据缓冲器只能写入,不能读出;只能写入,不能读出;接收数据缓冲器接收数据缓冲器只只能读出,不能写入,故两个寄存器可共用一个地址符号能读出,不能写入,故两个寄存器可共用一个地址符号SBUF,共用一个地址,共用一个地址99H。串行口还有两个特殊功能寄存器串行口还有两个特殊功能寄存器SCON和和PCON,分别,分别用来控制串行口的工作方式和波特率。用来控
13、制串行口的工作方式和波特率。波特率发生器可使用波特率发生器可使用T1(或(或T2)来构成。)来构成。6.2 MCS-51系列单片机的串行接口系列单片机的串行接口 51单片机的串行口单片机的串行口 串行口控制寄存器串行口控制寄存器SCONSM0、SM1:由软件置位或清零,用于选择串行口的四种:由软件置位或清零,用于选择串行口的四种工作方式;工作方式;SM2:多机通信控制位;:多机通信控制位;REN:允许串行接收控制位;:允许串行接收控制位;TB8、RB8:发送或接收数据中的:发送或接收数据中的第第9位位;TI、RI:发送中断标志位和接收中断标志位。:发送中断标志位和接收中断标志位。6.2 MCS
14、-51系列单片机的串行接口系列单片机的串行接口 51单片机的串行口单片机的串行口 串行口控制寄存器串行口控制寄存器SCONSM2为多机通信控制位。在方式为多机通信控制位。在方式2和方式和方式3中,如果中,如果SM2=1,则接收到的第,则接收到的第9位数据(位数据(RB8)为)为0时不启动接收中断标时不启动接收中断标志志RI(即(即RI=0),并且将接收到的前),并且将接收到的前8位数据丢弃;位数据丢弃;RB8为为1时,才将接收到的前时,才将接收到的前8位数据送入位数据送入SBUF,并置位,并置位RI,产生,产生中断请求。当中断请求。当SM2=0时,则不论第时,则不论第9位数据为位数据为0或或1
15、,都将前,都将前8位数据装入位数据装入SBUF中,并产生中断请求。在方式中,并产生中断请求。在方式0时,时,SM2必须为必须为0。6.2 MCS-51系列单片机的串行接口系列单片机的串行接口 51单片机的串行口单片机的串行口 串行口控制寄存器串行口控制寄存器SCONREN为允许串行接收控制位。若为允许串行接收控制位。若REN=0,则禁止接收;,则禁止接收;REN=1,则允许接收,该位由软件置位或复位。,则允许接收,该位由软件置位或复位。TB8为发送数据的为发送数据的D8位。在方式位。在方式2和方式和方式3时,时,TB8就就是所要发送数据的第是所要发送数据的第9位。在多机通信中,以位。在多机通信
16、中,以TB8位的状态表位的状态表示主机发送的是地址还是数据:示主机发送的是地址还是数据:TB8=0为数据、为数据、TB8=1为地址为地址TB8位也可用作数据的奇偶校验位,该位由软件置位或者位也可用作数据的奇偶校验位,该位由软件置位或者复位。复位。6.2 MCS-51系列单片机的串行接口系列单片机的串行接口 51单片机的串行口单片机的串行口 串行口控制寄存器串行口控制寄存器SCONRB8为接收数据的为接收数据的D8位。在方式位。在方式2和方式和方式3时,接收到时,接收到的第的第9位数据可作为奇偶校验位或地址帧或数据帧的标志。方位数据可作为奇偶校验位或地址帧或数据帧的标志。方式式1时,若时,若SM
17、2=0,则,则RB8是接收到的停止位。在方式是接收到的停止位。在方式0时,时,不使用不使用RB8位。位。TI为发送中断标志位。在方式为发送中断标志位。在方式0时,当发送数据第时,当发送数据第8位结位结束后,或在其它方式发送停止位后,由束后,或在其它方式发送停止位后,由内部硬件内部硬件使使TI置位置位,向向CPU请求中断。请求中断。CPU在响应中断后,必须用在响应中断后,必须用软件清零软件清零。此外,此外,TI也可供查询使用。也可供查询使用。6.2 MCS-51系列单片机的串行接口系列单片机的串行接口 51单片机的串行口单片机的串行口 串行口控制寄存器串行口控制寄存器SCONRI为接收中断标志位
18、。在方式为接收中断标志位。在方式0时,当接收数据的第时,当接收数据的第8位位结束后,或在其它方式下接收到结束后,或在其它方式下接收到停止位的中间停止位的中间位置时由内部位置时由内部硬硬件件使使RI置位置位,向,向CPU请求中断。同样,在请求中断。同样,在CPU响应中断后,响应中断后,也必须用也必须用软件清零软件清零。RI也可供查询方式使用。也可供查询方式使用。SCON的所有位都可以按的所有位都可以按位操作位操作“清零清零”或或“置置1”。6.2 MCS-51系列单片机的串行接口系列单片机的串行接口 51单片机的串行口单片机的串行口 电源控制寄存器电源控制寄存器PCON PCON的最高位的最高位
19、SMOD是串行口波特率系数控制位。当是串行口波特率系数控制位。当SMOD=1时,波特率增大一倍。时,波特率增大一倍。其余各位与串行口工作无关。其余各位与串行口工作无关。6.2 MCS-51系列单片机的串行接口系列单片机的串行接口 串行口的工作方式串行口的工作方式 方式方式0同步移位寄存器方式同步移位寄存器方式串行口工作方式串行口工作方式0是移位寄存器方式,下页是其结构示意是移位寄存器方式,下页是其结构示意图。数据从图。数据从RxD引脚上接收或发送;一帧信息由引脚上接收或发送;一帧信息由8位数据组位数据组成,低位在前,高位在后(如下图);波特率固定,为成,低位在前,高位在后(如下图);波特率固定
20、,为fosc/12;同步脉冲从;同步脉冲从TxD引脚输出。引脚输出。移位寄存器方式用于移位寄存器方式用于51单片机通过串行口扩展并行单片机通过串行口扩展并行I/O口。口。6.2 MCS-51系列单片机的串行接口系列单片机的串行接口6.2 MCS-51系列单片机的串行接口系列单片机的串行接口 串行口的工作方式串行口的工作方式 方式方式0发送过程发送过程CPU执行一条执行一条写写SBUF的指令,如的指令,如“MOVSBUF,A”,就启动了发送过程。指令执行期间送来的写信号打开三态门就启动了发送过程。指令执行期间送来的写信号打开三态门1,将经内部总线送来的,将经内部总线送来的8位并行数据写入发送数据
21、缓冲器位并行数据写入发送数据缓冲器SBUF。写信号的同时启动发送控制器。此后,。写信号的同时启动发送控制器。此后,CPU与串行口与串行口并行工作。并行工作。经过一个机器周期后经过一个机器周期后,发送控制端,发送控制端SEND有效(高有效(高电平),打开门电平),打开门5和门和门6,允许,允许RXD引脚发送数据,引脚发送数据,TXD引引脚输出同步移位脉冲。脚输出同步移位脉冲。在时钟信号在时钟信号S6触发产生的内部移位脉冲作用下,发送数触发产生的内部移位脉冲作用下,发送数据缓冲器中的数据逐位串行输出。据缓冲器中的数据逐位串行输出。6.2 MCS-51系列单片机的串行接口系列单片机的串行接口 串行口
22、的工作方式串行口的工作方式 方式方式0发送过程发送过程因为是每一个机器周期从因为是每一个机器周期从RXD上发送一位数据,所以波上发送一位数据,所以波特率为特率为fosc/12。S6同时形成同步移位脉冲,一个机器周期从同时形成同步移位脉冲,一个机器周期从TXD上输出一个脉冲。上输出一个脉冲。8位数据(一帧)发送完毕后,位数据(一帧)发送完毕后,SEND恢复低电平状态,停止发送数据。且发送控制器恢复低电平状态,停止发送数据。且发送控制器硬件置位硬件置位发送发送中断标志中断标志TI=1,向,向CPU申请中断。如要再次发送数据,必须申请中断。如要再次发送数据,必须用用软件软件将将TI标志标志清零清零,
23、并再次执行写,并再次执行写SBUF指令。指令。6.2 MCS-51系列单片机的串行接口系列单片机的串行接口 串行口的工作方式串行口的工作方式 方式方式0发送过程发送过程6.2 MCS-51系列单片机的串行接口系列单片机的串行接口 串行口的工作方式串行口的工作方式 方式方式0接收过程接收过程在在RI=0的条件下,将的条件下,将REN(SCON.4)置置1就启动一次就启动一次接收过程。此时接收过程。此时RXD为串行数据接收端,为串行数据接收端,TXD依然输出同步依然输出同步移位脉冲。移位脉冲。REN置置1启动了接收控制器。经过一个机器周期,接收控启动了接收控制器。经过一个机器周期,接收控制端制端R
24、ECV有效(高电平),打开门有效(高电平),打开门6,允许,允许TXD输出同步输出同步移位脉冲。该脉冲控制外接芯片逐位输入数据,波特率为移位脉冲。该脉冲控制外接芯片逐位输入数据,波特率为fosc/12。在内部移位脉冲作用下,。在内部移位脉冲作用下,RXD上的串行数据逐位移入上的串行数据逐位移入移位寄存器。移位寄存器。6.2 MCS-51系列单片机的串行接口系列单片机的串行接口 串行口的工作方式串行口的工作方式 方式方式0接收过程接收过程当当8位数据(一帧)全部移入移位寄存器后,接收控制器位数据(一帧)全部移入移位寄存器后,接收控制器使使RECV失效,停止输出移位脉冲,并发出失效,停止输出移位脉
25、冲,并发出“装载装载SBUF”信号,信号,打开三态门打开三态门2,将,将8位数据并行送入接收数据缓冲器位数据并行送入接收数据缓冲器SBUF中保中保存。与此同时,接收控制器硬件置接收中断标志存。与此同时,接收控制器硬件置接收中断标志RI=1,向,向CPU申请中断。申请中断。CPU响应中断后,用软件使响应中断后,用软件使RI=0,使移位寄,使移位寄存器开始接收下一帧信息,然后通过读接收缓冲器的指令,例存器开始接收下一帧信息,然后通过读接收缓冲器的指令,例如如“MOVA,SBUF”,读取,读取SBUF中的数据。在执行这条指中的数据。在执行这条指令时,令时,CPU发出的发出的“读读SBUF”信号打开三
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 串行 通信

限制150内