当前位置:文档之家› 【微机原理】第8章输入输出接口II-8255

【微机原理】第8章输入输出接口II-8255


AB
DB
M/IO RD WR
CPU INTR
CS
DB
DB RDY
RD WR STB
INTR I/O接口芯片
DB
RDY
STB I/O设备
• 所谓“可编程”是指芯片的功能和一些参数是可由用户选 择和改变的。
• 通过向芯片内部写入特定的“工作方式控制字”,就可以 选择这个芯片的工作方式。
• 例如,可以将某芯片的数据端口设定为“输入”,也可以 将它设定为“输出”。
• 显然,芯片的可编程特性扩大了其使用范围,使用上也更 方便。
• 按照可编程接口芯片的用途,可以将其分为“通用接口芯 片”和“专用接口控制器”两类。
8.3.1 8255A芯片内部结构和引脚功能
1. 8255A的基本性能
• 8255A是具有多种功能的可编程并行接口电路芯片 • 其内部最基本的接口部件是: • 三态缓冲器、锁存器 • 此外,还包括与CPU的联络电路及与外设的联络电路: • 状态寄存器、控制寄存器 • 端口译码电路、控制电路(如读写控制、中断控制)
每位可独立进行输出控制(位控制)
使用最灵活,较难掌握
⑶ 数据总线缓冲器
这是一个三态双向8位缓冲器,它是8255A芯片 与系统数据总线的接口。
输入输出的数据,输出的指令以及CPU发出的控制 字和外设的状态信息,也都是通过这个缓冲器传送的
⑷ 读/写和控制逻辑
它与CPU的地址总线中的A1、A0以及有关的控 制信号(RD,WR,RESET,IO/M)相连,由它控制 把CPU的控制命令或输出数据送至相应的端口,也由 它控制把外设的状态信息或输入数据通过相应的端口, 送至CPU。
• 8255A有3个8位的数据端口(A/B/C), • 共24个I/O引脚, • 共有3种输入输出工作方式 • 基本输入/输出(A/B/C口) • 选通输入或选通输出(A/B口) • 双向选通(A口)
2. 8255A的内部结构和引脚
8255A由以下几个部分组成:
⑴ 4个8位端口----PA、PB、PC、CWR
7. (4) RESET——复位信号,高电平有效。它清除控制 寄存器,并且置所有端口(A、B、C)为输入方式。
8. ⑸A1、A0:地址信号,输入。内连8255A的片内寄 存器,外接CPU地址线,和CS#一起决定8255A的4
-CS A1 A0
000 001 010 011
I/O地址
60H 61H 62H 信号,用来指明哪一个端口被选中。 8255A有三个数据端口和一个控制端口。
数据端口用来传送数据,控制端口用来接受CPU传送来的控 制字。
数据和控制字都是通过CPU的数据总线传送给8255A的。 8255A则根据端口选择信号A1、A0的组合把数据总线传送来 的信息传送到相应的端口。
第8章输入/输出接口
8.3 可编程并行通信接口芯片8255A
8255A是Intel86系列微处理机的配套并行接口芯片,它可为86系列CPU与外部 设备之间提供并行输入/输出的通道。由于它是可编程的,可以通过软件来设 置芯片的工作方式,所以,用8255A连接外部设备时,通常不用再附加外部电 路,给使用者带来很大方便。
1.工作方式控制字 ☼工作方式控制字用来设定A口、B口和C口
的数据传送方向和工作方式; ☼工作方式分别是方式0、方式1和方式2; ☼A口可工作在三种方式中的任何一种方式下0 、1、2; ☼B口只能工作在前两种工作方式下0、1; ☼C口只能工作在方式0下或者配合端口A和端 口B工作; ☼8255A的工作方式控制字格式和各位的含义
3. 一些控制命令
4. (1) CS(Chip Select)——选片信号,低电平有效,由 它启动CPU与8255A芯片之间的通信 (Communication)。
5. (2) RD——读信号,低电平有效。它控制8255A送出 数据或状态信息至CPU。
6. (3)WR——写信号,低电平有效。它控制把CPU输 出的数据或命令信号写到8255A。
8255A中有三个输入输出端口,另外,内部还有一个控制字寄 存器,共有四个端口,要有两个输入端来加以选择,这两个 输入端通常接到地址总线的最低两位A1和A0。
⑵ A组和B组控制电路 这是两组根据CPU的命令字控制8255A工作方式的电路。
它们有控制寄存器,接受CPU输出的命令字,然后分别决定两组的 工作方式,
读操作-RD
读端口A 读端口B 读端口C
非法
写操作-WR
写端口A 写端口B 写端口C 写方式字和位控字
4 片选与端口地址:
I/O接口芯片的片选信号输入端CS端接地址译码器的的输出端 Y33 ,A1、A0接CPU的A1、A0。 A1、A0的取值,该接口芯片有4个端口:84H、85H、86H、87H CPU的A0除了作地址线外,还作为逻辑转换门电路的控制输入 端.
数据端口PA、PB、PC
它有三个输入输出端口: Port A、Port B和Port C。每 一个端口都是8位,都可以选择作为输入或输出,但功能上有 着不同的特点。
• 端口A:PA0-PA7,8位端口,支持工作方式0、1、2 • 端口B:PB0-PB7,8位端口,支持工作方式0、1 • 端口C:PC0-PC7,拆分为两个4位端口,仅支持工作方式0 端口寻址
当A1A0=00时,选中端口A; 当A1A0=01时,选中端口B; 当A1A0=10时,选中端口C; 当A1A0=11时,选中控制端口。
8.3.2 8255A的两个控制字和一个状态字
• 8255A是可编程接口芯片。 • 可编程就是用指令的方法先对芯片进行初始化,
决定芯片的端口是处于输入数据状态还是处于输 出数据状态,以及每个端口的工作方式。 • 工作方式和工作状态的建立是通过向8255A的控 制口写入相应的控制字完成的。 • 8255A共有两个控制字,即 • 工作方式控制字 • 对C口置位/复位控制字。
也可根据CPU的命令字对端口C的每一位实现按位“复位”或“置 位”。
端口A:PA0-PA7 (A组控制)
常作数据端口使用,功能最强大
端口B:PB0-PB7 (B组控制)
常作数据端口使用
端口C:PC4-PC7 (A组控制),
PC0-PC3 (B组控制)
可作数据、状态或控制端口使用
可拆分成两个4位端口分别输入或输出
相关主题