微型计算机原理与接口技术第二版-刘彦文 等-第8章

上传人:油条 文档编号:1275404 上传时间:2017-06-04 格式:PPT 页数:142 大小:3.42MB
返回 下载 相关 举报
微型计算机原理与接口技术第二版-刘彦文 等-第8章_第1页
第1页 / 共142页
微型计算机原理与接口技术第二版-刘彦文 等-第8章_第2页
第2页 / 共142页
微型计算机原理与接口技术第二版-刘彦文 等-第8章_第3页
第3页 / 共142页
微型计算机原理与接口技术第二版-刘彦文 等-第8章_第4页
第4页 / 共142页
微型计算机原理与接口技术第二版-刘彦文 等-第8章_第5页
第5页 / 共142页
点击查看更多>>
资源描述

《微型计算机原理与接口技术第二版-刘彦文 等-第8章》由会员分享,可在线阅读,更多相关《微型计算机原理与接口技术第二版-刘彦文 等-第8章(142页珍藏版)》请在金锄头文库上搜索。

1、第8章 可编程输入/输出接口,教学提示:接口芯片是微型机系统中连接外设或另外的计算机,实现输入输出的常用器件。本章主要描述了并行、串行接口的基本工作原理以及通用可编程并行接口芯片8255A和串行接口芯片8251A,并对其内部结构、工作原理、与总线的连接方法及编程应用作了详细的描述。,教学目的:通过本章的学习,要求能够掌握并行、串行通信的基本概念,以及如何使用8255A芯片、8251A芯片去实现并行、串行通信。要求理解并掌握接口芯片“可编程”的概念,能够灵活使用控制字对芯片编程;对这两个芯片能够编写简单的应用程序。要求熟练掌握CPU三总线与8255A、8251A芯片的连接方法;对于8255A,还

2、要求掌握其三种工作方式以及与键盘、打印机的连接方法,掌握七段数码显示器驱动的方法;对于8251A,还要求掌握芯片与RS-232C的连接方法。,8.1 可编程接口芯片概述,CPU同外设交换信息必须通过接口电路,一般接口芯片片内功能电路有:输入/输出数据锁存器和缓冲器,用来解决CPU和外设之间速度的不匹配。控制命令和状态寄存器,用来存放CPU对外设的控制命令并存储外设或I/O接口的工作状态。地址译码器,用来选择接口电路中的不同端口。读写控制逻辑。中断控制逻辑。,接口是CPU与外设之间的界面。一方面接口要接收CPU进行输入/输出所发出的控制命令,并且通过状态寄存器为CPU提供接口的状态信息,还能够与

3、CPU交换数据。另一方面接口又要与外设交换数据及一些联络信号。一般接口芯片引脚信号如图8.1所示。,图8.1 一般接口芯片引脚信号,8.2 可编程并行接口芯片8255A,将n位二进制数用n条线同时传输的方式称为并行通信。它具有传输速度快、效率高等优点,常用在数据传输速率要求较高而传输距离较短的场合。能够实现并行通信的接口就称并行接口。Intel 8255A是可编程通用并行接口芯片,它有24条功能可编程的I/O引脚,与Intel系列微处理器完全兼容,直接的位清0/置1功能简化了接口控制。,8.2.1 8255A的结构和引脚信号含义 8255A芯片采用40脚双列直插式封装,单一5V电源,全部输入/

4、输出均与TTL电平兼容。 它有三个输入/输出端口(端口A、端口B、端口C),每个端口都可以通过编程设定为输入端口或输出端口,芯片还有为输入/输出提供的控制联络信号、端口寻址信号等。 8255A内部结构如图8.2所示,它由四部分组成:,图8.2 8255A内部结构框图,1. 三个并行输入输出端口(端口A、端口B、端口C) 8255A有A、B、C三个并行输入输出端口(简称为A口、B口、C口),其功能全部由程序设定,每个端口都有自己的特点。 A口、B口通常作为独立的I/O端口使用,C口也可以作为一般的I/O端口使用,但当A口、B口作为应答式的I/O口使用时,C口分别用来为A口、B口提供应答控制信号,

5、各端口的功能见表8.1(p283)。,2. 读/写控制逻辑 读/写控制逻辑用于管理数据、控制字或状态字的传送,接收来自CPU的地址信息及一些控制信号,然后向A组、B组控制电路发送命令,控制端口数据的传送方向。 其控制信号有以下几种:,(1)-CS,片选信号,低电平有效允许8255A与CPU交换信息。通常由部分地址总线和M/-IO等信号译码产生。 (2)-RD,读信号,低电平有效允许CPU从8255A端口中读取数据或外设状态信息。 (3)-WR,写信号,低电平有效允许CPU将数据、控制字写入到8255A中。 (4) RESET复位信号,高电平有效,清除8255A所有内部寄存器内容,并将各端口置成

6、输入方式。 (5) A1、A08255A片内端口寻址地址。它们与 -RD、-WR及-CS信号相配合用作选择端口及内部控制寄存器的地址信息,并控制信息传送的方向。8255A端口寻址及控制的操作功能见表8.2(P283)。,3. A组和B组控制电路 A组和B组控制电路接收读/写控制逻辑的信号和CPU送入的控制字,然后决定各端口的功能。 A组控制电路控制A口和C口的高4位(PC7PC4); B组控制电路控制B口和C口的低4位(PC3PC0)。还可根据控制字的要求对C口的某一位实现置0或置1的操作。,4. 数据总线缓冲器 数据总线缓冲器是一个双向三态的8位缓冲器,可与系统的数据总线直接相连,实现CPU

7、和8255A之间的信息传送。,8.2.2 8255A的工作方式1. 方式0基本输入输出方式 1) 方式0的工作特点 方式0称为基本输入输出方式,该方式下可将3个数据端口划分为4个独立的部分: A口和B口作为两个8位端口,C口的高4位和低4位可以用作两个4位端口(当然也可以作为一个8位端口),各个端口都可以独立用作输入或输出。,2) 方式0的使用场合 方式0使用在无条件传送和查询传送两种场合。 无条件传送一般用于连接简单的外部设备。 例如,键盘和开关量输入,状态指示灯输出。 无条件传送时,接口和外部设备之间不使用联络信号,微处理器可以随时对该外部设备进行读写。用8255A进行无条件传送时,可以实

8、现三路8位数据或两路8位及两路4位的数据传输。,查询传送时,端口A和端口B作为数据的输入或输出口,端口C的若干位用作联络信号。 可以把C端口的一组(4位)设置为输出,用作端口A和端口B的控制信号输出; 把C端口的另一组(4位)设置为输入,用作端口A和端口B的外设状态信号输入。 如果只使用了这8位中的部分位作为联络信号,那么两个组中剩余的引脚信号还可以用于其他控制,例如控制指示灯或者开关输入。这样,利用端口C,可实现端口A和端口B的查询传送方式的数据传输。,2. 方式1选通输入输出方式 1) 方式1的工作特点 方式1是一种选通输入输出方式。 在这种工作方式下,端口A、端口B和端口C被分为两个组。

9、 端口A和端口B用作数据的输入/输出,端口C的一些引脚信号被规定为端口A、B的联络信号,这些联络信号和C口的各引脚保持固定的对应关系,不能用程序改变。这些引脚的用途见表8.3(p285)。,表8-3中各信号的含义如下: (1) -STBA、-STBB:外设数据输入选通信号,低电平有效,由外设送给8255A。输入时8255A用-STBA (或-STBB)信号把外设已送到A(或B)端口的数据锁存到相应端口的输入锁存器内。,(2) IBFA、IBFB:输入缓冲器满信号,高电平有效。IBF有效时,表示8255A的相应端口已经接收到输入数据,但尚未被微处理器取走,输入缓冲器已满。该信号一方面可供微处理器

10、查询用,另一方面送给外设,阻止外设发送新的数据。IBF由-STB信号置位,由对应端口的读信号-RD的后沿将其复位。,(3)-OBFA、-OBFB:输出缓冲器满信号,低电平有效。-OBF有效,表示相应端口已经收到了来自微处理器的数据,其输出缓冲器数据有效,外设可以取出该数据。该信号由8255A输出给外设,通知外设取走数据,也可以送给微处理器以供查询。,(4)-ACKA、-ACKB:外设接收到输出数据后的应答信号,下 降沿有效,由外设输出给8255A。外设送回-ACKA、(-ACKB)信号表示外设已经接收数据,它同时清除8255A输出的-OBFA、 (-OBFB)信号,并使中断请求信号INTR有效

11、。微处理器获知为高(无效)时,可以输出下一个数据给8255A的A(或B)端口。,(5) INTEA和INTEB:端口A和端口B的中断允许 信号。 允许A口中断时,应使用C端口置位/复位控制字对PC4(A口用于输入时)/PC6(A口用于输出时)置1,否则应将PC4/ PC6置0以屏蔽A口中断; 同样,当允许B口中断时,应将PC2置1,否则将其置0。,此处PC4/ PC6和PC2均有双重作用: 其输出锁存器锁存了中断允许信号, 其输入缓冲器传输外部输入的选通信号。 由于C口每位的输出锁存器和输入缓冲器在硬件上是相互隔离的,这种双重用法不会造成冲突。,(6) INTR:中断请求信号,由8255A输出

12、给微处 理器或中断控制器 。 输入数据时出现-STB或输出数据时出现-ACK信号后沿,8255A都会产生中断请求信号INTR,向微处理器申请中断,请求微处理器输入当前数据或输出下一个数据。 INTRA有效表示A口申请中断,INTRB有效表示B口申请中断。 输入数据时,读数据信号后沿使INTR请求无效;输出数据时,信号后沿使INTR无效。,综上所述,方式1的工作特点可归纳如下: 端口A 和端口B均可工作在方式1的输入或输出方式。 若端口A和端口B中只有一个工作在方式1,而另一个工作在方式0,则端口C中有3位作为方式1的联络信号,其余5位均可工作在方式0的输入或输出方式。 若端口A和端口B都工作在

13、方式1,则C口中6位作其联络信号,剩下的2位还可工作在方式0的输入输出方式。,2) 方式1的使用场合 选定方式1,规定一个端口的输入输出方式的同时,就自动规定了有关的联络、控制信号和中断请求信号。 如果外设能向8255A提供输入数据选通信号或输出数据接收应答信号,就可采用方式1。,具体来说,方式1有两种用法: (1) 中断方式。将两个INTE置为1,A组和B组可以使用各自的INTR信号申请中断。 (2) 查询方式。微处理器通过读端口C,可以查询IBF、-OBF信号的当前状态,决定是否立即进行数据传输。,3. 方式2双向输入输出方式 1) 方式2的工作特点 方式2只适用于端口A,是双向的输入输出

14、传输方式。 在方式2,外设可以在A口的8位数据线上分时向8255A发送数据或从8255A接收数据,但不能同时进行。 该方式需占用端口C的5位作为联络信号。 端口A工作于方式2时,端口B可选方式0或方式1。 方式2类似于方式1输入和输出的组合,各信号含义见表8.4(p286)。,下面对INTE1和INTE2作简要说明。 (1) INTE1:输出中断允许信号。 当INTE1为1时,8255A输出缓冲区空时通过INTR向微处理器发出输出中断请求信号; 当INTE1为0时,屏蔽输出中断。 (2) INTE2:输入中断允许信号。 当INTE2为1时,8255A输入缓冲区满时通过INTR向微处理器发出输入

15、中断请求信号;INTE2为0时,屏蔽输入中断。,2) 方式2的使用场合 方式2是一种双向工作方式,如果一个外设既是输入设备,又是输出设备,并且输入和输出是分时进行的,那么将此设备与8255A的A口相连,并使A口工作在方式2就非常方便。,8.2.3 8255A的初始化 8255A有三种工作方式,而且对C口各位又可进行按位操作,这些都是由CPU输出到8255A的控制字来实现的。1. 8255A的控制字 8255A有两个控制字: 一个是工作方式控制字, 另一个是对端口C的置位复位控制字。,1) 工作方式控制字 端口A可工作在方式0、1、2三种方式中的一种; 端口B可工作在方式0或方式1; 而端口C除

16、作为联络信号外只能工作在输入或输出方式。 工作方式控制字的格式如图8.3所示。,图8.3 8255A工作方式控制字格式,8255A控制字格式中,D7用于区分8255A的两种控制字。 当D71时,为工作方式控制字。 只要CPU给8255A送入方式控制字就可以决定A口、B口的工作方式及相应的操作功能。 这种给可编程序接口电路送入控制字,设定接口功能的程序称为接口初始化程序。,例如,系统要求8255A各个端口工作在如下方式: A口方式0、输入; B口方式0、输出; C口高4位为输出,低4位为输入。 此时方式控制字的格式为91H。 设8255A控制寄存器的地址号为D6H,则其初始化程序如下: MOV AL,91H;CPU将控制字91H经AL输出 OUT 0D6H,AL;送至8255A控制寄存器中,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

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