【教学课件】第4章串行通信接口.ppt

上传人:小飞机 文档编号:5658750 上传时间:2023-08-06 格式:PPT 页数:72 大小:884.50KB
返回 下载 相关 举报
【教学课件】第4章串行通信接口.ppt_第1页
第1页 / 共72页
【教学课件】第4章串行通信接口.ppt_第2页
第2页 / 共72页
【教学课件】第4章串行通信接口.ppt_第3页
第3页 / 共72页
【教学课件】第4章串行通信接口.ppt_第4页
第4页 / 共72页
【教学课件】第4章串行通信接口.ppt_第5页
第5页 / 共72页
点击查看更多>>
资源描述

《【教学课件】第4章串行通信接口.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第4章串行通信接口.ppt(72页珍藏版)》请在三一办公上搜索。

1、4.1 串行传送的基本概念一、串行传送的特点 在一根传输线上即传送数据又传送联络信号。有固定的数据传输协议。线上的通信信号一般不是TTL电平,因此与 CPU通信必需进行电平转换。传送信息的速率要求双方约定。串行传输的距离可近可远。串行传输易受干扰,故需进行差错控制。,第4章 串行通信接口,二、数据传送的方式 串行通信中,数据通常是在二个站(点对点)之间进行传送,按照数据流的方向可分成三种传送方式:(1)单向通信(单工);(2)双向交替通信(半双工);(3)双向同时通信(全双工);,特点:每端需有一个收/发切换电子开关 因有切换,会产生时间延迟应用:打印机串口,单向传送设备,发送器接收器,2.半

2、双工(Half Duplex)使用同一根传输线,既可发送数据又可接收数据,但不能同时发送和接收.,1.单向通信(单工),特点:每一端都有发送器和接收器 有二条传送线 应用:交互式应用,远程监测控制,3.全双工(Full Duplex)数据的发送和接收分别由两根可以在两个不同的站点同时发送和接收的传输线进行传送,通信双方都能在同一时刻进行发送和接收操作。,4.波特率:单位时间内传送的二进制数据的位数,以位/秒(b/s)表示,也称为数据位率。它是衡量串行通信速率的重要指标。常用的标准波特率:110,300,4.8K,9.6K,56K5.收/发时钟:收/发时钟直接决定了通信线路上数据传输的速率,对于

3、收/发双方之间数据传输的同步有十分重要的作用。波特率系数n 为了提高串行通信的抗干扰能力,往往用多个时钟调制一个二进制数据,调制一个二进制数据的收/发时钟个数称为波特率系数n。收/发时钟频率与波特率之间的关系:收/发时钟频率=n波特率 一般n取1,16,32和64等。对于异步通信,常采用n=16;对于同步通信,则必须取n=1。,三、信号的调制和解调 计算机的通信是要求传送数字信号,而在进行远程数据通信时,线路往往是借用现有的公用电话网,但是,电话网是为音频模拟信号的设计的。一般为3003400Hz,不适合于数据信号。因此需要对二进制信号进行调制,以适合在电话网上传输相应的音频信号,在接收时,需

4、要进行解调,还原成数字信号。,通信系统模型,1.什么叫调制?调制就是进行波形变换。或者说进行频谱变换,就是将基带数字信号的频谱变换成适合于在模拟信道中传输的频谱。2.作用:调制器(Modulator)是一个波形变换器,它将基带数字的波形变换成适合于模拟信道传输的波形。解调器是一个波形识别器,将模拟信号恢复成原来的数字信号。,最基本的调制方法有以下几种:(1)调幅(AM)即载波的振幅随基带数字信号而变化.“1”对应有载波“0”对应无载波,3.调制方法:,(2)调频(FM)即载波频率随数字信号而变化“0”对应”f1”“1”对应“f2”,(3)调相(PM)即载波初始相位随基带数字信号而变化.“0”对

5、应相位0度“1”对应相位180度,4.传输距离,四、信息的检错与纠错 串行数据在传输过程中,由于干扰而引起误 码是难免的,这直接影响通信系统的可靠性,对通信中的检/纠错能力是衡是一个通信系统的重要内容。检错:如何发现传输中的错误,称为检错。纠错:如何消除错误,称为纠错.例:奇偶校验检错 方阵码检错 循环冗余码(CRC)检错,差错检测的重要指标:,误码率P0:衡量一个信道质量的重要参数。即:,其中:k 为码字中信息位;r 为编码时外加冗余位;n 为编码后得到的码长,1.奇偶校验码,垂直奇偶校验码,奇校验:ri=I 1i I 2i I pi 1偶校验:ri=I 1i I 2i I pi编码效率:R

6、=p/p+1,水平奇偶校验码,编码效率:R=q/q+1,1 1 0 1 0 0 1 0 0 1 0 0 0 0 0 1 1 0 1 0 1 0 1 0 1 1 1 1 0 0 1 1 1 1 0 0 0 0 1 1 0 0 0 0 1 0 0,冗余位,垂直水平奇偶校验码,编码效率:R=pq/(p+1)(q+1),2.循环冗余码 CRC,代码:10100011101,T(x)=x4 K(x)+R(x)=x10+x8+x4+x3+x2+1,模2除法运算:多项式以2为模除法运算,运算法则为加法不进位,减法不借位,与异或运算相同。,计算检验和的算法:设G(x)为r阶,在帧的末尾附加r个零,使帧为m+r

7、位,则相应的多项式是Xr K(x);按模2除法用多项式Xr.K(x)除以G(x),得到余数R(x);按模2减法从多项式Xr.K(x)中减去R(x),得T(x).注:这里减法、加法都是异或运算,接收端:如果 T(x)+E(x)/G(x)不为0,表明有差错出现如果 T(x)+E(x)/G(x)为0,表明无差错出现,或 E(x)被G(x)整除,就是说,G(x)整倍数多项式错误不能被检测。,多个生成多项式己成为国际标准:CRC 8 G(x)=x8+x2+x+1CRC 5 G(x)=x5+x2+1CRC 16 G(x)=x16+x15+x2+1 CRC CCITT G(x)=x16+x12+x5+1CR

8、C 32 G(x)=x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1,应用:CRC-5,CRC-16 应用于USB数据CRC;CRC-8,CRC-32应用于ATM网络;CRC_CCITT应用于HDLC数链层.,4.2 串行通信协议 通信协议 是指通信双方的一种约定,包括对数据格式、同步方式,传送速度、传送步骤、检纠错方式等问题作出统一规定。也称通信控制规程。,一、起止式异步通信数据格式1.数据(帧)格式:每个字符总是以起始位开始(“0”),以停止位(“1”)结束。字符之间没有时间间隔要求 字符后一位校验位(可没有),特点:是一个字符一个字符传

9、输,利用移位寄存器实现串行接口,起始位,停止位,校验位,2.串行数据发送:,3.串行数据采样,当检测到通信线的电平从高到低变化后,计数8个时钟到达起始位的中点,再计数16个时钟进行数据采样。,二、面向字符的同步通信格式 1.功能:一次传送若干个字符组成的数据块,并且规定了10个特殊.字符作为这个数据块的开头与结束标志以及整个传输过程的控制信息。,3.特定字符的定义:SYN:同步字符(Synchronous),表示一帧的开始;SOH:序始字符(Start of Header),表示标题的开始;标题:包括原地址,目的地址,路由指示等信息;STX:文始字符(Start of Text),表示正文开始

10、。FTB/ETX:组终/文终字符(End of Text),特点:一次传送是一个数据块,传输效率提高了;采用了一些传输控制字,增加了通信控制能力和校验能力;存在问题:由于数据字符与特定字符可能代码相同,因此,在数据字符前插入转义字符DLE,以示区别。这种方式称为“字符填充”。,三、面向比特的同步通信数据格式1.最有代表性的是:IBM的SDLC(Synchronous Data Link Control),同步数据链路控制规程。ANSI的ADCCP(Advanced Data Communication Control Procedure)。ISO的HDLC(High Level Data li

11、nk Control)高级数据链路控制规程。DEC公司DDCMP(Digital Data Communication Message protocol)。,2.协议的特点:1)所传输的一帧(frame)数据(或称数据包)可以是任意二进制位。2)通过约定的位组合模式(标志字节)来标志帧的开始和结束。注意:HDLC作为国际标准ISO3309;ADCCP作为美国国家标准;我国相应国家标准GB-7496,这几个协议均大同小异。,3.HDLC 格式:,8位,8位,8位,16位,8位,0位,(1)标志场:SDLC/HDLC规定所有信息传输必须以一个标志字节开始中,且以同一个字节结束,这个字节为01111

12、110,二个标志字节之间构成一个完整的信息单位,称为一帧(frame).(2)地址场:(Address Field)A场用来规定与之通信的次站的地址。A场的宽度:8(SDLC),任意长度(HDLC),(3)控制场(Control Field)用来规定若干命令。(8位:SDLC 16位:HDLC)(4)信息场(Information Field)包含所有要传送的数据,当它为0时,则这一帧主要是控制命令。(5)帧校验场(FC,Frame Check)包含除标志场和插入的“0”位外的所有数据位的15位CRC校验。.实际应用时的两个技术问题(1)“0”位插入/删除技术 存在问题的提出:如上所述,标志字

13、节:以01111110,但在为了把它们区别开,采用了“0”位插入和删除技术。,方法:遇到连续5个“1”就自动插入一个“0”。如:原始 插入后 删除后 01111110 011111010 01111110 11111111 111110111 11111111.SDLC/HDLC异常结束 若在发送过程中出现错误,则用异常结束符(A60H)结束。如:HDLC 规定:7个连续“1”为失效字符;SDLC 规定:8个连续“1”为失效字符;,4.3 串行接口标准4.3.1 EIA-RS-232接口标准 RS-232标准是美国EIA(电子工业联合会)与BELL等公司一起开发的,1969年公布的通信协议,适

14、合的数传率:020Kbps。1.电气特性 RS-232对电气特性,逻辑电平和各种信号线的功能都作了规定。逻辑“1”=-3V-15V“0”=+3V+15V 与TTL逻辑电平不一样,可用TTL/EIA电平转换器进行,如MC1488,MC1489IC。,采用EIA电平比TTL电平具有更强的抗干扰性能。另外,MAX232省电可连接二对收/发线,只用单电源。2.物理特性1)连接器(Connector)常用二种:DB-25型,25脚,只用9个信号(2个数据线,6个控制线,1个地址),如下图所示。,DB-9型 9针,9针全用,如下图。,2)电缆长度 RS-232直接连接(不调制)的最大物理距离15M,通信速

15、率20Kbps。3.RS-232C接口信号的定义 25线(9线):数据线4条(2,3,14,16)控制线11条(4,5,6,8,12,13,19,20,22,23)定时信号线3条(15,17,24)地线2条(1,7)备用5条(9,10,11,18,25)未定义,信号线的连接:1)近距离连接(15m,通信速率20Kbps)只用3条线(发送线TXD,接收线RXD,信号地线),2)远距离连接(15m).需用MODEM和专用电话线.需用2 9条信号线(在接口与MODEM之间),二、RS-422/RS-485接口标准1.特点:(1)采用平衡发送器和差动接收器,由于是双线传输,大大提高了抗共模干扰的能力。

16、因为是两条传输线的电位差决定逻辑电平AA-BB-200mV,表示逻辑“1”AA-BB+200mV,表示逻辑“0”(2)传输速率 10Mbps(15m时)90Kbps(1200m时)2.连接,RS-485接口标准特点:(1)兼容RS-422A,扩展RS-422A的功能;(2)允许在电路中有多个发送器和允许一个发送器驱动多个接收器,多达256个收/发器;(3)搞干扰能力强,传送距离远,传输速率高。数传率:100Kbps 1.2Km(不用MODEM)9.6Kbps 15Km 10Mbps 15m,3.RS-232/RS-485电平转换电路,4.RS-485应用的连接,MAX485引脚定义:R:串行输

17、入数据线 D:串行输出数据线AB:RS-485总线 RE:读数据控制低电平有效DE:写数据控制高电平有效,4.4 串行通信接口8251A串行通信接口的基本任务:(1)进行串,并转换(2)实现串行数据格式化(3)可靠性检验(4)实施接口与DCE之间联络控制(5)进行数据传输速率的控制,一、8251A的内部逻辑与外部信号 8251A是通用同步异步接收/发送器USART(Universal/Synchronous Asynchronous Receiver and Transmitter),1.功能:异步起止协议 同步面向字符协议2.组成:接收器、发送器、调制控制、读/写控制、数据总线缓冲器,825

18、1A的内部逻辑,C/D-(可用地址线代替)=1,写命令,读状态;=0,R/W数据,(1).发送器TXRDY(Transmitter Ready):发送器准备好,高电平有效TXE(Transmitter Empty):发送器空,状态线,高有效TXD:发送数据线TXC:发送器输入时钟,(2).接收器RXD:接收数据线RXRDY:接收器准备好SYNDET/BD:双向信号,同步字符检出信号(同步方式)/间断检出信号(异步方式)RXC:接收器输入时钟,(3).与调制器的接口接号DTR:数据终端准备好RTS:请求发送DSR:数据装置准备好CTS:清除传送,二、8251的控制字与状态字1.工作方式字 约定双

19、方的通信方式,数据格式,传送速率.a.作用:对8251A工作方式进行选择,是异步方式还是同步方式.b.格式:,例1:异步通信中,若帧数据格式为:波特率因数是16,字符长度8位,奇校验,2位停止位,则工作字是:11011110B=DEH MOV DX,309H;8251命令口 MOV AL,0DEH;异步工作方式字 OUT DX,AL 例2:同步通信中,若帧数据格式为:字符长度8位,双同步字符,内同步方式,奇校验,则工作字是:00011100B=1CH MOV DX,309H;8251命令口 MOV AL,1CH;同步工作方式字 OUT DX,AL,b.格式:,2.工作命令字a.作用:是确定82

20、51A的实际操作,迫使8251A进行某种操作或工作状态,以便接收或发送数据。,例3:使8251内部复位,并且允许接收,又允许发送,则程序段为:MOV DX,309H;8251命令口 MOV AL,01000000B;置D6=1,使内部复位 OUT DX,AL:MOV AL,00000101B;置D0=1,D2=1,OUT DX,AL;允许接收和发送,3.状态字a.作用:8251A执行命令进行数据传送后的状态字存放在状态寄存器中,CPU通过读出状态字进行分析和判断,以决定下一步的操作。b.格式:,例4:若查询8251A接收器是否准备好(查D1=1?),则用下列程序段:MOV DX,309H;状态

21、口 L:IN AL,DX;读状态字 AND AL,02H;查D1=1?(RXRDY=1?)JZ L;未准备好,则等待例5:检查出错信息,则用下列程序段 MOV DX,309H;状态口 IN AL,DX TEST AL,00111000B;检查D5D4D3三位(FE,OE,PE)JNZ ERROR;若其中有一位为1,则出错,4.8251A的方式字和命令的使用(1)方式字:约定双方通信的方式,数据格式,传送速率等参数。命令字:规定是发送数据,还是接收数据。状态字:何时发/收、取决于状态字。(2)使用的顺序:方式字命令字1 命令字2注:因方式字和命令字无特征位标志,必须按一定顺序:先方式字后命令字。

22、,4.4.3 8251A应用-举例11.要求:在甲乙二台PC之间进行串行通信,甲发送乙接收,要求把甲机上开发应用程序(其长度为2DH)传送到乙机中去。2.方案:起止式异步方式,字符长度为8位,2位停止位,波特率因子为64,无校验,波特率为4800,CPU与8251A之间用查询方式交换数据口地址分配是:309H为状态命令/状态口,308H为数据口。,3.分析 由于是近距离传输,可以不设MODEM,直接互连,同时,是采用查询I/O方式,故收/发程序中只需检查发/收准备好的状态是否置位,即可收发1个字节。4.设计 1)硬件连接,CSEG SEGMENT ASSUME CS:CSEG,DS:CSEGT

23、RA PROC FARSTART:MOV DX,309H;命令口 MOV AL,00H;空操作,向命令口送任意数 OUT DX,AL;空写一次方式字,保证操作顺序 MOV AL,40H;内部复位(使D6=1),等待方式字 OUT DX,AL;NOP MOV AL,0CFH;方式命令字(异步,2位停止位,;字符长度为8位,无校验,波特率;因子为64)OUT DX,AL,2)软件编程:包括发送和接收程序,分开编程。发送程序:包括初始化,状态查询,传送数据.,MOV AL,37H;工作命令字(RTS、ER、RXE、OUT DX,AL;DTR、TXEN均置1)MOV CX,2DH;传送字节数 MOV

24、SI,300H;发送区首址L1:MOV DX,309H;状态口 IN AL,DX;查状态位D0(TXRDY)=1?AND AL,01H JZ L1;发送未准备好,则等待 MOV DX,308H MOV AL,SI;数据口 OUT DX,AL INC SI;内存地址加1 DEC CX;字节数减1 JNZ L1;未发送完,继续,MOV AX,4C00H;已送完,回DOS INT 21HTRA ENDPCSEG ENDS END START接收程序(略去程序初始化部分)MOV DX,309H;复位方式命令工作命令MOV AL,00OUT DX,AL;空写一次方式字,保证操作顺序MOV AL,0101

25、0000B;内部复位(D6=1),OUT DX,AL;清错误标志(D4=1)NOPMOV AL,0CFH;方式命令:停止2/无校验/数据8/;因子64OUT DX,AL;MOV AL,14H;工作命令:D2=1允许接收、D4=1清;错误标志,OUT DX,ALMOV CX,2DH;接收字节数MOV DI,400H;接收首址L2:MOV DX,309H;读状态IN AL,DXTEST AL,00111000B;检查错误JNZ ERR;转错误处理AND AL,02H;D1接收准备好JZ L2;接收未准备好转MOV DX,308HIN AL,DX;取数据MOV DI,ALINC DILOOP L2S

26、TOP:MOV AX,4C00HINT 21H(略),4.5 PC 微机异步通信适配器(自学),UART(8250、16450、16550)与8251的不同之处:UART只能实现异步串行通信;8251支持异步/同步通信。UART支持中断方式;8251不支持中断方式。UART内置收/发时钟电路;8251只能外置收/发时钟电路。UART具有自诊断能力;8251无此功能。UART内含16字节的FIFO数据寄存器;8251没有。,1.8250外部引脚及基本连接图:,地址控制信号 片选:CS0、CS1、/CS2、/ADS PC机用/CS2作片选。地址线:A0、A1、A2(内部端口选择)读/写控制信号数据

27、输入选通信号:DISTR、/DISTR。数据输出选通信号:DOSTR、/DOSTR。PC机用/DISTR、/DOSTR连/IOR、/IOW 中断信号请求信号:INTRPT控制请求信号:/OUT2 时钟信号PC机时钟为1.8432M 通信信号控制信号:/RTS、/CTS、/DTR、/RLSD、/RI、/DSR数据输入信号:SIN数据输出信号:SOUT,2.8250的内部结构与寄存器:,收/发数据寄存器:地址 A2A0=000-3F8H 中断允许寄存器:地址 A2A0=001-3F9H D0=1 接收缓冲满允许中断。D1=1 发送缓冲空允许中断。波特率除数L:地址 A2A0=000(DLAB=1)

28、-3F8H 波特率除数H:地址 A2A0=001(DLAB=1)-3F9H 此处波特率除数 BRD=时钟频率/(16*实际波特率)如2400B/S BRD=18432000/(16*2400)=30H 如9600B/S BRD=18432000/(16*9600)=0CH 中断识别寄存器:地址 A2A0=010-3FAH(读)D0=1 有中断;D1D3=中断识别码。FIFO控制寄存器:地址 A2A0=010-3FAH(写),内部寄存器:,线路控制寄存器:地址 A2A0=011-3FBH D7(DLAB):DLAB=1为设波特率。DLAB=0为其它寄存器。线路状态寄存器:地址 A2A0=101-

29、3FDHD0:为1接收数据寄存器满,CPU可以读数据。D5:为1发送数据寄存器空,CPU可以写数据。MODEM控制寄存器:地址 A2A0=100-3FCHD4:循环测试(自诊断)MODEM状态寄存器:地址 A2A0=110-3FEH,3.8250编程步骤,设置波特率 置DABL=1即D7=1(3FBH/2FBH口)送波特低字节(3F8H/2F8H口)送波特高字节(3F9H/2F9H口)置通信协议 要求DABL=0即D7=0(3FBH/2FBH口)置中断允许状态(3F9H/2F9H口)不允许(3F9H/2F9H口)=00 接收中断允许(3F9H/2F9H口)=05 发送中断允许(3F9H/2F9

30、H口)=06 收发缓冲器有无数据(3FDH/2FDH口)D0=1收缓冲器有数据 D5=1发缓冲器数据空 收发数据(3F8H/2F8H口),例1.8250编程(发送)甲乙两PC机工作在COM1口、9600B/S、停止位1位、据位8位,无校验、传送1K字节(查询方式)。,BIGIN:MOVAX,CSMOVDS,AXMOVDX,3FBH;方式寄存器MOVAL,80HOUTDX,AL;DLAB=1MOVDX,3F8HMOVAL,0CH;波特率低字节OUTDX,ALMOVDX,3F9HMOVAL,00H;波特率高字节OUTDX,ALMOVDX,3FBH;MOVAL,03HOUTDX,AL;DABL=0方

31、式寄存器,MOVDX,3F9HMOVAL,00HOUTDX,AL;中断允许寄存器清零MOVCX,3FFHMOVSI,OFFSET BUFSEND1:MOVDX,3FDHINAL,DXTESTAL,20HJZSEND1;发送缓存器为空否MOVDX,3F8HMOVAL,SIOUTDX,ALINCSILOOPSEND1MOVAX,4C00HINT21HRETBUFDB 1024 DUP(?);“1K字节”发送程序(略),2.I2C总线的信号 SCL(时钟)线和SDA(数据)线的不同组合状态,形成以下I2C总线信号:1)开始信号/结束信号 2)数据传输信号3)确认信号,4.6 I2C串行总线接口(Inter-Integrated Circuit)4.6.1 I2C总线介绍,1.I2C总线的特点简单:仅用两条信号线(SLC、SDA)便可实现器件/元件之 间的通讯多主控:在I2C总线上可以挂接多个I2C设备,每个设备都有 自己的设备编号(地址码),其中任一设备都可以成 为主控设备。,1)开始/停止信号,2)数据传输,2)数据传输,3)确认信号(响应),I2C总线的基本操作1.控制字节,2.写操作,3.读操作,D7,D0,I2C总线的应用举例,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号