计算机原理-接口技术实验
实 验 报 告
实 验 人: 院(系):
学 号:
日 期:
专业(班级):
实验题目: [实验三]可编程并行接口(一)8255方式0 ;[实验四]
可编程并行接口8255与七段数码管实验 ;[实验五]交通灯控制实验 ;[实验六] 可编程并行接口(二)8255方式1
沉重悼念5.12汶川大地震遇难同胞!
[实验三]可编程并行接口(一)8255方式0
一、 实验目的
掌握8255方式0的工作原理及使用方法。
二、实验原理
8255的基本工作原理与使用方法:
并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位或32位等。8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0--基本输入/输出方式、方式1--选通输入/输出方式、方式2--双向选通工作方式。8255的内部结构及引脚如图-1所示,8255工作方式控制字和C口按位置位/复位控制字格式如图-2所示。
计算机原理-接口技术实验
图-1: 8255内部结构及引脚图
(a)工作方式控制字 (b)c口按位置位/复位控制字
1、8255的内部结构:
如图-1所示,8255的内部结构由以下4个部分组成:
(1)输入/输出端口A、B、C 。这三个端口均可看作是I/O端口,但它们的结构和功能也稍有不同。A口和B口是一个独立的8位I/O口。C口可以看作是一个独立的8位I/O口;也可以看作是两个独立的4位I/O口。
(2)A组和B组控制电路。这是两组根据CPU命令控制8255工作方式的电路,这些控制电路内部设有控制寄存器,可以根据CPU送来的编程命令来控制8255的工作方式,也可以根据编程命令来对C口的指定位进行置位/复位的操作。A组控制电路用来控制A口及C口的高4位;B组控制电路用来控制B口及C口的低4位。 (3)读/写控制逻辑。它负责管理8255的数据传输过程,接收CS及RD、WR、RESET,还有来自系统地址总线的口地址选择信号A0和A1。将这些信号组合后,得到对A组控制部件和B组控制部件的控制命令,并将命令发给这两个部件,以完成对数据、状态信息和控制信息的传输。
(4)数据总线缓冲器。它是8位双向三态缓冲器,作为8255和CPU之间的数据接口,进行数据的输入/输出。CPU的编程命令以及外设通过8255传送的工作状态等信息,都是通过它来传输的。一般情况下数据总线缓冲器的8根数据线D7~D0是与8086CPU低8位数据线相连。
计算机原理-接口技术实验
2、8255的工作方式:
(1)方式0:基本输入/输出方式(basic Input/Output)
方式0是8255的基本输入/输出方式,其特点是与外设传送数据时,不需要设置专用的联络(应答)信号,可以无条件的直接进行I/O传送。 A, B,C 3个端口都可以工作在方式0。
A口和B口工作在方式0时,只能设置为以8位数据格式输入/输出; C口工作在方式0时,可以高4位和低4位分别设置为数据输入或数据输出方式。 方式0常用于与外设无条件数据传送或查询方式数据传送。
(2)方式1:单向选通输入/输出方式(strobe Input/Output)
方式1是一种带选通信号的单方向输入/输出工作方式,其特点是:与外设传送数 据时,需要联络信号进行协调,允许用查询或中断方式传送数据。
由于C口的PC0, PC1和PC2定义为B口工作在方式1的联络信号线,PC3, PC4和PC5定义为A口工作方式1的联络信号线,因此只允许A口和B口工作在方式1。
A口和B口工作在方式1,当数据输入时,C口的引脚信号定义如图7.6所示。PC3, PC4和PC5定义为A口的联络信号线INTRA,定义为B 口的联络信号线INTRB, IBFB和本I/O线, 工作在方式0。
和IBFA, PC0, PC1和PC2
,剩余的PC6和PC7仍可以作为基
方式1输入联络信号的功能如下:
(strobe input):选通信号,输入,低电平有效。此信号由外设产生输
计算机原理-接口技术实验
入,当有效时,选通A口或B口的输入数据锁存器,锁存由外设输入的数 据,
供CPU读取。
IBF(input buffer full):输入缓冲器满信号,输出,高电平有效。当A口或B 口的输入数据锁存器接收到外设输入的数据时,IBF变为高电平,作为对外设
的响应信号,CPU读取数据后IBF被清除。 INTR:中断请求信号,输出,高电平有效,用于请求以中断方式传送数据。
为了能实现用中断方式传送数据,在8255内部设有一个中断允许触发器INTE, 当触发器为“1”时允许中断,为“0”时禁止中断。A口的触发器由PC4置位或复 位,B口的触发器由PC2置位或复位。
方式1数据输入的时序如图7.7所示。 当外设的数据准备就绪后,向8255发送的 宽度至少为500ns,在直保持到
信号以便锁存输入的数据,
有效之后的约300ns,IBF变为高电平,并一
信号由低电平变为高电平,待CPU读取数据后约300ns变为低电平,
表示一次数据传送结束。INTR是在中断允许触发器INTE为1,且IBF为1(8255接收到数 据)的条件下,在用以向CPU发出中断请求,待
后沿(由低变高)之后约300ns变为高电平,变为低电平后约400ns, INTR被撤销。
A口和B口工作在方式1,当数据输出时,C口的引脚信号定义如图7.8所示。
计算机原理-接口技术实验
PC3,PC6和PC7定义为A口联络信号线INTRA,定义为B口联络信号线INTRB, 本I/O 线,工作在方式0。
和
和,PC0, PC1和PC2
,剩余的PC4和PC5仍可以作为基
方式1输出联络信号的功能如下:
(output buffer full):输出缓冲器满指示信号,输出,低电平有效。 信号由8255发送给外设,当CPU将数据写入数据端口时,
电 平,用于通知外设读取数据端口中的数据。
(acknowledge input):应答信号,输入,低电平有效。
外设发送给8255,作为对收, 同时清除
信号。
信号由变为低
信号的响应信号,表示输出的数据已经被外设接
INTR:中断请求信号,输出,高电平有效。用于请求以中断方式传送数据。 方式1数据输出的时序如图7.9所示。当CPU向8255写入数据时,升沿后约650ns,
信号上
有效,发送给外设,作为外设接收数据的选通信号。当
信号,作为对
信号的应答。
外设接收到送来的数据后,向8255回送
信号有效之后约350ns, 号在中断允 许触发器INTE为1且
变为无效,表明一次数据传送结束。INTR信
信号无效之后约350ns变为高电平。若