第一范文网 - 专业文章范例文档资料分享平台

第11章 并行I

来源:用户分享 时间:2020-06-20 本文由童话幻灭 分享 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

第11章 并行I/O接口

微机系统的信息交换有两种方式:并行通信方式和串行通信方式。并行通信是以微机的字长,通常是8位、16位或32位为传输单位,一次传送一个字长的数据,适合于外部设备与微机之间进行近距离、大量和快速的信息交换。实现并行通信的接口称之为并行接口。一个并行接口可设计为只作为输入或输出接口,还可设计为既作为输入又作为输出接口,即双向输入/输出接口。

8255A是Intel86系列微处理机的配套并行接口芯片,它可为86系列CPU与外部设备 之间提供并行输入/输出通道。由于它是可编程的,可以通过软件来设置芯片的工作方式,因此,用8255A连接外部设备时,通常不用再附加外部电路,使用较为方便。本章首先介 绍可编程并行I/O接口芯片8255A的结构和基本工作方式,然后以8255A与打印机、键盘、LED数码管等外设的接口为例,说明8255A具体应用。

11.1 可编程并行I/O接口芯片8255A

11.1.1 8255A的基本功能和内部结构

8255A的内部结构和引脚图分别如图11.1和图11.2所示。由图11.1可见,8255A由以下几部分组成:

1. 并行输入/输出端口A,B,C

图11.1 8255A的内部结构

8255A芯片具有24个可编程输入输出引脚,分成3个8位端口。其中:端口A包含一个8位数据输出锁存/缓冲寄存器和一个8位数据输入锁存器;端口B包含一个8位数据输入/输出、锁存/缓冲寄存器和一个8位数据输入缓冲寄存器;端口C包含一个输出锁存/缓冲寄存器和一个输入缓冲寄存器。必要时端口C可分成两个4位端口,分别与端口A与端口B配合工作。通常将端口A和端口B定义为输入/输出的数据端口,而端口C可作为状态或控制信息的传送端口。

图11.2 8255A的芯片引脚信号

2.A组和B组控制部件

端口A与端口C的高4位(PC7~PC4)构成A组,由A组控制部件实现控制功能,端口B与端口C的低4位(PC3~PC0)构成B组,由B组控制部件实现控制功能。它们各有一个控制单元,可接收来自读/写控制部件的命令和CPU通过数据总线(D7~D0)送来的控制字,并根据它们来定义各个端口的操作方式。

3. 数据总线缓冲器

这是一个三态双向8位数据缓冲器,它是8255A与8086CPU之间的数据接口,CPU输入输出的数据,CPU输出的控制字以及外设的状态信息都是通过这个缓冲器进行传送。

4.读/写控制部件

这是8255A内部完成读/写控制功能的部件,它与CPU的地址总线及有关的控制信号相连,接收CPU的控制命令,并根据它们向片内各功能部件发出操作命令。可接收的控制信号如下:

(1)CS: 片选信号。由CPU输入,CS有效,表示该8255A被选中。

(2)RD,WR:读、写控制信号。由CPU输入,RD有效,表示CPU读8255A,应由8255A向CPU传送数据或状态信息。WR有效,表示CPU写8255A,应由CPU将控制字或数据写入8255A。

(3)RESET:复位信号。RESET有效时,清除8255A中所有控制字寄存器内容,并将各端口置成输入方式。

(4)A1、A0:端口选择信号。

当A1A0=00,选择端口A; 当A1A0=01,选择端口B; 当A1A0=10,选择端口C;

当A1A0=11,选择控制字寄存器。

由端口地址A1A0和相应控制信号组合起来可定义各端口的操作方式如表11.1所示。

表11.1 8255A的读写操作控制

11.1.2 8255A的控制字及其工作方式

8255A各端口共有3种基本工作方式:方式0——基本输入/输出方式;方式1——选通输入/输出方式;方式2——双向传送方式。

端口A可处于3种工作方式(方式0,方式1或方式2),端口B只可处于两种方式(方式0或方式1),端口C常常被分成高4位和低4位两部分,可分别用来传送数据或控制信息。

用户通过设置控制字来定义3个端口的工作方式,可使用的控制字有工作方式控制字和置位/复位控制字,它们共用同一个端口地址。

1. 控制字

(1)工作方式控制字:

格式如图11.3所示。通过定义工作方式控制字可将3个端口定义为各种不同方式的组合。

图11.3 8255A工作方式控制字格式

(2)置位/复位控制字:

只对端口C有效。端口C的任一位,可用这个控制字来置位或复位,而其他位不变,

使用格式如图11.4所示。

2. 工作方式

图11.4 8255A置位/复位控制字格式

(1)工作方式0:

这是8255A中各端口的基本输入/输出方式。它只完成简单的并行输入/输出操作,CPU可从指定端口输入信息,也可向指定端口输出信息。如果3个端口均处于工作方式0,则可由工作方式控制字定义16种工作方式的组合。工作方式0控制字的具体格式如图11.5所示。

图11.5 8255A工作方式0控制字格式

由控制字中D4D3D1D0 等4位的不同取值可定义方式0的16种工作方式的组合,如表11.2所示。

方式0中,端口C被分成两个4位端口,它们可被定义为输入或输出端口,CPU与3个端口之间交换数据可直接由CPU执行IN和OUT指令来完成。 (2)工作方式1:

被称作选通输入/输出方式,在这种工作方式下,数据输入/输出操作要在选通信号控制下完成。

采用工作方式1进行输入操作时,需要使用的控制信号如下:

① STB——选通信号。由外设输入,低电平有效。

STB有效时,将外设输入的数据锁存到所选端口的输入锁存器中。对A组来说,指定端

口C的PC4用来接收向端口A输入的STB信号;对B组来说,指定端口C的PC2用来接收向端口B输入的STB信号。

② IBF——输入缓冲存储器满信号。向外设输出,高电平有效。

IBF有效时,表示由输入设备输入的数据已占用该端口的输入锁存器,它实际上是对STB信号的回答信号,待CPU执行IN指令时,RD有效,将输入数据读入CPU,其后沿将

IBF置“0”,表示输入缓冲存储器已空,外部设备可继续输入后续数据。对A组来说,指定端口C的PC5作为从端口A输出的IBF信号;对B组来说,指定端口的PC1作为从端口B输出的IBF信号。

③ INTR——中断请求信号,高电平有效。

INTR在STB、IBF均为高时被置为高电平,也就是说,当选通信号结束、已将一个数据送进输入缓冲存储器中,并且输入缓冲区满信号已为高电平时,8255A向CPU发出中断请求信号,即将INTR端置为高电平。在CPU响应中断读取输入缓冲存储器中的数据时,由RD的下降沿将INTR置为低电平。

④ INTE——中断允许信号,实际上,它是一个控制中断允许或中断屏蔽的信号。INTE没有外部引出端,它通过对端口C的置1或清0指令来实现对中断的控制。具体讲,对PC4置1,则使端口A处于中断允许状态;对PC4清0,则使端口A处于中断屏蔽状态。与此类似,对PC2置1,则使端口B处于中断允许状态;对PC2清0,则使端口B处于中断屏蔽状态。当然,如果要使用中断功能,应该用软件使相应的端口处于中断允许状态。

表11.2 方式0的工作状态组合

显然,8255A中的端口A和端口B均可工作于方式1输入模式,其工作方式控制字格式如图11.6所示,端口状态如图11.7所示。

搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新医药卫生第11章 并行I 全文阅读和word下载服务。

第11章 并行I .doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/wenku/1087538.html(转载请注明文章来源)
热门推荐
Copyright © 2018-2022 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top