微机原理及接口技术第8章课件_第1页
微机原理及接口技术第8章课件_第2页
微机原理及接口技术第8章课件_第3页
微机原理及接口技术第8章课件_第4页
微机原理及接口技术第8章课件_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第 八章 串行通信接口课程名称:微机原理与接口技术授课方式:讲课、实验、提问及作业主讲人:金永贤第8章 串行通信接口教学重点 串行通信的基本概念 可编程串行接口芯片8251A8.1 串行传送的基本概念一、串行传送的特点 (1)串行传送是在一根传输线上一位一位地传送,这根线既作数据线又作联络线,也就是说要在一根传输线上既传送数据信息,又传送联络控制信息。 (2)串行传送数据格式有固定的要求(即固定的数据格式)。 (3)串行传送中对信号的逻辑定义与TTL不兼容,因此,需要进行逻辑关系和逻辑电平转换。 (4)串行传送信息的速率需要控制,要求双方约定通信传输的波特率。8.1 串行传送的基本概念二、串行

2、数据的传送方向 在串行通信中,数据通常是在两个站(如终端和微机)之间进行传送,按照数据流的方向可分成3种基本的传送方式:全双工、半双工和单工。 1.全双工 当数据的发送和接收分流,分别由两根不同的传输线传送时,通信双方都能在同一时刻进行发送和接收操作,这样的传送方式就是全双工(Full Duplex)制。如图9.1所示。 2.半双工 若使用同一根传输线既作接收又作发送,虽然数据可以在两个方向上传送,但通信双方能同时收发数据,这样的传送方式就是半双工(Half Duplex)制,如图9.2所示。采用半双工通信系统每一端的发送器和接收器,通过收发开关转接到通信线上,进行方向的切换,因目全产牛时间延

3、退。收发开关实际上是由软件控制的电子开关。 3.单工 若采用单根传输线只用作发送或只用作接收,进行单向传送,这样的传送方式就是单工(Simplex)制 8.1 串行传送的基本概念全双工半双工单工发送器接收器A站接收器发送器B站发送器接收器A站接收器发送器B站接收器A站发送器B站8.1 串行传送的基本概念三、信号的调制和解调 计算机的通信是要求传送数字信号,而在进行远程数据通信时,通信线路往往是借用现存的公用电话网,但是,电话网是为3003400HZ间的音频模拟信号设计的,这对二进制数据传输不适合。为此,在发送时需要将二进制信号调制成相应的音频信号,以适合在电话网上传输。在接收时,佑要对音频信号

4、进行解调还原成数字信号。 调制解调器调制(Modulating)把数字信号转换为电话线路传送的模拟信号解调(Demodulating)将电话线路的模拟信号转换为数字信号调制解调器MODEM具有调制和解调功能的器件合制在一个装置8.1 串行传送的基本概念四、信息的检错与纠错 串行数据在传输过程中,由于干扰而引起误码是难免的,这直接影响通信系统的可靠性,所以,对通信中差错控制能力是衡量一个通信系统的重要指标。我们把如何发现传输中的错误,叫检错。发现错误之后,如何消除错误,叫纠错。在基本通信规程中一般采用奇偶校验或方阵码检错,以反馈重发方式纠错。在高级通信控制规程中一般采用循环冗余码(CRC)检错,

5、以自动纠错方法来纠错。 8.1 串行传送的基本概念五、波特率与发送接收时钟 1.波特率 所谓波特率,是指单位时间内传送二进制数据的位数,其单位是位秒(b/s)。它是衡量串行数据速度快慢的重要指标。有时也用“位周期”来表示传输速率,位周期是波特率的例数。最常用的标准波特率是110 , 300,600,1200,2400 4800,9600和19200b/s。 2.发送/接收时钟 3.波特因子 所谓波特因子(Factor)是发送接收1位数据(1个数据位)所需要的时钟脉冲个数,其单位个/位。8.1 串行传送的基本概念 因此,在实际应用中,可根据所要求的传输波特率及所选择的波特因子来确定发送接收时钟的

6、频率。发收时钟脉冲与波特率之间的关系,可用下式表示: Txc=Baud X Factor (9.1) 例如:要求传输速率为1200Baud。 当选择Factor= 1个/位时 发收时钟频率(1200位/秒)X(1个位)= 1.2kHz 当选择Factor= 16个/位时 发收时钟频率(1200位秒)x (16个位)=19.2kHz 当选择Factor = 64个位时 发收时钟频率(1200位秒)x (64个位)= 76. 8kHz从关系式(9.1)可以看出,在波特因子选定的情况下,可利用改变发收时钟频率来控制串行通信的波特率。8.1 串行传送的基本概念六、串行通信的基本方式 根据在串行通信中,

7、对数据流的分界、定时及同步的方法不同,串行通信可分为异步串行通信方式和同步串行通信方式。 异步串行通信的基本特点是:异步串行通信是以字符为信息单位传送的。每个字符作为一个独立的信息单位(1帧数据),可以随机出现在数据流中,即发送端发出的每个字符在数据流中出现的时间是任意的,接收端预先并不知道。 同步串行通信的基本特点是:同步串行通信是以数据块(字符块)为信息单位传送,而每帧信息包括成百上千个字符,因此,传送一旦开始,要求每帧信息内部的每一位都要同步,也就是说,同步通信不仅字符内部的位传送是同步的,字符与字符之间的传送也应该是同步的,这样才能保证收发双方对每一位都同步。8.2 串行通信接口标准

8、在第七章并行接口中,我们了解到并行打印机接口所直接面向的不是打印机本身,而是并行打印机接口标准(CENTRONIES)。本节讨论的串行通信接口也有类似的情况,申行接口所直接面向的并不是某个具体的通信设备,而是一种串行通信的接口标准。所以,要进行串行通信接口的设计,就必须先讨论串行通信接口标准,然后,按照标准来设计接口电路。 串行通信接口标准经过使用和发展,目前已有几种。但都是在RS-232C标准的基础上经过改进而形成的。所以,以RS-232C为主来讨论。一、RS-232接口标准 串行接口标准RS-232C美国电子工业协会EIA上BELL等公司制定的通用标准串行接口1962年公布,1969年修订

9、1987年1月正式改名为EIA-232D设计目的是用于连接调制解调器现已成为数据终端设备DTE(例如计算机)与数据通信设备DCE(例如调制解调器)的标准接口可实现远距离通信,也可近距离连接两台微机属于网络层次结构中的最低层:物理层RS-232C的引脚定义232C接口标准使用一个25针连接器绝大多数设备只使用其中9个信号,所以就有了9针连接器232C与计算机中信号不兼容,连接时要经过电平转换。RS-232C的引脚(1)TxD:发送数据串行数据的发送端RxD:接收数据串行数据的接收端RS-232C的引脚(2)RTS:请求发送当数据终端设备准备好送出数据时,就发出有效的RTS信号,用于通知数据通信设

10、备准备接收数据CTS:清除发送(允许发送)当数据通信设备已准备好接收数据终端设备的传送数据时,发出CTS有效信号来响应RTS信号RTS和CTS是数据终端设备与数据通信设备间一对用于数据发送的联络信号RS-232C的引脚(3)DTR:数据终端准备好通常当数据终端设备一加电,该信号就有效,表明数据终端设备准备就绪DSR:数据装置准备好通常表示数据通信设备(即数据装置)已接通电源连到通信线路上,并处在数据传输方式DTR和DSR也可用做数据终端设备与数据通信设备间的联络信号,例如应答数据接收RS-232C的引脚(4)GND:信号地为所有的信号提供一个公共的参考电平CD:载波检测(DCD)当本地调制解调

11、器接收到来自对方的载波信号时,该引脚向数据终端设备提供有效信号RI:振铃指示当调制解调器接收到对方的拨号信号期间,该引脚信号作为电话铃响的指示、保持有效RS-232C的引脚(5)保护地(机壳地)起屏蔽保护作用的接地端,一般应参照设备的使用规定,连接到设备的外壳或大地TxC:发送器时钟控制数据终端发送串行数据的时钟信号RxC:接收器时钟控制数据终端接收串行数据的时钟信号 RS-232C的连接微机利用232C接口连接调制解调器,用于实现通过电话线路的远距离通信微机利用232C接口直接连接进行短距离通信。这种连接不使用调制解调器,所以被称为零调制解调器(Null Modem)连接连接调制解调器电话线

12、MODEM微机2345678202223456782022MODEM23456782022数据装置准备好DSR数据终端准备好DTR发送数据TxD接收数据RxD请求发送RTS允许发送CTS信号地GND载波检测CD振铃指示RI微机23456782022不使用联络信号的3线相连方式微机TxDRxDGND微机为了交换信息,TxD和RxD应当交叉连接程序中不必使RTS和DTR有效也不应检测CTS和DSR是否有效 “伪”使用联络信号的3线相连方式RTS和CTS各自互接,DTR和DSR各自互接表明请求传送总是允许、数据装置总准备好微机DSRDTRTxDRxDRTSCTSGND微机使用联络信号的多线相连方式通

13、信比较可靠,所用连线较多,不如前者经济微机DSRDTRTxDRxDRTSCTSGND微机8.3 串行通信接口的任务及组成 一、串行通信接口的基本任务 1.实现数据格式化 2.进行串/并转换 3.控制数据传输速率 4.进行错误检测 5.进行TTL与EIA电平转换 6.提供符合EIA-RS-232C接口标准所要求的信号线8.3 串行通信接口的任务及组成二、串行通信接口电路的组成 为了完成上述串行接口的任务,串行通信接口电路一般由可编程的串行接口芯片,波特率发生器,EIA与TTL电平转换器以及地址译码电路组成。其中,串行接口芯片,随着大规模集成电路技术的发展,通用的同步(USRT) Universi

14、al Sychronous Receiver and Transmitter和异步(UART)Universial Asychronous Receiver and Transmitter接口芯片种类越来越多,作为串行通信接口电路的核心芯片,会使电路结构比较简单。下面将讨论通用可编程申行接口芯片USART8251A。8.4 可编程串行接口芯片8251A 8251A是通用同步异步接收发送器USART(Univesal Synchronous Asynchronous Receiver and Transmitter),适合作异步起止式数据格式和同步面向字符数据格式的接口,其功能很强。先介绍它的外

15、部特性和工作原理,然后讨论它的编程及应用。 一、8251A的外部特性和内部逻辑 18251A外部引脚信号 8251A是用来作为CPU与外设或调制解调器之间的接口芯片,如图9.23所示。它的信号线可以分为4组:与CPU接口的信号线、状态信号线、时钟信号线和与外设(或调制器)接口的信号线。 8.4 可编程串行接口芯片8251A(1)面向CPU的连接信号 Do一D7 8根三态双向数据总线,通过它们,8251A与系统的数据总线相连。 RD* 读信号,当有效时,用来通知8251ACPU当前正在从8251A读取数据或状态信息。 WR* 写信号 ,当有效时,用来通知8251ACPU当前正在往8251A写取数

16、据或控制信息。 CS* 片选信号,是地址信号经译码得到,低电平时表示8251A被选中,高电平时 8251A被未选中。 RESET 芯片复位线,当该线上加高电平(宽度为时钟的6倍)时,芯片复位而处于空闲状态,等待命令。通常把它与系统的复位线相连,以便上电复位。 C/D* 地址线,若此引脚加“高电平,则CPU访问8251A命令寄存器或状态寄存器,若加低电平,则CPU访问数据寄存器。可见8251A芯片内部只有两个端口。8.4 可编程串行接口芯片8251A 表5-5 C/D* WR* RD*的编码和对应的操作 C/D*RD*WR*具体的操作 0 0 1 1 0 1 0 1 1 0 1 0CPU从825

17、1A读数据CPU往8251A写数据CPU从8251A读的状态CPU往8251A写控制命令8.4 可编程串行接口芯片8251A(2)状态信号(供CPU查询或向CPU申请中断) TxRDY(Transmitter Ready):发送器准备好,高电平有效。当它有效时,表示发送器已准备好接收CPU送来的数据字符,通知CPU可以向8251A发送数据。CPU向8251A写入了一个字符以后,TxRDY自动复位。 RxRDY(Receiver Ready):接收器准备好,高电平有效。当它有效时,表示8251A已经从它的串行输入端接受了一个字符,通知CPU读取数据,CPU从8251A读了一个数据后, RxRDY

18、自动复位。 TxE(Tmnsmitter Empty):发送器空,高电平有效。当它有效时,指示发送器中的数据已发送出去,已经变空。当8251A从CPU接收待发的字符后,自动复位。 SYNDET(Synchronous Detection)/BD(Break Detection):双功能引脚。这个引脚在同步方式时,作同步字符检出信号,为双向线。SYNDET是作为输人还是输出,取决于初始化程序指定8251A是工作于内同步或外同步。当8251A工作于内同步方式时,SYNDET是输出。当8251A工作于外同步方式时,SYNDET是输入。这个引脚在异步方式时,作间断信号检出BD,是输出。当检测到间断码时

19、,输出高电平。 8.4 可编程串行接口芯片8251A(3)时钟信号(包括发送器时钟、接收器时钟以及内部的工作时钟信号CLK) TXC*(Transmitter Clock):发送器时钟,由外部(波特率时钟发生器)提供。由它控制8251A发送数据的速率。在异步方式下TXC*的频率可以等于波特率,也可以是波特率的16倍或64倍。在同步方式下TXC*的频率与数据速率相同。 RXC*(Receiver Clock):接收器时钟,由外部(波特率时钟发生器)提供。其频率的选择和TXC*相同。实际应用中,把RXC*和TXC*连接在一起,使用同一个时钟源波特率时钟发生器。 CLK:工作时钟,由外部时钟源提供。

20、为芯片内部电路提供定时,并非发送或接收数据的时钟。 (4)面向调制器的接口信号 8251A提供了4个与MODEM相连的控制信号和数据发送以及数据接收信号线。8.4 可编程串行接口芯片8251ADTR*:数据终端准备好,是输出信号,低电平有效。它由工作命令字的D1置“1”变为有效,用以表示8251A准备就绪。DSR*:数据装置准备好,是输入信号,低电平有效。用以表示调制器已准备好。CPU通过读状态寄存器的D7位检侧这个信号。 RTS*:请求发送,是输出信号,低电平有效。用于通知MODEM,8251A要求发送。它由工作命令字的D5置“1”来使其有效。 CTS*:清除传送(即允许传送),是输入信号,

21、低电平有效。是MODEM对8251A的信号的响应,当其有效时8251A方可发送数据。 TXD: 发送数据线。 RXD: 接收数据线。8.4 可编程串行接口芯片8251A 8251A的基本性能: (1)可用于同步和异步传送、接收。 (2)同步5 8bit/字符,内同步或外同步,可自动插入同步字符(只能面向字符)。 (3)异步:5一8bit/字符,时钟速率为通信波特率的1,16,64倍。可产生1,1.5或2位的停止位。 (4)可自动产生、检测和处理中止字符。 (5)波特率:0-19.2kbps(异步)0-64kbps(同步)。 (6)完全双工、双缓冲发送接收器。 (7)错误检测:具有奇偶错、溢出和

22、帧错误等检测能力。 (8)全部输入输出与TTL兼容,十5V供电,28只引脚。8.4 可编程串行接口芯片8251A2. 8251A的内部结构框图 8251A的结构如图9.24所示,分成5个主要部分:接收器、发送器、调制控制、读写控制以及系统数据总线缓冲器。(1)数据总线缓冲器 CPU通过输入输出指令可以对它读/写数据,也可以写入命令字,读出状态信息。(2)接收器 接收RXD引脚上的串行数据并把它存入接收缓冲器。8.4 可编程串行接口芯片8251A具体工作原理如下: 异步方式,当允许接收和准备好接收数据有效时,接收器监视RXD线。在无字符传送时,RXD线上为高电平,当发现RXD线上出现低电平时,即

23、认为它是起始位。就启动一个内部计数器,当计数器计到一个数据位宽度的一半(若时钟脉冲频率为波特率的16倍时,则计数到第8个脉冲)时,又重新采样RXD线,若仍为低电平,则确认它是起始位,而不是噪声信号。此后在移位脉冲RXC(即每隔16个时钟脉冲)作用下把RXD线上的数据送至移位寄存器,经过移位,就得到了并行数据。对这个并行数据进行奇偶校验并去掉停止位后,通过内部总线最后送至数据总线缓冲器,此时发出RXRDY信号,告诉CPU字符已经收到。 在同步方式,接收器监视RXD线,每出现一个数据位就把它移一位,构成并行字节,并收寄存器与同步字符(由程序给定)寄存器的内容相比较,若不等,则8251A重复上述过程

24、;若相等,则表示已找到同步宇符,置SYNDET信号为高。在找到同步字符后,利用接收时钟RXC采样和移位RXD线上的数据位。且按规定的数据位装配成并行数据,送入数据总线缓冲器,同时发出RXRDY信号通知CPU。2. 起始位的检测起始检测确定已检测到起始位采样数据起 始 位时钟(RCLK)数据线(SIN)T16 T16 T8 T数据接收时钟频率是数据传输频率的16倍正确识别起始位,防止引干扰引起的误识别8.4 可编程串行接口芯片8251A (3)发送器 在异步方式时,发送器先在串行数据字符前面加上起始位,并根据约定的要求加上校验位和停止位,然后在发送时钟TXC的作用下,由TXD引脚一位二位地串行发

25、送出去。 在同步方式时,发送器在准备发送的数据前面先插入由初始化程序设定的一个或两个同步字符,在数据中插入奇偶校验位。然后在发送时钟TXC的作用下,将数据一位一位地TXD引脚发送出去。 (4)读写控制和调制控制 读写控制逻辑对CPU输出的控制信号进行译码以实现表9.5所示的读写功能。调制控制实现对MODEM的控制。8.4 8251A的内部结构框图数据总线缓冲器内部数据线D0D7调制控制读写控制逻辑RD*WR*C/D*CLKCS*RESET接收控制发送器接收器发送缓冲器发送控制TXDTXRDYTXEMPTYTXC接收缓冲器接收控制RXDRXRDYSYNDET/BDRXC DTR* CTS* RT

26、S* DSR*8.4 可编程串行接口芯片8251A 二、8251A的命令和状态字 8251A有一个方式命令字和一个工作命令字及一个状态字。 1. 方式命令字作用:指定通信方式及其方式下的数据格式8.4 可编程串行接口芯片8251A D1D0:确定工作于同步方式还是异步方式。 D1D0=00为同步方式,方式控制字后必须装入同步字符,并由同一个方式控制字规定装入单同步字符还是双同步字符; D1D0 00为异步方式,有3种组合来选择输入的时钟频率与波特率之间的系数。 D3D2 :确定每个字符的数据位(不包括奇偶校验位)。 D5D4:确定是否校验和奇偶校验的性质。 0=无校验 01=奇校验 11=偶校

27、验 8.4 可编程串行接口芯片8251AD7D6 :因同步方式或异步方式而异。 异步方式(D1D0 00)时:用来确定停止位个数。同步方式时D6用来确定是内(SYNDET为输出)还是外同步(SYNDET为输入),D7用来确定同步字符个数。外同步方式时,同步字符只用于发送。例1:某异步通讯,数据位为8位,1位起始位、2位停止位、奇校验、波特率系数为16。 则有:11011110B=0DEH MOV DX,309H ;8251A命令口 MOV AL ,0DEH OUT DX,AL 2. 工作命令字 二、8251A的命令和状态字 8251A有一个方式命令字和一个工作命令字及一个状态字。 作用:指定8

28、251A进行某种操作或处于某种工作状态2. 工作命令字 D0: 设置为 1允许8251A开始发送操作。只有命令字的D0=1,TxDRY才可能有效(为1)。 D1 :设置为1强制引脚DTR有效,表示数据终端准备好,通知调制解调器:8251A已准备好 D2 :设置为1允许接收数据, D2=0禁止接收数据。 D3 :设置为1迫使TxD端发送低电平,以此作断点字符。 D4:为1则对状态字的所有操作出错标志(FE,OE,PE)复位。 D5:设置为1强制RTS引脚有效,向调制解调器提出发送请求。 D6:为1强制8251A内部复位,使之回到准备接收方式字的状态。 2. 工作命令字D7:用于同步方式。为使82

29、51A进入同步搜索操作,将输入的信息和同步字符比较,一致则使SYNDET/BRKDET引脚有效,开始对数据的接收操作。例:若要使8251A内部复位,则有 MOV DX,309H MOV AL,01000000B OUT DX,AL 3. 状态字作用:反映8251A何时才能开始发送或接收数据,及接收数据有无错误3. 状态字 PE:是奇偶错标志位。PE=1表示当前产生了奇偶错。 OE:是溢出错标志位。OE=1,表示当前产生了溢出错,CPU没有来得及将上一字符读走,下一个字符又来到RXD端,它不中止8251A继续接收下一字符,但上一字符将被丢失。 FE:是帧校验错标志位。FE只对异步方式有效。FE=

30、1,表示未检测到停止位,不中止8251A工作。 上述3个标志允许用操作命令控制字中的ER位复位。 TxRDY 位:是发送准备好标志。 RxRDY位:接收准备好。 DSR:是数据装置准备好。DSR=1,表示外部设备或调制解调器已准备好发送数据据,这时输入引脚端DSR有效。 4. 8251A的方式命令和工作命令的使用 输出第一个同步字符1是单同步?输出操作命令控制字有复位命令?传送数据输出操作命令或输入状态字数据完否?输出第二个同步字符2输出方式选择控制字异步方式?YNYYNNY图9.25向8251A命令端口写入命令的顺序8.4 可编程串行接口芯片8251A 三、8251A应用举例 1.要求 甲乙

31、两台微机之间进行串行通信,甲机发送,乙机接收。要求把甲机上开发的应用程序(其长度为2DH)传送到乙机中去。采用起止式异步方式,字符长度为8位,2位停止位,波特率因子为64个/位,无校验,波特率为4800b/S。CPU与8251A之间用查询方式交换数据。口地址分配是:309H为命令/状态口,308H为数据口。 2.分析 由于是近距离传输,可以不需MODEM,而直接互连,采用查询I/O方式,故收/发程序中只需检查发/收准备好的状态是否置位,即可发收1个字节。 8.4 可编程串行接口芯片8251A3.设计(1)硬件连接 根据以上分析把两台微机都当作DTE,它们之间只需TxD、RXD、SG三根线连接就

32、能通信。采用8251A作为接口的主芯片再配置少量附加电路,如波特率时钟发生器、RS-232C与TTL电平转换电路就可构成串行通信电路。(2)软件编程 题意可知,接收和发送程序应分别编写,每个程序中包括8251A初始化程序、状态查询和输入/输出程序。 8251A初始化时,首先要确定其方式选择控制字和工作命令控制字。根据题中的要求可有: 发送方的方式选择控制字为11001111B=CFH,工作命令控制字为00110111B=37H 接收方的方式选择控制字为11001111B=CFH,工作命令控制字为00010100B=14H。 8.4 可编程串行接口芯片8251A发送端的发送程序(略去STACK和DATA段):CSEG SEGMENT ASSUME CS: CSEG, DS: CSEGTRA PROC FARSTART:MOV DX,309H ;命令口 MOV AL, 00H ; 空操作,向命令口送任意数 OUT

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论