资源描述
,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,情境四 数据通信 单元一串行通信,本章知识点:,1,、掌握串行通信原理及工作方式,2,、了解串行通信接口,8251A,的内部结构及引脚功能,3,、掌握,8251A,命令字、控制字、状态字的设置及其工作方式,4,、掌握,8251A,编程,1,4.1,、数据传送的方式,数字信号的传输有并行传输和串行传输,并行传输,是多位二进制数据可以同时传输,提高数据传输的效率。通常以,8,位、,16,位或,32,位的数据宽度同时进行传输。每一位都要有自己的数据传输线和发送接收器件,在时钟脉冲的作用下数据从一端送往另一端。,2,串行通信,是指在单根导线上将二进制数据一位一位顺序传送,特别适合于远距离传送。,对于离计算机较近的外部设备如鼠标、绘图仪、终端等,也常常采用串行方式交换数据。,3,并行通信,:数据各位同时进行传送。,快、多,(数据线)、,近,串行通信,:数据一位接一位顺序传送,可只用一根数据线传送多位信息。,慢、少、远,特点:,4,4.2,串行传送的几个问题,一、串行数据传送方向,串行通信中,数据通常是在二个站(点对点)之间进行传送,按照数据流的方向可分成三种传送模式,:,全双工、半双工、单工,5,1.,单工,(Simplex,),单工数据线仅能在一个方向上传输数据,两个站之间进行通信时,一边只能发送数据,另一边只能接收数据。,发送器,接收器,A,B,6,2.,半双工(,Half Duplex,),使用同一根传输线,既可发送数据又可接收数据,但不能同时收送数据,这样的传送方式就是半双工(,Half Duplex,)制,,发送器,接收器,发送器,接收器,A,站,B,站,图,8.2,半双工方式示意图,7,特点:每端需有一个收,/,发切换电子开关,因有切换,会产生时间延迟,应用:打印机串口,单向传送设备,发送器接收器,8,3.,全双工,(Full Duplex,),数据的发送和接收分别由两根可以在两个不同的站点同时发送和接收的传输线进行传送,通信双方都能在同一时刻进行发送和接收操作,选择的传送方式称为全双工制。,发送器,接收器,接收器,发送器,A,站,B,站,图,8.1,全双工方式示意图,9,特点:每一端都有发送器和接收器,有二条传送线,应用:交互式应用,远程监测控制,10,二、串行通信有两种基本方式,异步通信,,:,帧格式传送,信息量不大,1,个起始位,,0,5,8,个数据位,奇偶校验位,1,2,个停止位,,0,2.,特点:是一个字符一个字符传输,11,同步通信,,:严格同步,发送同步字符,数据连续,信息量大,速度较高,按数据块传送,把要传送的字符顺序连接起来,数据块前有同步字符,后有检验字符,SYN,SYN,SOH,标题,STX,数据块,ETB/ETX,块校验,特点:,一次传送是一个数据块,传输效率提高了;,采用了一些传输控制字,增加了通信控制能力和校验能力;,存在问题:由于数据字符与特定字符可能代码相同,发生误,解,因此,在数据字符前插入转义字符,DLE,,以示区别。这种,方式称为,“,字符填充,”,。,12,波特率(,Band rate,),数据传送速率:每秒传送的二进制代码的位数。,波特率反映了串行通信的速率,也反映了对于传输通道的要求。波特率越高,要求传输通道的频率越宽,一般异步通信的波特率在,1200b/s115200b/s,之间。,三、串行传送速率,13,(,1,)进行串,并转换,(,2,)实现串行数据格式化,(,3,)可靠性检验,(,4,)实施接口与端口设备之间联络控制,4.3,串行通信接口任务,一、串口的基本任务,14,内部有四个寄存器:控制寄存器、状态寄存器、数据输入内部有寄存器、数据输出寄存器,数据线,联络信号线,地址线与片选线,串并转换和并串转换,二、串口电路的组成,15,4.4,用,8251A,组成的串行接口,功能:异步起止协议,同步面向字符协议,组成,:接收器、发送器、调制控制、读,/,写控制、数据总线缓冲器,一、,8251A,的内部逻辑与外部信号,1.,结构框图,8251A,是通用同步异步接收,/,发送器,USART,Universal/Synchronous Asynchronous Receiver and Transmitter,),16,数据总线,缓冲器,读,/,写,控制逻辑,调制控制,发送缓冲器,发送控制,接收缓冲器,接收控制,T,X,D,T,X,RDY,T,X,EMPTY,T,X,C,R,X,D,R,X,RDY,SYNDET/BD,R,X,C,DTR,DSR,RTS,CTS,RESET,CLK,C/D,RD,WR,CS,D7-D0,17,8251A,的引脚信号,18,1.,发送器,T,X,RDY,(,Transmitter Ready,):发送器准备好,高电平有效,T,X,E,(,Transmitter Empty,):发送器空,状态线,高有效,T,X,D,:发送数据线,T,X,C,:发送器输入时钟,2.,接收器,R,X,D,:接收数据线,R,X,RDY,:接收器准备好,T,X,EMPTY,:接收器空,T,X,C,:接收器输入时钟,3.,与调制器的接口接号,DTR,:数据终端准备好,RTS,:请求发送,19,DSR,:数据装置准备好,CTS,:清除传送,4,、读写控制电路,(,1,),RESET,复位信号,输入,高电平有效,(,2,),CLK,时钟,输入,(,3,),WR*,写,低电平有效,(,4,),RD*,读,低电平有效,(,5,),CS*,片选信号,低电平有效,(,6,),C/D*,控制,/,数据信号,输入,C/D*=1:,表示当前通过数据总线传送的是控制信息或状态字,C/D*=0:,传送的是数据信息,C/D*,RD*,WR*,CS*,几个信号组成的读写操作如表所示:,20,C/D*RD*WR*CS*,功能,0 0 1 0,0 1 0 0,1 0 1 0,1 1 0 0,CPU,从,8251,输入数据,CPU,向,8251,输出数据,CPU,读取,8251,的状态,CPU,往,8251,写入控制命令,21,二、,8251,的控制字与状态字,1.,工作方式字,约定双方的通信方式,数据格式,传送速率,a.,作用:对,8251A,工作方式进行选择,是异步方式还是同步方式,b.,格式:,S,1,S,0,EP,PEN,L,1,L,0,B,1,B,0,D,7,D,6,D,5,D,4,D,3,D,2,D,1,D,0,停止位,奇偶校验,字符长度,波特因子,(同步)(异步),0=,内同步,00=,不用,1=,外同步,01=1,位,0=,双同步,10=1.5,位,1=,单同步,11=2,位,0=,无校验,01=,奇校验,11=,偶校验,00=5,位,01=6,位,10=7,位,11=8,位,00=,同步,01=1,异步,10=16,11=64,22,例,1,:异步通信中,若帧数据格式为:字符长度,8,位,停止位,2,位,奇校验,波特率因数是,16,,则工作字是:,11011110B=DEH,outportb(0 x2B9,0 xde);,例,2,:同步通信中,若帧数据格式为:字符长度,8,位,双同步,字符,内同步方式,奇校验,则工作字是:,00011100B=1CH,。,2.,工作命令字,a.,作用:是确定,8251A,的实际操作,迫使,8251A,进行某种操作或工作状态,以便接收或发送数据。,23,b.,格式:,EH,IR,RTS,ER,SBRK,R,X,E,DIR,T,X,EN,D,7,D,6,D,5,D,4,D,3,D,2,D,1,D,0,进入,搜索,方式,内部,复位,发送,请求,错误,标志,复位,发,中止,字符,接收,允许,数据,终端,准备好,发送,允许,D,7,=1,有效,D,6,=1,有效,D,5,=1,有效,D,4,=1,复位,ER,D,3,=1,发中止字符(空号),=0,,正常操作,D,2,=1,允许接收,=0,,禁止接收,D,0,=1,允许发送,=0,,禁止发送,D,1,=1,已准备好,=0,,正常操作,例,3,:使,8251,内部复位,并且允许接收,又允许发送,则程序段为:,24,MOV DX,,,309H,;,8251,命令口,MOV AL,,,01000000B,;置,D6=1,,使内部复位,OUT DX,,,AL,MOV AL,,,00000101B,;置,D0=1,,,D2=1,,允许接收和发送,3.,状态字,a.,作用:,8251A,执行命令进行数据传送后的状态字存放在状态寄,存器中,,CPU,通过读出状态字进行分析和判断,以决定下一步的,操作。,b.,格式:,DSR,SYNDET,TE,OE,PE,T,X,E,R,X,RDY,T,X,RDY,D,7,D,6,D,5,D,4,D,3,D,2,D,1,D,0,数传机,就绪,同步,检出,格,式,错,溢,出,错,奇,偶,错,发送器,空,接收,准备好,发送,准备好,25,例,4,:若查询,8251A,接收器是否准备好,则用下列程序段:,MOV DX,,,309H,;状态口,IN AL,,,DX,;读状态字,AND AL,,,02H,;查,D,1,=1,?(,R,X,RDY=1?,),JZ L,;未准备好,则等待,MOV DX,,,308H,;数据口,例,5,:检查出错信息,则用下列程序段,MOV DX,,,309H,;状态口,IN AL,,,DX,TEST AL,,,38H,;检查,D,5,D,4,D,3,三位(,FE,,,OE,,,PE,),JNZ ERROR,;若其中有一位为,1,,则出错,26,4.8251A,的方式字和命令的使用,(,1,)方式字:,约定双方通信的方式,数据格式,传送速率等参数。,命令字:规定是发送数据,还是接收数据。,状态字:何时发,/,收、取决于状态字。,(2)8251A,的寻址,c/d,接,A0,,对,CPU,始终是偶地址,始终使用低,8,位传输数据,对,8251,,可以分奇地址和偶地址,偶地址传输数据,奇地址传输方式字、命令字、状态字。,27,(,3,),8251A,的初始化编程,异步方式下的初始化,8251A,的初始化总是从设置方式指令开始,命令指令不能放在方式指令之前。而方式指令必须紧跟在复位之后。如果在使用过程中改变,8251A,的工作方式,也必须先用命令指令的,D6,l,使,825lA,复位。,同步方式下的初始化,初始化的流程是:程序往此端口输出的依次为方式字、同步字符和控制字。,三、,8251A,应用举例,1.,要求,在甲乙二台,PC,之间进行串行通信,甲发送乙接收,要求把甲机上开发应用程序(其长度为,2DH,)传送到乙机中去。,28,采用:,起止式异步方式,,字符长度为,8,位,,2,位停止位,,波特率因子为,64,,无校验,,波特率为,4800,,,CPU,与,8251A,之间用查询方式交换数据口地址分配是:,309H,为,状态命令,/,状态口,,308H,为数据口,2.,分析,由于是近距离传输,可以不设,MODEM,,直接互连,同时,是,采用查询,I/O,方式,故收,/,发程序中只需检查发,/,收准备好的状,态是否置位,即可收发,1,个字节。,29,3.,设计,1,)硬件连接,DTE,(,Data Terminal Equipment,),根据以上分析把二台,PC,机都当作数据终端设备,DTE,,它们之间只需,T,X,D,,,R,X,D,和,GND,三根线连接就能通信。,2,)软件编程,发送程序:包括初始化,状态查询,,I/O,30,4.5,串行接口标准,一、,EIA-RS-232,接口标准,RS-232,标准是美国,EIA,(电子工业联合会)与,BELL,等公司一起开发的,,1969,年公布的通信协议,适合的数传率:,0,20Kbps,。,1.,电气特性,RS-232,对电气特性,逻辑电平和各种信号线的功能都作了规定。,逻辑,“,1,”,=-3V,-15V,“,0,”,=+3V,+15V,
展开阅读全文