1、单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,第三章,串行接口芯片,8251,第一节,串行接口及通讯,第二节,可编程串行通讯接口,8251A,第三章,串行接口芯片,8251,一、,串行接口,串行通讯的标准化,硬件支持,传送速率,为了避免并行通信存在的缺点,,可以采用串行通讯方式,在该方,式下,数据是按位传送的。,二、,通讯方式,第三章,串行接口芯片,8251,1,、串行通讯的标准化:,为了便于通讯,串行通讯作了相,应的标准化,即规定了数据传输的,格式。(实际上从串行接口实现数,据通讯到由计算机组成网络通讯,有,许多层次的标准,如现在,INTELNET,
2、的传输协议)。,第三章,串行接口芯片,8251,基本的串行通讯有两种类型:,1),同步通讯,2),异步通讯。,同步通讯格式,同步字符,信息帧,校验字符,起始位,数,据,校验位,停止位,(1,1.5,2,位,),5 8,个,字符,异步通讯格式,第三章,串行接口芯片,8251,2,、传送速率:,串行通讯中规定,每秒传送的位,数为波特率如:,110,,,300,,,600,,,1200,,,1800,,,2400,,,4800,,,9600,,,19200,标准,波特率。,第三章,串行接口芯片,8251,3,、硬件支持:,为实现串行通讯还必须有硬件,支持,即串行口接口的标准化。,最常用的是,RS-2
3、32-C,标准。,第三章,串行接口芯片,8251,1,)信号电平标准:,TTL,与,RS-232,电平变换,接口,1489,1488,1489,1488,接口,TTL,TTL,TTL,TTL,RS-232,RS-232,2,)控制信号定义:,25,芯插头插座。,第三章,串行接口芯片,8251,通讯方式:,1,、,全双,I,方式,半双,I,方式:,通讯通道中,对数据发与收两个传,输方向采用不同的通路,该通讯方式为,全双工方式。,若收与发两个传输方向使用单一通,道,为半双工方式。,第三章,串行接口芯片,8251,2,、,同步方式、异步方式:,将许多数据组成一个信息组(信,息帧),信息是一帧一帧发送
4、的为同步,方式,,用于大数据和远距离传送。,按字符一一传送为异步方式。,3,、差异:,1,)同步方式须双方用一个时钟进行协调。,2,),异步方式虽也须约定一个时钟作为每一位,的长度,但无须将时钟发送出去。,3,)同步方式比异步方式效率高,第三章,串行接口芯片,8251,可编程串行通讯接口,8251A,:,一、,基本性能,二、,8251,基本原理,四、,8251,的编程,五、,编辑举例,三、,8251,中的管脚信号,第三章,串行接口芯片,8251,基本性能:,1,、,可工作于同步方式(波特率,064K,);,异步方式(,019.2K,),2,、,在同步方式下,可自动测检同步,字符,还增加了奇偶校
5、验。,3,、异步方式下,可自动形成起始位,,并可根据设定增加,1,,,1.5,,,2,个停,止位,并可提供一位奇偶检验位。,8251,基本原理:,1,、编程结构,模式寄存器,同步字符寄存器,控制,寄存器,同步字符寄存器,接,收,移位,寄存器,数据输入缓冲器,状态,寄存器,发送移位,寄存器,数据输出缓冲器,v cc,+5v,GND,串行输入,RxD,TxE,TxD,串行输出,DSR,DTR,CTS,RTS,SYNDET,RxC,TxC,时钟,C/D,CS,TxRDY,RxRDY,RD,WR,RESET,D7D0,CLK,第三章,串行接口芯片,8251,接收移位寄存器(,1,个):,从串行口进入的
6、串行数据,经,寄存器移位处理后,变为,8,位并,行数据。,第三章,串行接口芯片,8251,数据输入缓冲寄存器(,1,个):,处理后的,8,位并行数据存于该,寄存器,并将传给,CPU,。,第三章,串行接口芯片,8251,数据输出缓冲寄存器(,1,个):,CPU,将要输出的数据送入该寄,存器。该寄存器与上一寄存器,地址相同。,第三章,串行接口芯片,8251,发送移位寄存器(,1,个):该寄,存器用移位方式,将上一个寄,存器传来的数据,变为串行数,据发送出去。,第三章,串行接口芯片,8251,控制寄存器(,1,个):用于,控制,8251,的工作,可编程设置。,第三章,串行接口芯片,8251,状态寄存
7、器(,1,个):用于,提供,8251,的状态信息。,第三章,串行接口芯片,8251,模式寄存器(,1,个):可编程设,定,8251,的工作方式。,如:同步异步;接收发送字符格式等。,同步字符寄存器(,2,个):用于容,纳同步方式中的同步字符。,第三章,串行接口芯片,8251,CS,:,片选信号,第三章,串行接口芯片,8251,D,0,D,7,:,数据线,第三章,串行接口芯片,8251,RD,、,WR,:,读、写信号,第三章,串行接口芯片,8251,C/D,:,控制,/,数据信号,用于,区别送往,8251,的信息。,第三章,串行接口芯片,8251,TXRDY,:,发送器准备好信号,,用,通知,C
8、PU,,,8251,已准备好,发送一个字符,当,8251,获得,CPU,数据后,该信号恢复为低,可,用于,CPU,查询或中断。,第三章,串行接口芯片,8251,TXE,:,发送器空信号。用于表明,发送动作已完。,第三章,串行接口芯片,8251,SYDENT,:,可用于同步或异步两个工作状态。,1,)当,8251,设定为同步方式时,,SYDENT,为输出端,,当其为高电平表示已接收到传来的同步字符。,2,)在外同步方式下,,SYDENT,输入端,此时同步字,符由其它机构检测,当外部检测到同步字符以后,,从,SYDENT,会向,8251,输入一个正信号,通知已检,测,到同步字符达到了同步。,为输出
9、端,当,8251,收到一个全由,0,构成的字,符时,,SYDENT,输出高电平。,表明数据出了间断。,同步方式:,异步方式:,第三章,串行接口芯片,8251,2,、与外设信号的连接:,CPU,控制寄存器,状态寄存器,外,设,软件设置,DTR,RTS,CTS,DSR,TXRDY,软件查询,第三章,串行接口芯片,8251,DTR,:,数据终端准备好信号,,是由,8251,发往外设的,,CPU,通,过命令使,8251,的该信号有效。,通知外设,,CPU,已准备就绪。,第三章,串行接口芯片,8251,DSR,:,数据设备准备好信号。,由外设送给,8251,,有效时表明,外设数据已准,备好。,CPU,可
10、通,过状态寄存器,测量该信号。,第三章,串行接口芯片,8251,RTs,:,请求发送信号。是,8251,发给外设,有效时表明,CPU,已,准备好发送数,据,,CPU,通过控,制寄存器来设定该信号。,第三章,串行接口芯片,8251,CTS,:,清除,RTS,信号。是外设对,RTS,的响应信号,当其有效时,,8251,才,能执行发送操作。该信号,通过影响,TXRDY,来与,CPU,联络。,实际使用时,可根据需要选用,,但,CTS,必须为低,因为,CTS,为,低将使,TXRDY,为高有效,,CPU,才,能向,8251,发送数据。,第三章,串行接口芯片,8251,TXRDY,为高有效,,CPU,才能,
11、向,8251,发送数据。,第三章,串行接口芯片,8251,TXD,:,发送器数据信号端,,为,8251,串行数据出口,第三章,串行接口芯片,8251,RX,D,:,接收器数据信号端,,为,8251,串行数据入口。,第三章,串行接口芯片,8251,TX,C,:,用于控制发送字符速度。,第三章,串行接口芯片,8251,RXC,:,用于控制接收字符速度。,第三章,串行接口芯片,8251,CLK,:,时钟输入端。,要求,异步方式下:,CLK 4.5,倍波特率;,RXC=,波特率,TXC=1,16,64,倍波特率,同步方式下:,CLK 30,倍波特率;,RXC=TXC=,波特率,8251,CLK,时钟,
12、RXC,时钟:决定接收波特率,RXD,TXC,时钟:决定发送波特率,TXD,第三章,串行接口芯片,8251,8251,的编程:,1,、,8251,初始化,3,、,控制寄存器方式字,4,、,状态寄存器格式,2,、,模式寄存器格式,第三章,串行接口芯片,8251,8251,初始化:,同前面一样,当,8251,与,8086,相连时,仍存在奇偶地址问题。因此一般将,与 相连。,当,C/D=0,时:为,8251,的输入、输出,数据缓冲器,C/D=1,时:,为,8251,的控制状态,寄存器。,第三章,串行接口芯片,8251,复位操作,输出模式字,输出第一个同步字符,输出第二个同步字符,同步方式,两个同步,
13、字符?,传送数据,输出控制字,复位,完否,C/D=A1=1,C/D=A1=1,C/D=A1=1,C/D=A1=0,C/D=A1=1,N,N,Y,N,Y,Y,N,Y,第三章,串行接口芯片,8251,2,、模式寄存器格式:,S2 S1 EP PEN L2 L1 B2 B1,有否校验:,0,:无,1,:有,1,:偶校验,0,:奇校验,奇,/,偶校验,停止位,波特因子,数据位,00,:无定义,00,:,5,位,00,:同步模式,01,:一个停止位,01,:,6,位,01,:波特因子为,1,10,:,1.5,个停止位,10,:,7,位,10,:波特因子为,16,11,:,2,个停止位,11,:,8,位,
14、11,:波特因子为,64,异步模式,第三章,串行接口芯片,8251,其中波特因子关系如下,TXC,,,RXC,的时钟频率,=,波特因子,波特率,例:若要求发送波特率为,300,,当,TXC,为,4800 HZ,时,可计算得,波特因子,=16,4800=,波特因子,300,第三章,串行接口芯片,8251,奇偶校验:,0,:奇,1,:,偶,SCS ESD EP PEN L2 L1 0 0,同步字符数,同步方式,有否校验,数据数,同步方式,0,:,2,个,0,:内同步,0,:无,00,:,5,个,1,:,1,个,1,:外同步,1,:有,01,:,6,个,11,:,8,个,10,:,7,个,第三章,串
15、行接口芯片,8251,3,、控制寄存器方式字:,EH TR RTS ER SBRK RXE DTR TXEN,TXEN,:,输出使能为,1,时,才能使数据由,8251,向外传送,DTR,:,与引脚,DTR,直接联系,置,1,有效,RXE,:,输出使能为,1,时,才能使,8251,接收数据,SBRK,:使,TXD,为低(即发送空白字符),置,1,有效,ER,:,使状态寄存器中的出错标志复位,置,1,有效,RTS,:,与引脚,RTS,有关。置,1,有效,IR,:,复位初始化,EH,:,用内同步模式,为,1,有效时,,8251,会对同步字符进行检索。,第三章,串行接口芯片,8251,状态寄存器格式:
16、DSR SYDENT FE OB PE TXE RXRDY TXRDY,TXRDY,:,为,1,表明当前数据输出缓冲器为空。,RXRDY,:,为,1,表明,8251,接收到一个字符。,TXE,:,为,1,表明当前输出移位寄存器正处于等待处理,状态。,PE,:,为,1,时,奇,/,偶检验有错。,OB,:,超越错误,FE,:,帧格式错,SYNDET,:与,SYNDET,有关,DSR,:与,DSR,引脚有关,第三章,串行接口芯片,8251,编辑举例:,8086,RD,WR,CS,C/D,RD,WR,译,码,1 0 0 1 0 0 1 0,A1,A0A15,A15,A8 A7 A6 A5 A4 A3
17、 A2 A1 A0,1 0 0 1 0 0 0 0,数据:,0050H,控制、状态:,0052H,C/D,第三章,串行接口芯片,8251,1,、异步模式下的初始化:,MOV AL,,,01111,,,1010B,异步,波特因子,16,。,OUT 52H,,,AL,7,个数据位,偶效验,,2,个停止位。,MOV AL,,,0011,,,0111B,;,控制字,发送启动,接收启动。,OUT 52H1AC,第三章,串行接口芯片,8251,2,、同步模式下的初始化:,MOV AL,,,0111,,,0100B,;,同步模式,,2,个同,步字符,,7,数据位,OUT 52H,,,AL,偶效验。,MOV
18、AL,,,16H,OUT 52H,,,AL 2,个同步字符均位,16H,OUT 52H,,,AL,MOV AL,,,1001,,,0111B,;,发送启动接收启动。,OUT 52H,,,AL,第三章,串行接口芯片,8251,3,、利用状态字编程:,MOV AL,,,01111,,,1010B,;,异步,波特因子,16,,,7,个数据位。,OUT 52H,,,AL 2,个停止位,偶效验。,MOV AL,,,0011,,,0101B,,,控制字。,OUT 52H,,,AL,MOV DI,,,0,;,变址寄存器,MOV CX,,,80,;,80,个字符,BEGIN,:,IN AL,,,52H,第三章,串行接口芯片,8251,TEST AL,,,0000,,,0010B,;测,RXRDY,位,JE BEGIN,IN AL,,,50H,;,读入字符,MOV DX,,,OFFSET BUFFER,MOV DX+DI,,,AL,INC DI,IN AL,,,52H,;,读状态字,TEST 0011,,,1000B,;,有无出错?,JNZ ERR,LOOP BEGIN,JMP EXIT,ERR,:,






