当前位置:
文档之家› 第九章 输入输出方法及常用的接口电路
第九章 输入输出方法及常用的接口电路
3、中断方式:
外设与CPU处于并行工作,一旦外设准备好,外设向CPU 发中断申请,条件具备,CPU暂停原程序执行,响应中断,外 设与CPU串行工作。 4、DMA方式(高速I/O及成组交换数据): CPU不干预,由硬件实现存储器与外设之间交换数据,称 直接存取存储器。 33
一、无条件传送方式 (同步传送方式)
3
一、 接口的概念和功能
1、接口和接口技术
2、为什么要用接口电路?
4
1、接口和接口技术
接口 :
指CPU、存储器、外设之间通过总线进行连接的电路部分,
是CPU与外设进行信息交换的中转站。
接口技术 :
是研究CPU如何与外部设备进行最佳耦合与匹配,实现双方
高效、可靠地交换信息的一门技术,是软件、硬件结合的体
((D X )端 口 ) ← (A L )
((D X )端 口 ) ← (A L )
((D X )+ 1 端 口 ) ← (A H )
port 为数字形式的端口地址, 大小为0~255 或0~FFH
20
例
(1) OUT 21H, AL 若(AL)= 1100 1100B 执行后: (21H端口) = 0CCH
27
8088CPU最小模式下, I/O端口读周期时序
T1 T2 T3 T4
CLK
IO/M
A19~A16 /S6~S3 A15~A8 AD7~AD0 ALE RD DT/R
A7 ~ A0
D7 ~ D0
DEN
GND A14 A13 A12 A11 A10 A9 A8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 NMI INTR CLK GND
(A L ) ← ((D X )端 口 )
(A L ) ← ((D X )端 口 ) (A H ) ← ((D X )+ 1 端 口 )
port 为数字形式的端口地址, 大小为0~255 或0~FFH
18
例
(1)
IN
AL,28H
若 (28H端口) = 1010 1111B 执行后 (AL) = (28H端口) = 0AFH
例 motorola的M6800系列
日立H8S单片机系列
特点:
内 存 空 间
I/O 空 间
I/O端口相当于内存的一部分, 使内存容量减小 对I/O端口的读/写与对存储器的读/写相同, 所有可对内存操作的指令对I/O端口均可使用,
指令系统中不专设I/O指令。
14
二 、8088的输入/输出指令和时序
外
P
U
DB
CB
设
按存放信息的不同,I/O端口可分为三种类型 数据端口:用于存放CPU与外设间传送的数据信息 状态端口:用于暂存外设的状态信息 控制端口:用于存放CPU对外设或接口的控制信息,
控制外设或接口的工作方式。
9
AB
C
地址 译码 数据 缓冲 控制 电路
I/O端口1
外
I/O端口2
P
U
DB
CB
1. 输入指令IN 2. 输出指令OUT 3. 输入/输出指令时序
15
输入/输出指令实现I/O端口与CPU之间的数据传送
AB 地址 译码 数据 缓冲 控制 电路
I/O端口1
C
外
I/O端口2
P
U
DB
CB
I/O端口3
设
16
8088CPU采用I/O端口与存储器分别独立编址
可寻址220= 1M个内存单元 内存范围00000 ~FFFFFh 内存单元的地址有5种寻址 可寻址216= 64 K个I/O端口 I/O端口范围0000 ~ FFFFH
(2) IN AX,28H 若 (28H端口)= 1010 1111B (29H端口)= 0101 0000B 执行后 (AL) = (28H端口) = 0AFH (AH) = (29H端口) = 50H
(3) MOV DX, 300H IN AL,DX 若 (300H端口)= 69H 执行后 (AL) = (300H端口) = 69H
实现方法
CPU不查询外设工作状态, 与外设速度的匹配通过在软件上延时完成, 在程序中直接用I/O指令,完成与外设的数据传送
特点
1. 适用于外设动作时间已知,在CPU与外设进行数据传送 时,外设保证已准备好的情况。 2. 软硬件十分简单。
34
例 1 无条件输入接口
PC 总 线 D7 ~ D0 数据 线
(2) MOV DX , 21BH OUT DX, AL 若(AL)= 1010 0110B 执行后: (21BH端口)= (AL) = 0A6H
21
输入/输出指令(IN、OUT)特点:
(1)累加器AL、AX的专用指令
对输入指令IN ,目的操作数只能为AL, 或AX
IN IN IN AL, 21H AX, DX BX, 21H
19
2. 输出指令OUT
格式 OUT OUT OUT OUT p o r t, A L p o r t, A X DX, AL DX, AX 执行操作 (p o r t 端 口 ) ← (A L )
(p o r t 端 口 ) ← (A L ) (p o r t+ 1 端 口 ) ← (A H )
C PU 接口作用 模 /数 转 换 ( A / D ) 信息类型 数字量 数 /模 转 换 ( D / A ) 三态缓冲、锁存 工作速度 通信方式 快 并行 并 /串 转 换 三态缓冲、锁存 并行
7
外设 模拟量 数字量 慢 串行
解决传送方式 串 /并 转 换
二、接口电路的典型结构
AB 地址 译码 数据 缓冲 I/O端口1
内 存 空 间
I/O端口的地址由
一个8位二进制数直接寻址 或DX寄存器间接寻址
I/O 空 间
17
1. 输入指令IN
格式 IN IN IN IN A L , p ort A X , p ort AL, DX AX, DX 执行操作 (A L ) ← (p o r t 端 口 )
(A L ) ← (p o r t 端 口 ) (A H ) ← (p o r t+ 1 端 口 )
掌握 (1)在最小模式下,I/O端口的读、写周期。
(2)IBM PC/XT 总线上I/O端口的读、写周期。
26
(1)在最小模式下,I/O端口的读、写周期
与读、写存储器的过程相似,不同之处: 1.IO/M变高,CPU操作I/O端口。 2.端口的地址信号出现在A15~A0上, A19~A16全为低电平。
第 九 章
输入/输出方法
及常用的接口电路
1
主机以外的设备称为外部设备,又称为输入/输出设备, 即I/O设备 主机与外部设备交换信息的缓冲电路称为I/O接口电路, 又称为I/O接口或简称接口
主机
接口
外部 设备
主机与外部设备之间进行输入/ 输出的方法
2
第一节 接口技术的基本概念
一、 接口的概念和功能 二、 接口电路的典型结构
对输出指令OUT ,源操作数只能为AL, 或AX
OUT OUT 20H, AL DX, AX
OUT
DX, CX
22
(2)端口地址可由直接方式或间接方式给出
当端口号在0~FFH,即0~255时, 可在指令中直接指定端口号 例 IN AL, 21H OUT 20H, AL 当端口号>FFH,即>255时, 需把端口号放在DX寄存器中, DX是一个16位寄存器,范围在0~FFFFh之间。
29
IBM PC/XT 总线上I/O端口读周期
当CPU 执行 IN 指令时,进入I/O端口读周期, 从指定的端口读入数据到CPU中。 AB
C
P U
DB
地址 译码 数据 缓冲 控制 电路
I/O端口1
外
I/O端口2
CB
I/O端口3
设
30
第三节 CPU与外设间的数据传送方式
CPU与外设的工作速度不一致,
现,是微机应用的关键。
5
地址总线 AB
CPU
存 储 器
I/O 接 口
输 入 设 备
I/O 接 口
输 出 设 备 数据总线 DB 控制总线 CB
微型计算机的结构示意图
6
2、为什么要用接口电路?
外设是用来实现人机交互的一些机电设备。 外设处理信息的类型、速度、通信方式与CPU不匹配, 不能直接挂在总线上,必须通过接口和系统相连
A19~A16 /S6~S3 A15~A8 AD7~AD0 ALE WR DT/R DEN
A7 ~ A0 D7 ~ D0
GND A14 A13 A12 A11 A10 A9 A8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 NMI INTR CLK GND
8088
VCC A15 A16/S3 A17/S4 A18/S5 A19/S6 SSO MN/MX RD HOLD HLDA WR IO/M DT/R DEN ALE INTA TEST READY RE
AL, 20H, AL, DX,
21H AL DX AL
机器码 E421 ; 两个字节 E620 EC ; 一个字节 EE
24
(3)可进行字节或字传送
由指令中AL或AX的类型决定
IN IN IN IN
AL, 20H AX, 20H AL, DX AX, DX
;字节传送 ;字传送 ;字节传送 ;字传送
例 IN
IN
AL, 218H AL, DX
×
例
OUT 219H, AL
×
MOV DX, 218H
MOV DX, 219H