文档介绍:第八章常用可编程接口芯片
并行接口8255
计数/定时器8253
§8-1 可编程并行接口8255A
并行接口:多根数据线上同时传送信息的接口。传输速度快,信息率高,但电缆多,损耗大。
可编程:可选择性,如:可选择端口中的其中一位或几位作为输入/输出;选择端口与CPU间采用何种方式传送数据等,可由编程人员通过编程来设定。
一、8255A的内部结构
对于不同类型的CPU均有其配套的并行接口芯片。
Intel80X86系列——8255A
Motor公司——MC6820
8255A的外部引脚图
8255A的内部结构框图
8255A由三部分组成。
1、与外设接口部分
8255A内部包括三个8位的输入输出端口,分别是端口A、端口B、端口C,相应信号线是PA7~PA0、PB7~PB0、PC7~PC0。端口都是8位,都可以作为输入或输出,但功能上各有特色:
端口A:一个8位数据输出锁存和缓冲器;一个8位数据输入锁存器。
端口B:一个8位数据输入/输出、锁存/缓冲器;一个8位数据输入缓冲器。
端口C:一个8位数据输出锁存/缓冲器;一个8位数据输入缓冲器(输入没有锁存)。
2、与微处理器接口部分
这部分主要完成数据传送及逻辑控制。
3、内部控制部分
由A、B两组控制电路组成。
主要作用是根据CPU送来的控制字用以决定两组端口(A组为A口C口的高4位,B组为B口和C口的低4位。)的工作方式,也可根据控制字的要求对C口按位进行置位或复位。
二、8255A的引脚功能
1、与外设一边相连的引脚
PA7~PA0:端口A的数据线
PB7~PB0:端口B的数据线
PC7~PC0:端口C的数据线
2、与CPU相连的引脚
D7~D0:双向数据线,与系统数据总线相连。CPU通过它向8255A发送命令、数据;8255A向CPU回送状态、数据。
:片选信号。低电平有效,由系统地址总线经地址译码器产生。
:读信号,低电平有效。与系统相连。当其有效时,CPU可从8255A中读取由外设输入的数据。
:写信号,低电平有效。与系统相连。当其有效时,CPU可向8255A写入控制字或数据。
A1、A0:端口选择信号,与系统地址总线低位相连,用来对8255A内部3个数据端口和1个控制端口进行寻址。
RESET:复位信号,高电平有效。与系统复位信号或自行设置的复位信号线相连。复位的结果是将8255A内部所有寄存器清0,且3个数据端口都自动设置为输入端口。
三、8255A的控制字与工作方式
三种基本的工作方式
注:端口A可以工作在三种方式中任何一种
端口B只能工作于方式0和方式1
端口C仅能工作于方式0。常用来配合端口A和B,为端口A和B提供控制信号和状态信号。
方式0 -基本的输入输出方式
方式1 -选通输入输出方式
方式2 -双向传送方式
1、方式选择控制字
例:设置端口A工作于方式1且为输入端口,端口B工作于方式0且为输出端口,端口C高4位为输出,低4位为输入。
则8255A的方式选择字为:
0B1H
2、C端口按位置位/复位控制字
端口C的各位常作为控制位或状态位使用,利用该方式可使C口的8位中的任意一位设置成高电平或低电平输出。
注:每次只能对8位中的1位清0或置1
例:设置把端口C的PC7清0,则控制字为:
设置把端口C的PC3置1,则控制字为:
0EH(00001110)
07H (00000111)