第5章 输入与输出接口技术本章主要内容:1、接口技术的基本概念 2、输入输出传送方式 3、I/O端口读写技术 4、可编程定时器/计数器8253 5、可编程并行输入输出接口芯片8255A2013-8-14 微机原理及应用 接口技术 1
接 口 的 概 念接口:是中央处理器与存储器、外部设备,或者 两种外设之间,或者两种机器之间通过系统总线 进行连接的一组控制电路。一个接口一般含有几个端口,CPU通过输入输 出指令向端口存或取信息。 端口主要有三类:状态口、命令口和数据口2013-8-14 微机原理及应用 接口技术 2
接口电路端口地址 数据
I/O端口1数据
CPU
I/O端口2IORQ
状态
I/O
RDWR
I/O端口3
控制
装置
2013-8-14
微机原理及应用 接口技术
接 口 的 功 能接口的基本功能就是对数据传送实现控制,具 体包括以下五种功能:1) 设备的选择功能:端口的地址译码 2) 数据的寄存与缓冲:外设的速度慢 3) 信号转换:串并、并串转换,数模、模数的转换、 光电隔离等 4) 对外设的控制和监测:提供命令译码和状态信息 5) 中断或DMA管理 6) 可编程功能2013-8-14 微机原理及应用 接口技术 4
CPU与I/O设备之间的接口信息CPU与I/O设备之间要传送的信息包括数据信息、状态信 息和控制信息。 1.数据信息: 1) 数字量:以二进制或ASCII码表示的数或字符; 2) 模拟量:如温度、压力、位移等; 3) 开关量:只有两个状态的量,如开关的和与断,阀 门的开与关等,只要用1位二进制数即可表示。 2.状态信息:指输入或输出设备的状态信息 1) 输入装置的信息:是否准备好Ready; 2) 输出时输出装置:是否空Empty; 3) 若输出装置正在输出信息,则以忙Busy指示; 3.控制信息:如控制输入输出装置启动或停止等信息。2013-8-14 微机原理及应用 接口技术 5
端口的编址方式根据I/O接口应具备的功能,便可确定其基本 组成,即应具有: (1) 用保存输入输出数据的数据寄存器; (2)为选中I/O接口所需的寻址的地址寄存器 及译码电路; (3)有存放CPU发出的控制命令的控制寄存器; (4)标志I/O设备状态的状态寄存器; (5)数据格式转换电路; (6)输入输出方式控制逻辑电路。2013-8-14 微机原理及应用 接口技术 6
端口的编址方式通常有两种I/O接口结构:一种是标准的I/O接口, 一种是存储器映像I/O结构。与之对应的有两种I/O结 构寻址方式。 标准的I/O寻址方式(独立编址): (1) I/O设备的地址空间和存储器地址空间是独立的、 分开的,即I/O接口地址不占用存储器的地址空间。 (2) 微处理器对I/O设备的管理是用专门的IN和OUT 指令来实现数据传送的。 (3) CPU对I/O设备的读写控制是用I/O读
写控制信号 (IOR、IOW) 8080、Z80、8086/8088等系列微机采用这种方式。2013-8-14 微机原理及应用 接口技术 7
端口的编址方式存储器映像I/O寻址方式(统一编址):(1) I/O设备的与存储器共用同一个地址空间。 (2) 微处理器用对存储器进行操作的指令来实现对I/O 设备的管理。 (3) CPU用对存储器的读写控制信号MEMR、 MEMW对I/O设备进行读写控制。
Motorola的CPU采用这种方式。2013-8-14 微机原理及应用 接口技术 8
端口的编址方式CPU对外设的输入输出过程与对存储器的读写 操作过程完全一样,即: (1) CPU选地址代码到地址线; (2) CPU发出读控制命令,将地址代码所代 表单元的内容放在数据总线上;对输出而言, CPU则仅仅将数据放在数据总线上; (3) CPU从数据总线上读入数据,并将其放 入CPU内部的某个寄存器(通常是累加器); 对输出而言,CPU则发出写命令,将数据线 上的数据写入地址代码单元中。返回2013-8-14 微机原理及应用 接口技术 9
输入输出传输方式CPU与外部设备交换信息通常有如下几种方式:(1)无条件传送方式 (2)查询传送方式 以上两种方式合称程序控制传送方式,即在程 序的编制中利用I/O指令来执行输入输出,CPU 处于主动地位。 (3)中断传送方式 (4)直接存储器存取(DMA)方式2013-8-14 微机原理及应用 接口技术 10
无条件传输方式最简单的传送方式,它适用于外设总是处于准 备好的情况,如开关设备等,较少使用。 1.无条件传送的输入方式 由于简单外设用为输入设备时,输入数据的保 持时间相对于CPU的处理时间要长得多,所以可 直接使用三态缓冲器和总线相连。输入时认为来 自外设的数据已出现在三态缓冲器的输入端。 2.无条件传送的输出方式 在输出时,CPU的输出数据经数据总线加至输 出锁存器的输入端。2013-8-14 微机原理及应用 接口技术 11
8
数据总线
数据来自外设 三态 缓冲器 地址总线 A0~A9
地址译码器Y
AEN IOR
无条件传送的输入方式说明:AEN为低电平,为CPU控制总线。2013-8-14 微机原理及应用 接口技术 12
8 数据
数据总线
锁存器到外设 C
地址总线
地址译码器 Y
A0~A9
AEN IOW
无条件传送的输出方式2013-8-14 微机原理及应用 接口技术 13
查询传输方式程序查询开始由输入指令读取状态寄存器 Y 对接口进行控制 与接口交换数据 置正常标志值 返回状态结束2013-8-14 微机原理及应用 接口技术 14
准备就绪
N超时? N
置超时错标志
查询传输方式为确保程序查询方式的正确进行,I/O接口 应具备以下条件:1、设置端口地址符合逻辑 该逻辑的设置应能 正确识别CPU本次输出的端口地址(所有接口 都会接收到)是否对自己的“
呼叫”。若与本 端口地址符合,则产生相应的控制信号使选中 的端口(即某个寄存器)进入工作状态,否则 不予理睬。2013-8-14 微机原理及应用 接口技术 15
查询传输方式2、设置状态寄存器 该寄存器反映当前设备的 各种状态信息,包括准备就绪位、忙碌位和错 误位等。 3、设置数据寄存器 该寄存器存放供输入输出 使用的数据,其中可为数据、命令参数等。通 常寄存器的长度为8位或16位。 4、设置控制寄存器 该寄存器随设备种类不同 而相差很大。通常,存放CPU通过输出指令传 送的控制命令,以控制设备完成相应的操作。2013-8-14 微机原理及应用 接口技术 16
查询传输方式查询传送方式就是在输入和传送前先查询外设 的状态,当外设准备好了才传送;若未准备好, 则CPU等待。 1.查询式输入 CPU先从状态口输入外设的状态信息,检查 外设是否已准备好数据。若未准备好,则CPU进 入循环等待,直到准备好才退出循环,输入数据。 2.查询式输出 查询式输出时,CPU必须先查外设的BUSY状 态,看外设的数据缓冲区是否已空。若缓冲区为 空,即BUSY为假,则CPU执行输出指令;否则 若BUSY为真,CPU就等待。2013-8-14 微机原理及应用 接口技术 17
查询式输入的接口电路IOR AEN 系统 地址总线
数据输入 装置 锁存器 三态 缓冲器 数据
地址译码 去系统 数据总线 A0~A9
选通 信号R D +5
状态 信息
Q
缓冲器
Ready
地址译码
AEN IOR微机原理及应用 接口技术 18
2013-8-14
查询式输入数据口:状态口:
D7 D6 D5 D4 D3 D2 D1 D0
D7Ready
POLL:
2013-8-14
MOV DX, STATUS-PORT IN AL, DX TEST AL, 80H JE POLL ; 未准备好等待 MOV DX, DATA-PORT IN AL, DX 接口技术 微机原理及应用
查询式输出的接口电路IOW AEN
数据输 出 装 置
锁 存 器
系统 地址总线
系统数据总线 Busy
数据口 地址译码 A0~A9
去系统数据总线 三态 状态信息“Busy” 缓冲器 状态口 地址译码 AEN IOR
Q ACK
R
D
+52013-8-14 微机原理及应用 接口技术
查询式输出数据口:状态口:
D7 D6 D5 D4 D3 D2 D1 D0
D7Busy
POLL:
2013-8-14
MOV DX, STATUS-PORT IN AL, DX TEST AL, 80H JNE POLL ; 未准备好等待 MOV DX, DATA-PORT MOV AL, BUFFER OUT DX, AL微机原理及应用 接口技术