教师怎样组织幼儿游戏课件_第1页
教师怎样组织幼儿游戏课件_第2页
教师怎样组织幼儿游戏课件_第3页
教师怎样组织幼儿游戏课件_第4页
教师怎样组织幼儿游戏课件_第5页
已阅读5页,还剩94页未读 继续免费阅读

下载本文档

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

文档简介

第七章 通信接口技术,7.1 概述 7.2 并行接口技术 7.3 可编程并行接口芯片 Intel 8255A,7.1 概述,计算机与外部的信息交换称为通信(Communication),基本的通信方式有两种,一种是并行通信,另一种是串行通信。,并行通信时,数据各位同时传送。例如CPU通过8255A与外设交换数据时,就采用并行通信方式。这种方式传送数据的速度快,但使用的通信线多,如果要并行传送8位数据,需要用8根数据线,另外还要加上一些控制信号线,随着传输距离的增加,通信线成本的增加将成为突出的问题,而且传输的可靠性随着距离的增加而下降,因此并行通信适用于近距离传送数据的场合。,在远距离通信时,一般都采用串行通信方式,它具有需要的通信线少和传送距离远等优点。串行通信时,要传送的数据或信息必须按一定的格式编码,然后在单根线上,按一位接一位的先后顺序进行传送,发送完一个字符后,再发送第二个;接收数据时,每次从单根线上一位接一位的接收信息,再把它们拼凑成一个字符,送给CPU作进一步处理。当微机与远程终端或远距离的中央处理机交换数据时,都采用串行通信方式。采用串行通信的另一个出发点是,有些外设,如调制解调器(MODEM)、鼠标器等。本身需要用串行方式通信。,7.1.1 串行通信和串行接口,一、串行通信基本概念,串行通信:数据被逐位顺序传送,分为串行同步通信和串行异步通信。,串行通信是将数据一位一位地传送,它的速度比并行传送要慢,它适用于主机与外设间距离较远的场合。串行通信可以在两台微机间进行,也可以在微机与外设,或是外设与外设间进行,前题是它们采用相同的串行通信标准,以及波特率、数据格式等设置相同。不提采用什么标准,单纯提采用相同的波特率,是不能正确地在两台微机间进行串行数据传送的。,1串行通信,2串行通信接口,完成串行通信任务的接口称为串行通信接口。计算机在处理数据时总是以并行方式进行数据处理,而外部设备如果是串行通信方式,那么就需要将串行信息转变为并行信息,而计算机想要将信息传送给外设也必须将并行数据转换成串行数据。这样就需要一个转换信息的接口即串行接口。与并行接口相比较,串行接口应用更为广泛。因此,串行接口和串行通信的标准化问题比并行接口更为突出和重要。,一台微机要接入一个串行通信系统,通常采用图7-1所示的结构。以标有“接口线”的虚线为界分为左右两侧。右侧为通信系统,数据线路设备DCE是通信线路末端设备, 用于与用户设备相连。左侧称为数据终端设备DTE属于用户,它包括微机主机和串行接口板,它们之间通过系统总线相连接。串行通信接口的标准化就是指DTE与DCE之间的标准化。,3数据传送方式,串行通信时,数据在两个站(或设备)A与B之间传送,按数据流方向的不同可分为单工、半双工、全双工和多工等几种传送方式。如图7-2所示。,单工(Simplex)方式只允许数据按一个固定的方向传送。采用这种方式时,就已经确定了通信双方中的一方为接收端,另一方为发送端。这种确定方式是不可以改变的。,半双工(Half Duplex)通信是指信息的发送和接收要同时公用一条线,在半双工方式中,数据可在两个设备之间任一个方向传输,但两个设备之间只有一根传输线,故同一时间内只能在一个方向上传输数据,不能同时收发,故在通信换向时接口部分要靠电路转换,如图7-2(b)。无线电对讲机就是半双工传输的一个例子,一个人在讲话的时候,另一个人只能听着,因为一端在发送信息时,接收端的电路是断开的。,全双工(Full Duplex)通信是指接口对接收和发送的信息用不同的通道供信息的发送和接收,可同时进行,这就意味着工作于全双工方式下的串行通信信息的传递要用两条线即发送线、接收线,如图7-2(c)。采用全双工的系统可以同时发送和接收数据,电话系统就是一个全双工传输数据的例子。计算机的主机和显示端(它由带键盘的CRT显示器构成)进行通信时,通常也采用全双工方式,一方面,键盘上敲入的字符可以送到主机内存,另一方面主机内存的信息可以送到显示器终端。在键盘上敲入一个字符后,并不立即显示出来,而是等计算机收到该字符后,再会送给终端,由终端将该字符显现出来。这样,对主机而言,前一个字符的回送过程和后一个字符的输入过程是同时进行的,并通过不同的线路进行传送,即系统工作于全双工方式。,多工方式下采用的多路复用技术主要有时分复用TDM和频分复用FDM两种。前者将共用的物理线路分成若干时间片,轮流为各信号占用,其特点是电路简单,抗干扰性强;后者利用频率调制原理将要发送的信号搬移到不同频段后同时或不同时地发送,其特点是效率高,但电路复杂,抗干扰能力弱。,在计算机串行通讯中主要使用半双工和全双工方式。,4异步通信和同步通信方式,串行通信可分为两种:一种为同步通信(Asynchronous);一种为异步通信(Synchronous)。,同步通信是将所要发送信息组成一个信息组(通常称为帧),在每帧信息的开始要有同步字符(12)个,在数据线上要保持连续的字符,没有信息时也要填上专用空字符,因为同步传输不允许在传输一帧信息时出现间隙。同步通信特点:传送信息量大,数度高,适宜于快速传递,灵活性差。,异步通信时,在字符开始要有起始位,一个字传输的结束要用间隔位进行字间隔。通常一组数据由多个字符组成,而字符是若干数码位的集合。本方式一次传送一个字符,若要传送一批字符,则需要反复调用该方式。各字符出现于数据场中的相对时间是随意的,没有专门的时钟控制。异步通信的特点:灵活性好,便于处理实时性强的串行数据;速度低,仅适宜于中低速率传输。,异步通信:发/收双方可以没有共同的时钟。字符作为一个独立的信息单元,字符出现在数据流中的时间是任意的;而每个字符中的各位以固定的时间传送。因此在同一字符内是同步的,而字符与字符之间不同步(异步) 同步通信:用同一时钟作为收发双方的同步信号,每个字符及位都是同步的,串行通信协议,协议:通信收/发双方必须共同遵守的基本通信规程 协议内容:一般包括收发双方的同步方式、传输控制步骤、差错检验方式、数据编码、数据传输速率、通信报文格式及控制字符定义 两类通信协议 异步通信协议 同步通信协议(自学),二、异步通信及其协议,为使通信双方确认数据有效,在字符中设置起、止标志位 起始标志位:每个字符前添加的一个“0” 停止标志位:每个字符后添加的若干个“1” 字符之间的空隙用“1”填满,此时的“1”称为空闲位,“0”为空号、“1”为传号,传送一个字符的信息格式:规定有起始位、数据位、奇偶校验位、停止位等,其中各位的意义如下:,1起始位:先发出一个逻辑”0”信号,表示传输字符的开始。,2数据位:紧接着起始位之后。数据位的个数可以是5、6、7、8等,构成一个字符。通常采用ASCII码。从最低位开始传送,靠时钟定位。,3奇偶校验位:数据位加上这一位后,使得“1”的位数应为 偶数(偶校验)或奇数(奇校验),以此来校验数据传送的正确性。,4停止位:它是一个字符数据的结束标志。可以是1位、1.5位、2位的高电平。,5空闲位:处于逻辑“1”状态,表示当前线路上没有数据传送。,注:异步通信是按字符传输的,接收设备在收到起始信号之后只要在一个字符的传输时间内能和发送设备保持同步就能正确接收。下一个字符起始位的到来又使同步重新校准。,三、串行通信的标准,为了供通信双方相互衔接,人们就建立了在通信过程中收发双方共同遵守的标准,标准包括:传输率、电特性、信号名称及接口标准。,传输率:传输率是指每秒钟传输代码的位数,也称波特率。在串行通信中,常用波特率来表示数据传送的速率。在计算机中,每秒钟内所传送数据的位数称为波特率,单位为波特,实际上它是传送每一位信息所用的时间的倒数。,如果一个串行字符由 1个起始位,7个数据位,1个奇偶校验位和一个停止位等10个数位构成,每秒钟传送120个字符,则数据传送的波特率为:,10位/字符120字符/秒=1200波特(Bit/s),传送每位信息所占用的时间为:,1秒/1200=0.833毫秒,常用的波特率为110,300,600,1200,2400,4800,9600和19200波特(Bit/s),它也是国际上规定的标准波特率。同步传送的波特率高于异步传送方式,可达到64000 Bit/s。,产生波特率的器件叫波特率发生器,经过对外部定时时钟进行线性交换,可对波特率进行调节,以适应不同系统或工作状态对波特率的要求,对于编程来说,对所编程器件8250可通过编程修改其波特率因子进行调整。,四串行通信中传送速率的表示,并行通信中通常以每秒传送的字节数来表示传送速率,而串行通信中通常以每秒传送的比特数(比特率)来表示传送速率。,波特率和比特率的关系,我们一般所说的比特率,是指系统单位时间内传送有效二进制数据的位数,以bps(位/秒)为单位;而波特率是用来衡量通信线路基本电信号发送率的,也就是说,波特率指发送到通信线路上的电脉冲速率,它是对硬件性能的一种描述,而不仅仅是对信息的度量。,波特率和比特率有如下关系:,基波传送方式下,通信线路状态每改变一次即送出一位数据,这时波特率比特率;,载波传送方式下,通信线路状态每改变一次可能送出n位数据,这时比特率n波特率。,波特率和接收/发送时钟的关系,另一个表示传送速率的参数是收/发时钟频率。收/发时钟用于对传送的数据进行定位和同步控制。一般来说,波特率和收/发时钟频率有如下关系:,同步传送方式下,收发双方使用同一时钟进行同步,所以收/发时钟频率波特率。,异步传送方式下,接收方和发送方使用不同的时钟源,因此需要在字符起始位进行时钟同步,这时收/发时钟频率n波特率(n称为波特率因子,可以取16、32、64等值,可视系统需要而定)。,7.2 并行接口技术,CPU芯片本身总是以并行方式接收和发送数据,因此并行接口是微机系统中最常用的接口之一。实现并行输入/输出的接口就是并行接口。,并行接口的特点是:可以在多根数据线上同时传送以字节或字为单位的数据。并行接口(与其相对应的串行接口相比)具有传输速度快、效率高等优点;但由于所用电缆多,在长距离传输时,电缆的损耗、成本及相互之间的干扰会成为突出的问题。所以并行接口一般适用于数据传输率较高、而传输距离较短的场合。,并行接口概述,并行接口连接CPU与并行外设,实现两者间的并行通信,在信息传送过程中,起到输出锁存或输入缓冲的作用。 并行接口的典型硬件结构包括: 1、一个或一个以上具有锁存或缓冲的数据端口 2、与CPU进行数据交换所必须的控制和状态信号 3、与外设进行数据交换所必须的控制和状态信号 4、端口译码电路 5、控制电路,一、简单的并行接口技术,简单的并行接口可由一些锁存器和(或)三态门组成。需要注意的是,单纯的三态门只能用作总线缓冲器/驱动器,它没有锁存功能,不能保持数据;单纯的锁存器不能起到隔离总线的作用,一般只用作输出接口而不用作输入接口;而带三态门输出的锁存器既可用作输入接口,又可用作输出接口,以实现总线的隔离。,常用来构成简单并行接口的芯片包括:8位三态输出缓冲驱动器74LS244/240(反相)、8位三态双向缓冲驱动器74LS245、8位三态双向锁存器74LS373 /573等。,二、接口芯片的功能及分类,1.接口芯片的功能,(1)寻址功能,芯片有片内寄存器,由端口地址访问 对芯片写控制字, 设置芯片功能 CPU与芯片寄存器间交换信息 芯片有片选控制线CS CPU地址线经译码产生 片选控制线 CS CS和片内寄存器端口地址确定 片内寄存器地址值的唯一性,(2)联络功能:如果需要,接口芯片应能完成CPU与外设之间的通信挂钩任务。,(3)输入/输出功能:接口芯片应能确定是CPU输出数据和控制信息,还是外设输入数据和状态信息。,(4)数据转换功能:接口芯片应能完成CPU和外设间不同数据格式的转换,如并/串转换、串并转换、A/D转换、D/A转换等等。,(5)错误检测功能:在某些情况下,需要接口芯片能检测数据传送时引入的错误,包括传输错误、覆盖错误等。,(6)复位功能:接口芯片应能接收复位信号,以重新启动接口本身及所连接的外设。,(7)可编程功能:一些接口芯片可以通过软件改变其内部控制字内容,这样用户在硬件设置好后仍可以改变系统的工作方式。,信息交换功能,芯片控制 (命令)字的 写入特点 数据、状态、控制信息的 交换特点 数据、状态、控制信息的 传送方向,按用途分类,通用接口芯片 74LS373、74LS245、8282、8286 8255A、8251、8253 专用接口芯片 DMA接口芯片8237A 中断接口芯片8259A,2接口芯片的分类,按控制方式分类,不可编程控制芯片功能是由硬件接线决定,不能用软件来控制 74LS373、74LS245、8282、8286 注:芯片的功能不可改变 可编程控制芯片功能:可用软件编程的方法改变,使接口具有更大的灵活性和通用性 8255A、8253、8259A、8237A 注:芯片的功能可改变,按数据传输方式分类,并行接口芯片 将数据的各位同时在多根并行传输线上进行传输,适于短距离、高速通信,串行接口芯片 将数据的各位按时间顺序依次在一根传输线上传输,适于长距离、中低速通信,0 1 1 0 1 0 1 0,并行接口连接外设示意图, 外设将数据=接口 状态线“数据输入准备好”=1; 接口把接收到数据输入缓冲寄存器; 数据输入回答=1,作为对外设响应信号; 外设撤消“数据”和“数据输入准备好”信号; CPU从接口读取数据 接口收到数据,设置“输入准备好”状态位; 供给CPU查询 或问CPU发中断请求; CPU从接口读取数据, 接口自动清除状态寄存器输入准备好状态位(准备好); 数据总线处于高阻状态。开始下一个输入过程,输入过程,输出 :每当外设从接口取走一个数据以后, CPU往接口中输出数据 接口中状态寄存器发中断请求; (“输出准备好”=1,表示CPU可以往接口中输出数据) CPU向接口输出数据,数据到接口缓冲寄存器; 接口自动清除“输出准备”好。 将数据送往外设: 接口向外设发送一个“驱动信号”,启动外设接收数据。 外设收到数据向接口发一个“数据输出回答”信号; 接口收到的信号将状态寄存器中“输出准备好”=1; CPU输出下一个数据。,输出过程,8255A是Intel公司生产的一种可编程并行输入/输出接口芯片。它的通用性强,可以方便地和微机连接,用来扩展输入/输出口。8255A有3个8位并行端口,根据不同的初始化编程,可以分别定义为输入或输出方式,以完成CPU与外设的数据传送。 ,7.3可编程并行接口芯片8255A,图 8255A引脚,8255A采用40脚双列直插式封装,引脚如图所示。下面分别介绍各个引脚的功能。,8255A的引脚功能,D0D7:双向三态数据总线。,RESET:复位信号,输入。当RESET端得到高电平后, 8255A复位。复位状态是控制寄存器被清零,所有端口(A、 B、 C口)被置为输入方式。,:片选信号, 输入。当 为低电平时,该芯片被选中。 ,:读信号, 输入。当 为低电平时,允许CPU从8255A读取数据或状态信息。 ,:写信号,输入。当 为低电平时,允许CPU将控制字或数据写入8255A。 A1、A0:端口选择信号,输入。8255A中有端口A、 B、 C, 还有一个控制寄存器,共4个端口,根据从A1、A0输入的地址信号来寻址,如下表 所示。 A1、A0与信号一起,用来确定8255A的操作状态,如表所示。 ,PA0PA7: A口数据线,双向。 PB0PB7: B口数据线,双向。 PC0PC7:C口数据线,双向。 ,当8255A工作于方式0时,PC0PC7分成两组并行I/O 数据线,每组4位。当8255A工作于方式1或方式2时,PC0PC7为A口、B口提供联络和中断信号,这时每根线的功能有新的定义。,与外设连接的引脚 PA7PA0、PB7PB0和PC7PC0 与CPU连接的引脚 数据引脚:D7D0 复位输入:RESET 片选信号:CS 端口选择的地址信号:A1和A0 读信号:RD 写信号:WR,8255A的内部结构如图所示。它由并行I/O端口、 控制电路、数据总线缓冲器和读/写控制逻辑等几个部分组成。 (1) 并行I/O端口A、B、C。,8255A的内部结构,A、B、C口都是8位的,可以选择作为输入或输出,但在结构和功能上有所不同。A口含有一个8位数据输出锁存/缓冲器和一个8位数据输入锁存器。B口含有一个8位数据输出锁存/缓冲器和一个8位的数据输入缓冲器(不锁存)。C口含有一个8位数据输出缓冲器和一个8位数据输入缓冲器(不锁存)。 当数据传送不需要联络信号时,这三个端口都可以用作输入或输出口。当A口、B口工作在需要联络信号输入、输出方式时,C口可以分别为A口和B口提供状态和控制信息。 (2) A组和B组控制电路。 8255A的三个端口在使用时分为A、B组。A组包括A口8位和C口的高4位,B组包括B口8位和C口的低4位。两组的控制电路中有控制寄存器,根据写入的控制字决定两组的工作方式, 也可以对C口的每一位置“1”或清“0”。,(3) 数据总线缓冲器。 数据总线缓冲器是三态双向8位缓冲器,是8255A与CPU数据总线的接口。数据的输入/输出、控制字和状态信息的传送, 都是通过这个缓冲器进行的。 由于8255A的数据总线是三态的,所以D0D7可以直接与CPU的数据总线相连。 (4) 读/写控制逻辑。 8255A的读/写控制逻辑的作用是从CPU的地址和控制总线上接收有关信号,转变成各种控制命令送到数据缓冲器以及A组、B组控制电路,从而管理三个端口、控制寄存器和数据总线之间的传送操作。 ,8255A 的内部结构,1外设接口:包括A、B、C三个数据端口(通道)。其中A口带输出锁存/缓冲和输入锁存,B口带输出锁存/缓冲和输入缓冲,C口带输出缓冲和输入缓冲。,2内部逻辑:包括A组控制电路(控制A口和C口上半部)和B组控制电路(控制B口和C口下半部),由CPU程控。,3CPU接口:包括三态双向数据总线缓冲器和读/写控制逻辑。,对CPU来说,8255A内部包括4个端口,即3个数据端口A口、B口、C口,和1个控制端口。,每个端口8位,通过编程设定其为输入口或输出口 可用来和外设传送信息,1. 数据端口A、B、C,有 3 种工作方式( 方式 0、方式 1、方式 2) 对外 8 根引脚 PA7 PA0,端口A,有 2 种工作方式:方式 0、方式 1 对外 8 根引脚 PB7 PB0,端口B,当端口 A 在方式 1 或方式 2、端口 B 在方式 1 时,端口 C 的某些位用于传送联络信号,如查询传送的应答信号、中断传送的中断申请信号等; C口未被用作联络信号的其它位可工作在方式0。,端口C,8位端口,无对外引脚 控制端口的内容决定A、B、C口的工作状态(输入或输出)和工作方式(方式 0、1、2),2. 控制端口D,3. 数据总线缓冲器(引脚D0D7),由1个8位双向三态缓冲器构成 8255A内各端口通过数据缓冲器与系统总线相连。 CPU与端口A、B、C间传送的数据,以及CPU写入控制端口D中的控制字均通过数据缓冲器传送。,4. 读写控制电路 (引脚CS、 RD、 WR),控制数据总线缓冲器的状态。 数据总线缓冲器有3种状态:输入、输出、高阻态,5. 片内译码电路 (引脚A1、 A0),选择被操作的端口,功能表,8255A 操作地址,写控制字地址 A1 = 1、 A0 = 1 A端口读写地址 A1 = 0、 A0 = 0 B端口读写地址 A1 = 0、 A0 = 1 C端口读写地址 A1 = 1、 A0 = 0 注: 写控制字操作仅有写操作,其余可读写 PC/XT机中地址为60H 63H,8255A 的工作方式控制字,例,A端口方式 1 输入、B 端口方式 1 输出、 PC6,PC7 作输入,给出方式控制字。,BCH,A7H,A端口方式 1 输出、B 端口方式 1 输入、 PC4,PC5 作输出,给出方式控制字。,例,8255A与系统的连线如下, 片选译码地址为0F00F3H 1) 确定各端口地址? 2) 编程设置8255A : A口方式 0 输入,PC7PC4输出 B口方式 0 输出,PC3PC0输入,最后得出结论: A口地址为 F0 H B口地址为 F1 H C口地址为 F2 H D口地址为 F3 H,由8255A编程结构知:,解:1)端口地址,所以,方式控制字为 1001 0001B,即91H,要求设置: A口方式0输入,PC7PC4输出 B口方式0输出,PC3PC0输入,2)确定方式控制字,MOV DX, 0F3H ;控制口地址 MOV AL, 91H ;方式控制字 OUT DX, AL 或 MOV AL, 91H ; 方式控制字 OUT 0F3H, AL,初始化程序,C端口置/复位控制字,C端口的位选择编码,通过控制口置 PC2 为 0,置 PC4 为 1 解:MOV DX,0F3H ;置DX为控制口地址 MOV AL,0000 0100B ;置PC2为0 OUT DX, AL MOV AL,0000 1001B ;置PC4为1 OUT DX, AL,例,例:设8255A的A端口工作于方式1输入,B端口工作于方式0输出,置PC4 = H,( 8255A的操作地址为60H 63H ),MOV AL, 0B0H ;1011000X OUT 63H, AL ; 写方式控制字 MOV AL, 09H ;0XXX01001 OUT 63H, AL ; 写置/复位控制字,C口置/复位控制字,工作方式控制字,8255A的工作方式,A端口有三种工作方式 方式0、方式1、方式2 B端口有二种工作方式 方式0、方式1 C端口无工作方式选择 工作于方式0,或作为A、B端口工作于方式1、2时的联络信号 注:方式0(基本输入/输出) 方式1 (选通输入/输出) 方式2(双向数据传送),工作方式的选择可通过向控制端口写入控制字来实现。 在不同的工作方式下,8255A三个输入/输出端口的排列示意图如图7-20所示。,方式 0 基本输入输出,功能:A、B、C端口可单独工作于输入或输出,共有十六种组态 电特性:作输出用, 各端口有锁存功能 作输入用, 各端口无锁存功能 应用:程序控制下的无条件传送方式(查询方式) A、B、C端口均传送数据信息 程序控制下的有条件传送方式 A、B端口传送数据, C端口传送状态,表7.5 8255方式0之下的输入输出组合,9BH 9AH 99H 98H 93H 92H 91H 90H 8BH 8AH 89H 88H 83H 82H 81H 80H,方式0的等效电路,输入方式,输出方式,方式 1 选通输入输出,功能 A、B端口作 8 位数据输入或 输出 C端口的特定位为A、B端口服务 电特性 作输出用时, A、B端口有锁存功能 作输入用时, A、B端口有缓冲功能 应用 A、B端口传数据 查询方式:C端口特定位传送状态 中断方式:C端口特定位发中断请求,A口方式1输入时相应的联络信号,B口方式1输入时相应的联络信号,方式1下输入端口的联络信号,方式1下输入端口的联络信号,由外设发出,送给8255A 作用是将外设送来的数据锁存到8255A的输入端口。 IBF:输入缓冲器满信号(高电平有效) 8255A 发出,表示外设送来的数据已进入输入端口。 当外设送来的数据送入输入端口后,8255A自动发出IBF。 INTR:中断申请信号(高电平或上升沿有效) 8255A 发出,用来向CPU发出中断申请。,方式1下输入端口的联络信号,INTE:中断允许控制信号 作用是控制是否允许8255A的中断申请信号INTR发出。 此信号无引出,通过控制口对C口相应位的置位/复位,设置允许或不允许。 A口,对PC4置位, 使INTEA=1, 允许中断 对PC4复位, 使INTEA=0, 不允许中断 B口,对PC2置位, 使INTEB=1, 允许中断 对PC2复位, 使INTEB=0, 不允许中断 在方式1下,作为联络信号的外部引脚PC4、PC2,不受C口按位置位/复位控制字控制,而只在8255A内部对INTE信号起作用,图7-23 8255A工作方式1输入的时序,A口方式1输入时相应的联络信号,B口方式1输入时相应的联络信号,方式1下输出端口的联络信号,由外设发出,送给8255A。 作用是通知 8255A,输出端口的数据已被外设取走,可以传送下一个数据。 INTR:中断申请信号(高电平或上升沿有效) 8255A 发出, 用来向CPU发出中断申请。,方式1下输出端口的联络信号,当数据送至8255A输出缓冲器后,8255A自动发出。 表示CPU送来的数据已进入8255A输出端口,可用来通知外设把数据取走。,方式1下输出端口的联络信号, INTE:中断允许控制信号 作用是控制是否允许中断申请信号INTR发出 此信号无引出,通过控制口对C口相应位的置位/复位设置允许或不允许。 A口,对PC6置位, 使INTEA=1, 允许中断 对PC6复位, 使INTEA=0, 不允许中断 B口,对PC2置位, 使INTEB=1, 允许中断 对PC2复位, 使INTEB=0, 不允许中断 在方式1下,作为联络信号的外部引脚PC6、PC2,不受C口按位置位/复位控制字控制,而只在8255A内部对INTE信号起作用。,图 7 25 8255A工作于方式1输出的时序,表 7-5 工作方式1C口各位的定义,其特点是:工作在方式1下的8255A提供了与外设的握手信号,并可通过中断方式通知CPU取数或送数(该中断可用软件屏蔽)。,显然,只有8255A的A口或B口可以工作在方式1,而C口的某些引脚会被用作联络信号(其它未定义的引脚仍作普通I/O)。图7-21中虚线框标示的INTE标志可以通过C口置位/复位控制字来设定,并作为INTR信号的开门信号。请注意INTR信号是由IBF信号(8255A作输入端口时用来标示输入缓冲器满,通知CPU取数)或信号的反相信号 (8255A作输出端口时用来标示输出缓冲器空,通知CPU送数)产生的。,图7-26 8255A工作于方式1的状态字,在方式1的情况下,执行一条读C口的指令,就可以得到一个状态字,用来检查外设或8255A的工作状态,从而控制程序的进程。状态字如图7 - 26所示。,方式 2 双向输入输出,功能 仅A端口具有双向数据传送功能 C端口特定位的组合应用 电特性 A端口具有双向锁存和缓冲特性 应用 A端口双向传送数据 查询方式:C端口特定位传送状态 中断方式:C端口特定位发中断请求,方式2输入/输出端口的联络信号,工作在方式2时,C口有5根引脚作为A口的联络信号,是方式1下A口输入、输出联络信号的组合,A端口、B端口方式 1 比较,A端口输入借用C端口位PC3 、PC4 、 PC5 A端口输出借用C端口位PC3 、PC6 、 PC7 B端口输入借用C端口位PC0 、PC1 、 PC2 B端口输出借用C端口位PC0 、PC1 、 PC2 A端口输入、输出借用不同的C端口的位 B端口输入、输出借用相同的C端口的位 B端口只有方式 1 选通输入/输出 A端口还有方式 2 双向数据传送,C端口未借用位的使用,A端口方式 0、B端口方式 0 C端口所有位未被借用,PC0 PC7 可用 A端口方式 0、B端口方式 1 PC0 PC2被借用,PC3 PC7可用 A端口方式 1输入、B端口方式 0 PC3、PC4、PC5被借用,PC0 PC2、PC6、PC7 可用 A端口方式 1输出、B端口方式 0 PC3、PC6、PC7 被借用,PC0 PC2、PC4、PC5 可用 A端口方式 1输入、B端口方式 1 PC6、PC7 可用 A端口方式 1输出、B端口方式 1 PC4、PC5 可用 A端口方式2、B端口方式1;都不可用,在方式2中, C口为A口提供的联络信号如表 7 - 6所示。,构成双向方式下输出的联络信号。 的功能与方式1时的相同。 的功能与方式1有所不同。在方式2的情况下, 外设收到8255A发出的 =0信号后, 要用 =0去打通A口的输出缓冲器,使数据放到A口的外部数据线上,否则输出缓冲器的输出端处于高阻状态。所以在双向方式下如果没有外设的 有效信号, 就不能输出数据。,方式2:就是方式1的输入与输出方式的组合,各应答信号的功能也相同。而C口余下的PC0PC2正好可以充当B 口方式1的应答线,若B口不用或工作于方式0,则这三条线也可工作于方式0。,方式2为双向选通I/O方式,只有A口才有此方式。这时,C口有5根线用作A口的应答联络信号,其余3根线可用作方式0,也可用作B口方式1的应答联络线。,图 7-29 8255A工作于方式2的状态字,方式2是一种双向工作方式,如果一个并行外部设备既可以作为输入设备,又可以作为输出设备,并且输入输出动作不会同时进行。,方式2和其它方式的组合,方式2和方式0输入的组合:控制字:11XXX01T 方式2和方式0输出的组合:控制字:11XXX00T 方式2和方式1输入的组合:控制字:11XXX11X 方式2和方式1输出的组合:控制字:11XXX10X 其中X表示与其取值无关,而T表示视情况可取1或0。,例1 A口方式2 要求发两个中断允许,即PC4和PC6均需置位。B口方式1要求使PC2置位来开放中断。初始化程序可补充完整如下。 MOV AL,0C4H OUT CTRL_PORT,AL ;设置工作方式 MOV AL,09H OUT CTRL_PORT,AL ;PC4置位,A口输入允许中断 MOV AL,ODH OUT CTRL_PORT,AL ;PC6置位,A口输出允许中断 MOV AL, 05H OUT CTRL_PORT,AL ;PC2置位;B口输出允许中断,例2 试画出8255A与8086CPU连接图,并说明8255A的A0、A1地址线与8086CPU的A1、A2地址线连接的原因。,答:8255A与8086CPU的连线图如下图所示:,8086系统有16根数据线,而8255只有8根数据线,为了软件读写方便,一般将8255的8条数据线与8086的低8位数据线相连。8086在进行数据传送时总是将总线低8位对应偶地址端口,因此8086CPU要求8255的4个端口地址必须为偶地址,即8086在寻址8255时A0脚必须为低。实际使用时,我们总是将8255的A0、A1脚分别接8086的A1、A2脚,而将8086的A0脚空出不接,并使8086访问8255时总是使用偶地址。,例3 用8255A作为CPU与打印机接口,8255的A口工作于方式0,输出;C口工作于方式0。8255A与打印机及CPU的连线如下图 所示。试编写一程序,用查询方式将100个数据送打印机打印(8255A的端口地址及100个数据的存放地址自行设定)。,答:设8255

温馨提示

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

评论

0/150

提交评论