输入输出接口8255

上传人:平*** 文档编号:48109681 上传时间:2018-07-10 格式:PPT 页数:95 大小:1.44MB
返回 下载 相关 举报
输入输出接口8255_第1页
第1页 / 共95页
输入输出接口8255_第2页
第2页 / 共95页
输入输出接口8255_第3页
第3页 / 共95页
输入输出接口8255_第4页
第4页 / 共95页
输入输出接口8255_第5页
第5页 / 共95页
点击查看更多>>
资源描述

《输入输出接口8255》由会员分享,可在线阅读,更多相关《输入输出接口8255(95页珍藏版)》请在金锄头文库上搜索。

1、第七章 可编程接口芯片 n可编程接口概术n可编程并行输入输出接口芯片8255A可编程接口概术可编程接口概术一个简单的具有输入功能和输出功能的一个简单的具有输入功能和输出功能的 可编程接口电路如下图,它包括一个输入接口可编程接口电路如下图,它包括一个输入接口 ,其组成主要是八位的,其组成主要是八位的三态门三态门;一个输出接口;一个输出接口 ,其组成主要是八位的,其组成主要是八位的锁存器锁存器;另外还有八位;另外还有八位 的多路转换开关及控制这个开关的寄存器的多路转换开关及控制这个开关的寄存器FFFF。用户对寄存器FF写入的内容称为命 令字或方式控制字,而寄存器FF称为 命令寄存器,相应的端口称为

2、命令端 口或控制端口,对可编程芯片初始化 过程实际上就是对芯片的控制端口写 入各种命令字的操作过程。 并行接口电路:n微处理器与I/O设备进行数据传输时均需经过 接口电路实现系统与设备互连的匹配。n并行接口电路中每个信息位有自己的传输线 ,一个数据字节各位可并行传送,速度快, 控制简单。由于电气特性的限制,传输距离 不能太长。n8255A是通用的可编程并行接口芯片,功能强 ,使用灵活。适合一些并行输入/输出设备的 使用。7.1 可编程并行输入输出接口芯片 8255A一、功能8255A(8155A)是一种通用的可编程并行I O接口芯片,广泛用于几乎所有系列的微型机 系统中,如8086、MCS51

3、、Z80CPU系统等。 8255A具有3个带锁存或缓冲的数据端口,可与 外设并行进行数据交换。用户可用程序来选择 多种操作方式,通用性强。使用灵活,可为 CPU与外设之间提供并行输入输出通道。 二、 8255引脚及内部结构1、8255A的引脚8255有40个引脚,采用双列直插式封装形式。其引脚如图所示。二、 8255A的内部结构 数据 总线 缓冲器内部控制线内部数据线D0D7A组 控制A组 端口AA组 端口C 上部B组 控制B组 端口BB组 端口C 下部读写 控制 逻辑PC0PC3PB0PB7PC4PC7PA0PA7RD WR A0 A1 CS RESET1、与外设连接的管脚我们已经知道825

4、5A有三个数据端口,每个 端口是8位的,由此可推算与外设相连接的管 脚共有24位。其中A口有PA7PA0八个I/O引脚 ,B口有PB7PB0八个I/O引脚,C口有PC7PC0 八个I/O引脚。特别地对于PC7PC0,其中可有 若干根复用线可用于“联络”信号或状态信号 ,其具体定义与端口的工作方式有关。PA0PA7PB0PB7PC0PC7n端口A:PA0PA7uA组,支持工作方式0、1、2n端口B:PB0PB7uB组,支持工作方式0、1n端口C:PC0PC7u仅支持工作方式0uA组控制高4位PC4PC7uB组控制低4位PC0PC3n端口A:PA0PA7n常作数据端口,功能最强大n端口B:PB0P

5、B7n常作数据端口n端口C:PC0PC7n可作数据、状态和控制端口n分两个4位,每位可独立操作n控制最灵活,最难掌握2、与CPU连接的管脚包括数据线D7D0,读写控制线和,复位 线RESET,以及和CPU地址线相连接的片选信 号、端口地址控制线A0和A1。 CS* A1 A0I/O地 址读操作 RD*写操作 WR* 0 0 0 0 0 1 0 1 0 0 1 160H 61H 62H 63H读端口A 读端口B 读端口C 非法写端口A 写端口B 写端口C 写控制字 D0 D7数据线A0 A1地址线 RD*读信号WR*写信号 CS*片选信号RESET复位信号8255A端口选择及操作功能表D0D7A

6、0A1/CS/WR/RDRESET三、8255A的控制字8255A可以通过指令在控制端口中设置控制 字来决定它的工作。 8255A的控制字有两个,共用一个地址,根据D7位的值来区分。 控制字分为两类: 1.方式选择控制字 2.C口置位/复位控制字 1D6D5D4D3D2D1D0方式选择控 制字标识位A组方式选择 00 方式0 01 方式1 1x 方式2端口A 1 输入 0 输出PC3PC0: 1 输入(方式0时) 0 输出端口B: 1 输入0 输出B组方式选择:0 方式01 方式1PC7PC4: 1 输入 (方式0时) 0 输出 8255A的工作方式可由CPU写一个工作方式选择控制字到8255

7、A的控制寄存器来选择。其格式如上图所示,可以分别选择端口A、端口B和端口C上下两部分的工作方式。端口A有 方式0、方式1和方式2三种工作方式,端口B只 能工作于方式0和方式1,而端口C仅工作于方式0。注意8255A工作方式选择控制字的最高位D7(特征位)应为1。0D6D5D4D3D2D1D0xxx无关1: 置10: 置00 0 0 0 1 1 1 1端口C按位置1/置0 控制字标识位位选择PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC70 0 1 1 0 0 1 10 1 0 1 0 1 0 18255A的C口按位置位/复位控制字8255A的C口具有位控功能,即端口C的8位中的任

8、 一位都可通过CPU向8255A的控制寄存器写入一个 按位置位/复位控制字来置1或清0,而C口中其他 位的状态不变。 其格式如上图所示,注意8255A的C口按位置位/复 位控制字的最高位D7(特征位)应为0。n例如:设有一片8255A的口地址为60H-63H, PC5平时为低电平,要求从PC5的引脚输出一 个正脉冲。可使用程序先将PC5置1,输出一个 高电平,再把PC5清零,输出一个低电平,结 果PC5引脚输出一个正脉冲。程序如下:nMOV AL,00001011BnOUT 63H, ALnMOV AL,000001010BnOUT 63H,AL四、 8255A的工作方式及编程8255A端口功

9、能表工作方式方式0A口B口C口方式1方式2基本输入输出端口 输入不锁存,输出锁存同A口同A口应答式输入输出端口 输入输出均可锁存双向应答式输入输出, 输入输出均可锁存同A口不用上C口作为应答式A口 的应答线;下C口作为 应答式B口的应答线用作A口的双向应答 控制线 三种可编程的工作方式:方式 0 基本的字节输入/输出方式方式 1 选通的字节输入/输出方式方式 2 带选通的双向字节输入/输出方式n 8255A有三种工作方式:n方式0 基本输入/输出方式n方式1 选通输入/输出方式n方式2 双向传输方式n 可以通过往控制寄存器中写入控制字来选 择其工作方式。n方式0:基本输入输出方式u适用于无条件

10、传送和查询方式的接口电路n方式1:选通输入输出方式u适用于查询和中断方式的接口电路n方式2:双向选通传送方式u适用于与双向传送数据的外设u适用于查询和中断方式的接口电路n1、8255A工作在方式0n方式0也叫基本输入输出方式。n在这种方式下,端口A和端口B可以通过方式选 择控制字规定为输入口或者输出口;n端口C分为高4位(PC7PC4) 和低4位(PC3 PC0) 两个4位端口,这两个4位端口也可由方 式选择控制字分别规定为输入口或输出口。n这四个并行口共可构成16种不同的使用组态。n利用8255A的方式0进行数据传输时,由于没有 规定专门的应答信号,所以这种方式常用于与 简单外设之间的数据传

11、送,如向LED显示器的 输出,从二进制开关装置的输入等。需要说明的是,这里所说的输入或输出是相对于8255A芯片而言的。当数据从外设送往8255A时为输入,反之,数据从8255A送往外设则为输出。 方式0也可以用于查询方式的输入或输出接口电路,此 时端口A和B分别作为一个数据端口,而用端口C的某些 位作为这两个数据端口的控制和状态信息。下图是一个A口和B口工作在方式0时利用C口某些位作为联络信 号的接口电路。 在此例中将8255A设置为:A口输出,B口输入,C口高4 位输入(现仅用PC7、PC6两位输入外设的状态),C口低 4位输出(现仅用PC1、PC0两位输出选通及清除信号)。 此时8255

12、A的工作方式控制字为10001010B(8AH)。方式0查询方式的接口电路其工作原理如下: 在向输出设备送数据前,先通过PC7查询设 备状态,若设备准备好则从A口送出数据,然后 通过PC1发选通信号使输出设备接收数据。从输入设备取数据前,先通过PC6查询设备 状态,设备准备好后,再从B口读入数据,然后 通过PC0发清除信号,以便输入后续字节。2.方式1选通的输入输出方式 特点: (1)两组端口A和B都可以工作在方式1,每一组 包含一个8位的数据端口和一个3位的控制端口。 (2)8位数据端口可以是输入或者输出,输入/出 均带锁存。 (3) C口有6位固定作为A口、 B口的状态和控制信号,剩下2位

13、可由程序指定为输入和输出。在方式1输入情况下,C口被定义的状态和控制信号有 、 IBF和INTR, 其含义如下: : 选通信号, 低电平有效, 由外设提供。有效时,外设把数据送入8255A的A口或B口。 IBF:输入缓冲器满,高电平有效,由8255A输出给外设。当该信号有效时表明数据选通信号 表示外设已经准备好数据输入缓冲器满信号 表示A口已经接收数据中断请求信号 请求CPU接收数据PC4PC5PC3PA7PA0INTEAIBFAINTRASTBA中断允许触发器外设已将数据送到A口或B口的输入缓冲器。IBF由 置位, 的上升沿使它复位。 IBF可作为8255A与外设的联络信号。当IBF=0时

14、,允许外设向8255A传送一个数据; 当IBF=1时, 表示外设送来的数据还未被CPU取走,这时禁止 外设向8255A传送数据。IBF也可作为CPU的查询 信号,当IBF=1时,告诉CPU应该从8255A的端口读取数据。INTR:中断请求信号,高电平有效,由8255A发出 。 在程序设置的中断允许信号INTE=1的条件下, 当 =1和IBF=1时,INTR被置为1, 的上 升沿使它复位。 INTE是端口内部的中断允许信号,是内部中断允 许触发器的状态,由C口的位控字来设置。若位控字使PC4=1,则A口的中断允许信号INTEA=1;若 位控字PC2=1,则B口的中断允许信号INTB=1。这 一点

15、对于PC4和PC2两引的 、 功能并无影响。方式1输入引脚:B端口PC2PC1PC0PB7PB0INTEBIBFBINTRBSTBB数据选通信号 表示外设已经准备好数 据输入缓冲器满信号 表示A口已经接收数据中断请求信号 请求CPU接收数据中断允许触发器方式1需借用端口C用做联络信号 同时还具有中断请求和屏蔽功能方式1输入联络信号nSTB*选通信号,低电平有效u由外设提供的输入信号,当其有效时,将输 入设备送来的数据锁存至8255A的输入锁存器nIBF输入缓冲器满信号,高电平有效u8255A输出的联络信号。当其有效时,表示数 据已锁存在输入锁存器nINTR中断请求信号,高电平有效u8255A输出的信号,可用于向CPU提出中断请 求,要求CPU读取外设数据方式1输入的时序方式1输出时,各个控制信号的意义OBF(Output Buffer Full):输出缓冲器满信号,输出,低电平有效。当CPU把数据写入端口A或B的输出缓冲器时,写信号WR的上升沿把OBF置成低电平,通知外设到端口A或B来取走数据,当外设取走数据时向8255A发应答信号ACK,ACK的下降沿使OBF恢复为高电平。ACK(Acknowledge):外设应答信号,输入,低 电平有效。当ACK有效时,表示CPU输出到8255A的数据已被外设取走。 INTR(Interrupt Request):中断请求信号,输出,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号