您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 酒店餐饮 > 第8章 可编程串行通信接口芯片8251A
第8章常用输入输出接口芯片应用8.3可编程串行通信接口芯片8251A主要内容8.3.1串行通信基本概念8.3.2可编程异步通信接口8251A8.3.1串行通信基本概念串行通信协议–同步:就是互相通信的双方协调发送和接收之间的动作。–通信协议:为了实现同步,互相通信的双方必须就数据传输方式、同步控制方式、差错处理、应答方式和信号格式等问题作出共同遵守的一组规定。–通信方式:目前串行通信中数据传输的同步方法有两种,即异步方式和同步方式,相应的有异步通信协议和同步通信协议。异步通信协议异步方式通信ASYNC(AsynchronousDataCommunication),又称起止式异步通信,是计算机通信中最常用的数据信息传输方式。它是以字符为单位进行传输的,字符之间没有固定的时间间隔要求,而每个字符中的各位则以固定的时间传送。收、发双方取得同步的方法是采用在字符格式中设置起始位和停止位。在一个有效字符正式发送前,发送器先发送一个起始位,然后发送有效字符位,在字符结束时再发送一个停止位,起始位至停止位构成一帧。串行异步传输时的数据格式如下:①起始位:先发出一个逻辑“0”信号,表示传输字符的开始。②数据位:紧接着起始位之后。数据位的个数可以是5、6、7、8等,构成一个字符。通常采用ASCII码。从最低位开始传送,靠时钟定位。③奇偶校验位:数据位加上这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验数据传送的正确性。④停止位:它是一个字符数据的结束标志。可以是1位、1.5位、2位的高电平。⑤空闲位:处于逻辑“1”状态,表示当前线路上没有数据传送。例:试画出用异步协议传送字符“E”的波形图。要求加偶校验位和一位停止位。解:字符“E”的ASCII码为45H,即1000101,其传送的波形图如下。同步通信协议同步通信协议分为面向字符和面向比特两种:⑴面向字符的同步通信协议,这类协议目前有两种:①BM—国际标准化组织ISO提出的基本型同步通信协议;②BSC—IBM公司提出的二进制同步通信协议。⑵面向比特的同步通信协议①HDLC—国际标准化组织ISO提出的高级链路控制协议;②SDLC—IBM公司提出的同步数据链路控制协议;③ADCCP—美国国家标准化协会ANSI提出的先进数据通信协议;④X.25第二级—国际电报电话咨询委员会CCITT提出的协议;⑤DDCMP—美国DEC公司提出的数字数据通信信息协议。(3)面向字符的同步通信协议这种协议较早在二十世纪60年代就开始发展,目前仍在使用,其典型代表是IBM公司提出的二进制同步通信协议BSC。面向字符的同步通信协议BSC的帧格式:该协议以若干字符组成一个信息块一起发送,一个信息块称为一帧,用一些特殊定义的字符来定界一帧的开始、结束和分隔不同的段以及控制整个信息交换过程。此种协议的一般帧格式如下所示:SYN是同步字符,每帧开始有若干个SYN。接收端一旦检测到同步字符SYN,就知道一帧开始了。SOH(StartofHeader)表明标题的开始,称为序始符。标题中可以包括源地址、目的地址和路由指标等信息。STX(StartofText)称为文始符,标志着传送数据正文的开始。数据块是传送正文的内容。ETB(EndofTransmissionBlock)称为组终符。ETX(EndofText)称为文终符。块校验是对前面从SOH开始,直到ETX(或ETB)进行检验产生的校验码,可以用奇偶校验,也可以用CRC校验。面向字符的同步通信协议与异步通信协议相比,由于不需要在每个字符的前后加起始位和停止位,所以传输效率明显提高,尤其是当传输较长数据时效果更明显。这种协议与特定的字符编码集关系密切,所以不利于兼容,并且实现起来也比较麻烦,为了克服这些缺点,产生了面向比特的同步通信协议。(4)面向比特的同步通信协议也称面向位的同步通信协议,它有很多种,主要是SDLC、HDLC和ADCCP。这些协议大同小异,只有一些微小的差别,他们在一帧所传输的数据位不必是字符的整数倍,只要不超过规定的数据位总长度,可以为任意长度的比特位。此外,也不需要用特定定义的字符,而是用规定的比特模式来定界一帧的开始、结束以及定义控制信息,故称为面向比特的同步通信协议。这些协议中最著名和常用的是高级数据链路控制协议HDLC和同步数据链路控制协议SDLC。高级数据链路控制协议HDLC(1)HDLC的帧格式HDLC在链路上以帧作为传输信息的基本单位,帧格式的内容由5个部分组成,如图下所示:⑴标志场FHDLC以帧为单位传输,每一帧以一个标志字符开始,且以同一字符结束。这个标志字符使用唯一的8比特系列01111110。⑵地址场A指明次站的地址。对于命令帧,用作接收该帧的次站地址;对于响应帧,用于作出应答的次站地址。⑶控制场C8比特,用于表示命令和响应的类别和功能。HDLC的帧分为三类,根据该场的前两位来区分。第一位为0,表示是信息帧I;若第一位为1,表示是监控帧S或无编号帧U,S帧和U帧的区别取决于第二位,第二位为0是监控帧,第二位为1是无编号帧,如下图所示。⑷信息场I含要传送的数据,其长度是任意的。三类帧中,只有信息帧中含有信息场。⑸帧校验场FCS用于差错校验,常用16位CRC校验,校验范围从地址段开始到信息段,标志场和自动插入的“0”位不参加CRC校验。“0”比特插入和删除技术01111110作为标志字节出现在帧格式的开始和结束,若在信息场或其他场中也有这种字符,就无法区别。为了保证标志字节的唯一性,使之不与其他场中的信息混淆,采用了“0”比特插入和删除技术。发送方在发送标志字符外的所有信息(包括地址场、控制场和校验场)时,只要遇到连续5个二进制“1”,就自动插入一个“0”。当接收方接收数据时(标志场除外),如果连续收到5个二进制“1”,就自动地将其后的一个“0”删除,以恢复信息的原有形式。例:CPU要输出数据7F3AH,写出用HDLC帧格式的发送和接收过程。解:发送过程如下:7F3AH=0111111100111010B0111111100111010到发送器01111101100111010由发送器插入“0”位后发送接收过程如下:01111101100111010到接收器0111111100111010接收器删除插入的“0”位后到接收方的CPU这种“0”比特插入和删除技术是由接口硬件自动完成的。数据传送方式根据数据传送方向的不同有以下三种方式。(a)单工方式(b)半双工方式(c)全双工方式信号传输方式基带传输方式在传输线路上直接传输不加调制的二进制信号,如图所示。它要求传送线的频带较宽,传输的数字信号是矩形波。基带传输方式仅适宜于近距离和速度较低的通信。频带传输方式传输经过调制的模拟信号。在长距离通信时,发送方要用调制器把数字信号转换成模拟信号,接收方则用解调器将接收到的模拟信号再转换成数字信号,这就是信号的调制解调。实现调制和解调任务的装置称为调制解调器(MODEM)。采用频带传输时,通信双方各接一个调制解调器,将数字信号寄载在模拟信号(载波)上加以传输。因此,这种传输方式也称为载波传输方式。这时的通信线路可以是电话交换网,也可以是专用线。常用的调制方式有三种:调幅、调频和调相。调制解调器(MODEM)的基本原理一般的modem都具有调制和解调双重功能,利用调制和解调两个过程完成数字信号在模拟通道(例如电话线)上的传输。所谓调制过程就是用数字信号去控制载波信号的参数;解调过程则是检测载有数字信号的载波信号参数的变化,将数字信号分离出来。串行接口标准指计算机或终端(数据终端设备DTE)的串行接口电路与调制解调器MODEM等数据通信设备DCE之间的连接标准。RS-232C标准微型计算机之间的串行通信通常是按照RS-232C标准设计的接口电路实现的。如果使用一根电话线进行通信,那么计算机和MODEM之间的连线就是根据RS-232C标准连接的。其连接及通信原理如图所示:RS-232C是一种标准接口,D型插座,采用25芯引脚或9芯引脚的连接器,如图所示。①信号线RS-232C标准规定接口有25根连线。只有以下9个信号经常使用。TXD(2脚):发送数据线,输出。发送数据到MODEM。RXD(3脚):接收数据线,输入。接收数据到计算机或终端。RTS(4脚):请求发送,输出。计算机通过此引脚通知MODEM,要求发送数据。CTS(5脚):允许发送,输入。发出作为对RTS的回答,计算机才可以进行发送数据。DSR(6脚):数据装置就绪(即MODEM准备好),输入。表示调制解调器可以使用,该信号有时直接接到电源上,这样当设备连通时即有效。DCD(8脚):载波检测,输入。表示MODEM已与电话线路连接好。如果通信线路是交换电话的一部分,则至少还需如下两个信号:RI(22脚):振铃指示,输入。MODEM若接到交换台送来的振铃呼叫信号,就发出该信号来通知计算机或终端。DTR(20脚):数据终端就绪,输出。计算机收到RI信号以后,就发出信号到MODEM作为回答,以控制它的转换设备,建立通信链路。GND(7脚):地逻辑电平RS-232C标准采用EIA电平,规定:“1”的逻辑电平在-3V~-15v之间,“0”的逻辑电平在+3V~+15V之间。由于EIA电平与TTL平完全不同,必须进行相应的电平转换,MCl488完成TTL电平到EIA电平的转换MCl489完成EIA电平到ITL电平的转换8.3.2可编程串行通信接口8251A串行传输需要并行到串行和串行到并行的转换,并按照传输协议发送和接收每个字符(或数据块)。这些工作可由软件实现,也可用专用硬件电路实现。工作在异步方式的此类硬件电路称为:通用异步接收发送器(UART)。常用的UART芯片有:INS8250、Intel8251A。8251A是通用的同步/异步接收发送器,通过编程可以让它工作在同步方式或异步方式;支持全双工数据传送方式;当工作在异步方式时,传输速率为0~19.2Kb/s;能自动产生1位起始位,可通过编程设置数据格式,包括5~8位的字符位,0~1位奇偶校验位,1、1.5或2位停止位;具有奇偶错、溢出错和帧错误等检错能力。当工作在同步方式时,传输速率为0~64Kb/s;可自动检测、插入同步字符,通过编程设置用5~8位表示字符,并允许增加奇偶校验位。8251A外部引脚及内部结构框图(1)数据缓冲器:与系统总线相连,传送来自CPU的各种控制命令和发送的数据,以及8251A的状态字和接收到的数据。(2)读/写控制逻辑电路:接收来自CPU的各种控制信号并进行译码,从而确定操作的方式,实现8251A指定寄存器的读写操作。(3)发送器:由发送缓冲器、发送控制电路等组成。在发送控制电路的控制下,把发送缓冲器中待发送的并行数据转换成所要求的帧格式,然后在TXC的作用下,由TXD引脚一位一位地串行发送出去。发送完一帧数据后,TXRDY=1,通知CPU可发送下一个数据。(4)接收器:由接收缓冲器、接收控制电路等组成。在RXC作用下,接收RXD引脚上的帧格式串行数据,并转换成并行数据,进行校验。若发现错误在状态寄存器中保存标志,并行的数据放入接收缓冲器,发出RXRDY信号,通知CPU读取数据。(5)调制/解调电路:用来提供调制解调器需要的控制信号,方便8251A与调制解调器的连接。注意:由于8251A采用的是TTL电平,所以在与调制解调器连接时,中间需使用TTL与EIA电平转换电路。8251的外部引脚8251A初始化编程8251A在使用之前必须进行初始化,用来设定:同步方式还是异步方式、传输速率、字符格式、校验方式、停止位长度等。初始化编程时,向8251A写入的控制字分为方式控制字和命令控制字,另外,8251A还提供一个状态字。(1)方式控制字用来指定通信格式及数据格式。当通信双方约定波特率后,需要根据波特率及波特率因子,用以下公式确定RXC和TXC的时钟频率:时钟频率=波特率×波特率因子对于同步方式,时钟频率和波特率相等,也就是说波特率因子只能选择1。(2)命令控制字用来指定8251A进行哪种操作,包括发送
本文标题:第8章 可编程串行通信接口芯片8251A
链接地址:https://www.777doc.com/doc-3357689 .html