第07章_可编程接口芯片

更新时间:2023-07-26 18:51:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第七章

可编程接口芯片

可编程接口概术 可编程并行输入/输出接口芯片8255A

可编程接口概术 一个简单的具有输入和输出功能的可编程接口电 路如下图,它包括一个输入接口,其组成主要是八位 的三态门;一个输出接口,其组成主要是八位的锁存 器;另外还有八位 的多路转换开关及 控制这个开关的寄 存器FF。数据端口

控制端口 命令寄存器

控制信息

方式控制字

用户对寄存器FF写入的内容称为命令字或 方式控制字,而寄存器FF称为命令寄存器,相 应的端口称为命令端口或控制端口,对可编程 芯片初始化过程实际上就是对芯片的控制端口 写入各种命令字的操作过程。

目前常用的可编程芯片有如下几种: 8255A 并行I/O接口 8253 计数器/定时器 8251 串行I/O 8259A 中断控制器

7.1 可编程并行输入/输出接口芯片8255A一、功能 8255A是一种通用的可编程并行I/O接口芯片,广 泛 用 于 几 乎 所 有 系 列 的 微 型 机 系 统 中 , 如 8086 、 MCS51、Z80CPU系统等。8255A具有3个带锁存或缓 冲的数据端口,可与外设并行进行数 据交换。用户可用程序来选择多种 A口 操作方式,通用性强。使用灵活,可 为CPU与外设之间提供并行输入/输出 B口 通道。 二、8255A的内部结构C口

二、8255A的内部结构A组和B 组控制数据总线 缓冲器

并行输入/ 输出端口

读/写控 制电路

端口选 择控制

三、8255A的管脚分配

1、与外设连接的管脚 PA0…PA7 已知8255A有三个数据端口, PB0…PB7 每个端口是8位的,由此可推算 PC0…PC7 与外设相连接的管脚共有24个。 其中A口有PA7~PA0八个I/O引脚,B口有PB7~PB0八个 I/O引脚,C口有PC7~PC0八个I/O引脚。特别地对于 PC7~PC0,其中有若干根复用线可用于“联络”信号或 状态信号,其具体定义与端口的工 D0…D7 作方式有关。A0

2、与CPU连接的管脚 A1 包括数据线D7~D0,读写控制线/WR /CS 和/RD,复位线RESET,以及和CPU地 /WR 址线相连接的片选信号、端口地址控制 /RD 线A0和A1。

RESET

3、电源线和地线 8255A的电源引脚为VCC和GND。VCC为电 源线,一般取+5V 。GND为电源地线。

四、8255与8086CPU的接口1、连接方法 同RAM相似,取M/IO=0 2、举例 设计8位I/O接口,使8255地址为0300H 设计16位I/O接口,使8255地址为0300H

五、8255A的工作方式及编程1、8255A的工作方式 8255A有三种工作方式,它们是: ①方式0——基本输入/输出方式; ②方式1——选通输入/输出方式; ③方式2——双向传送方式。 2、8255A编程 所谓8255A编程,就是用户在使用8255前, 用户可用软件来定义端口的工作方式,选择所 需要的功能。 8255A复位时,A、B、C三端口工作在方式 0的输入状态。

1、方式控制

字 这是一个八位的控制字,代表的信息非常丰富。 上面提到8255A内部的3个端口分为A、B两组,因此 方式控制字也就相应地分成两个部分,分别控制A组 和B组,其格式如下:1方式选择控 制字标识位 A组方式选择 00 方式0 01 方式1 1x 方式2

D6

D5

D4

D3

D2

D1

D0PC3~PC0: 1 输入 (方式0时) 0 输出 端口B: 1 输入 0 输出

端口A 1 输入 0 输出

B组方式选择: 0 方式0 1 方式1PC7~PC4: 1 输入 (方式0时) 0 输出

2、C口置“1”/清“0”控制字 置“1”又称为置位操作,而清“0”称为复位操作。

0

D6

D5

D4

D3

D2

D1

D01: 置1

端口C按位置1/置0 控制字标识位

x

x

x位选择

0: 置0

无关

0 0 0 0 1 1 1 1

0 0 1 1 0 0 1 1

0 1 0 1 0 1 0 1

PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7

3、读入状态字 当8255A由程序设定在方式1或方式2工作时,C口 就根据不同的情况,产生或接收“联络”信号。如果 这时我们对C口进行读操作,则读出的内容就包含两 部分内容,一部分是那些作为I/O线上的内容,另一 部分是与“联络”状态有关的内容。

方式1的输入状态字

六、8255A的三种工作方式1、8255A工作在方式0 方式0也叫基本输入/输出方式。 在这种方式下,端口A和B可通过方式选择控制字规 定为输入口或者输出口; 端口C分为高4位(PC7~PC4) 和低4位(PC3~PC0) 两个4位端口,这两个4位端口也可由方式选择控制 字分别规定为输入口或输出口。 这四个并行口共可构成16种不同的使用组态。 利用8255A的方式0进行数据传输时,由于没有规定 专门的应答信号,所以这种方式常用于与简单外设 之间的数据传送,如向LED显示器的输出,从二进 制开关装置的输入等。

8255A的工作过程: ① 8255A编程(初始化) ② 程序对端口的访问

例:8255A的A口和B口工作在方式0,A口为输 入端口,接有四个开关。B口为输出端,接 有一个七段发光二极管,连接电路如图所 示。试编一程序要求七段发光二极管显示 开关所拨通的数字。

电路

LED数 码管a f g b c d DP

段码表

e

地址 A口:8020H, B口:8022H, C口:8024H, 控制口:8026H. 方式控制字 10011001B=99H

a_port equ 8020h b_port equ 8022h ctrl_port equ 8026h …… mov al,99h ;设置8255方式字 mov dx,ctrl_port out dx , al mov dx,a_port in al,dx ;取键盘信息 and al,0fh ;屏蔽高4位 mov bx,offset tab1;取段码表首地址 xlat ;查表得段码 mov dx,b_port ;输出显示 out dx,al

本文来源:https://www.bwwdw.com/article/u41m.html

Top