6.1 输入 / 输出接口概述
DESCRIPTION
6. 输入输出技术. 6.1 输入 / 输出接口概述. 内容简介. 6.2 中断系统. 6.3 并行接口. 6.4 串行接口. 重点 / 难点. 6.5 DMA 控制技术. 6.6 定时器 / 计数器. 习题解答. 6.7 A/D 及 D/A 接口. Home. 6. 输入输出技术. 内容简介. - PowerPoint PPT PresentationTRANSCRIPT
6.1 输入 / 输出接口概述
6.2 中断系统内容简介
习题解答
重点 / 难点
Home
6.3 并行接口6.4 串行接口6.5 DMA 控制技术6.6 定时器 / 计数器
6.7 A/D 及 D/A 接口
本章主要介绍微机系统中的输入输出接口技术,通过学习,掌握接口的概念和功能,微处理器与 I/O 设备之间数据传输的 3 种控制方式,特别是要深刻理解中断和 DMA 的基本概念,熟练掌握编程和使用中断控制器与 DMA 控制的有关技术,掌握它们与 CPU 和外设连接的设计方法。在理解 I/O 接口原理的基础上,进一步学习并行接口、串行接口、定时器和模数、数模接口,了解它们的结构特点,理解其编程方法以及如何将接口和微处理器和外设进行连接,从而掌握系统扩充I/O 通道的基本方法和规律。
内容简介
Home
I/O 接口的概念、功能和一般结构 微处理器与 I/O 设备之间数据传输的控制方式 中断的基本概念,包括中断分类、中断向量、中断处理过程、中断优先级及中断嵌套的概念和实现方案。掌握 8259A 的使用方法。 DMA 的基本概念,包括 DMA 的传送条件、传送过程、 DMA 系统总线缓冲器的控制和驱动。 DMA 控制器 8237 的编程以及和 CPU 的连接。 并行接口、串行接口、定时器和模数、数模接口的结构、原理和编程连接方法。
重点与难点
Home
1
1. 输入 / 输出接口电路
HomeNext
数据线
控制线
状态线DB
CB
AB
数据输入寄存器( or 三态门)
数据输出寄存器(锁存器)
状态寄存器( or 三态门)
命令寄存器
译码电路
控制逻辑
接外设
接主机
输入 / 输出接口
一、程序控制的输入输出 2
Back Next
1. 无条件传送方式
适用范围 外设总是处于“准备好”状态
实现方法 适当位置直接安排 IN/OUT 指令 优点:软件及接口硬件简单
缺点:只适用于简单外设,适应范围较窄
Home
3
Back Next
2. 查询传送方式
适用范围 外设并不总是准备好,而且对传送速率、传送效率要求不高的场合
实现方法 CPU 在与外设交换数据前必须询问外设状态——“你准备好没有?” 优点:软件比较简单
缺点: CPU 效率低,数据传送的实时性差, 速度较慢
Home
4
Back Next
查询传送方式 的流程图
超时 ?
READY?
与外设进行数据交换
超时错读入并测试外设状态
Y
N
Y
N
传送完?
防止死循环
复位计时器
N
Y
Home
5
Back Next
适用范围 外设有主动申请 CPU 服务的权利
实现方法 CPU 在没有外设请求时可以去做更重要的事情,有请求时才去传输数据 优点: CPU 效率高,实时性好,速度快
缺点:程序编制较为复杂
二、中断传送方式
Home
6
Back Next
适用范围 外设直接与存储器进行数据交换 , CPU 不再担当数据传输的中介者
实现方法 总线由 DMA 控制器( DMAC )进行控制( CPU 要放弃总线控制权),内存 / 外设的地址和读写控制信号均由DMAC 提供 优点:很高的传输速率(可达几 MB/ 秒)
缺点: CPU 必须让出这些总线的控制权
三、 DMA 工作方式
Home
7
Back Next
适用范围 CPU 进一步摆脱 I/O 数据传送的负担
实现方法 采用专门的 I/O 协处理器,它不仅能控制数据的传送,而且,还可以执行算术逻辑运算、转移、搜索和转换等 优点:所有的 I/O 操作都是以块为单位来进行的
四、 I/O 处理机方式
Home
8
Back Next
I/OI/O 端口端口 I/OI/O 信息的三种类型:数据、命令、状态。传信息的三种类型:数据、命令、状态。传
送这三类信息的通道分别称为:数据端口送这三类信息的通道分别称为:数据端口 (I(I 、、 O)O) 、、命令端口命令端口 (O)(O) 、状态端口、状态端口 (I)(I) 。。 不同外设具有的端口数各不相同,计算机不同外设具有的端口数各不相同,计算机中为每一个端口都赋予一个惟一编号——称中为每一个端口都赋予一个惟一编号——称为端口地址为端口地址 (( 或端口号或端口号 )) 。。 端口有两种编址方式:统一编址和独立编端口有两种编址方式:统一编址和独立编址。址。
Home
9
Back Next
一、统一编址方式 编址方法 把外设接口与内存统一进行编址。各占据统一地址空间的不同部分。
优点 指令统一,灵活;访问控制信号统一,使用同一组的地址 / 控制信号。
缺点 内存可用地址空间减小
0
地址空间 ( 共 1MB)
内存地址(960KB)
I/O 地址(64KB)
FFFFFH
EFFFFHF0000H
Home
9
Back Next
二、独立编址方式 编址方法 外设地址空间和内存地址空间相互独立。
优点 内存地址空间不受 I/O 编址的影响
缺点 I/O 指令功能较弱,使用不同的读写控制信号
00000H
内存地址空间
内存空间(1MB)
FFFFFH
I/O 空间(64KB)
FFFFH
I/O 地址空间0000H
Home
本 节 小 结本 节 小 结通过本节的学习:掌握输入 /输出接口电路的基本概念,了解接口的用途。掌握输入 /输出端口的编址方式和特点。熟悉 CPU 与外设之间传输数据的几种控制方式的优缺点、适用场合。
HomeBack
1
1. 中断的基本概念( 1 ) 中断( 2 )中断源——能引起中断的外部设备或内部原因
HomeNext
常见的中断源: 一般的输入 / 输出设备 实时时钟 故障源 软件中断
2.8086/8088 的中断类型2
Back Next Home
3
Back Next
软件查询方式
Home
4
Back Next
硬件优先权排队电路
INTAin
CPU
INTA
INTR
外设 1 外设 2
外设接口1
菊花链逻辑电路
外设接口2
外设 3
外设接口3
≥1
菊花链逻辑电路
菊花链逻辑电路
┇
IREQ IREQ IREQ
中断确认
INTAin INTAin
中断确认 中断确认
Home
5
Back Next
8086CPU 可管理 256 种中断。每种中断都指定一个中断矢量号,每一种中断矢量号都与一个中断服务程序相对应。
中断向量 把各个中断服务子程序的入口都称为一个中断向量 。
中断向量表
将这些中断向量按一定的规律排列成一个表,就是所谓的中断向量表 。
Home
6
Back Next Home
7
Back Next
五个步骤:五个步骤: 中断请求中断请求 中断判优中断判优 (( 有时还要进有时还要进
行中断源识别行中断源识别 )) 中断响应中断响应 中断服务中断服务 中断返回中断返回
Home
8
Back Next
中断处理子程序的结构模式 :
保护 CPU 各寄存器的值
用指令设置中断允许标志 IF 来开放中断
中断处理子程序的主要部分
恢复各寄存器在进入中断处理时的值
使堆栈中保存的断点值和标志值分别装入 IP 、CS 和标志寄存器
Home
本 节 小 结本 节 小 结通过本节的学习:掌握有关中断的基本概念:中断、中断源等。
掌握 8086 中断系统中的中断源分类,熟悉各种中断的特点。 掌握中断向量的概念。 熟悉中断的处理过程。
HomeBack
1
1. 并行通信与并行接口 并行通信,是把一个字符的各位同时用几根线进行传输。传输速度快,信息率高,需要的电缆多。随着传输距离的增加,电缆的开销会成为突出的问题,所以并行通信用在传输速率要求较高,而传输距离较短的场合。
并行接口, 是指采用并行传输方式来传输数据的接口标准。可以做输入或输出使用。
HomeNext
典型的并行接口和外设连接
2
Back Next
控制寄存器
输入缓冲寄存器
输出缓冲寄存器
状态寄存器
数据输入准备好
数据输入回答
数据输入
数据输出
数据输出准备好
数据输出回答
数据总线
读出信号
写入信号
复位
准备好
中断请求
地址
译码
CPU
地址
片选
A
A
0
1
并行接口
输入设备
输出设备
Home
3
Back Next
8255A 芯片内部结构及其功能
Home
4
Back Next
8255 与系统的连接示意图
D0~D7
WR
RD
A1
A0
CS
DB
IOW
IOR
A1
A0
译码器
8255
A 口
B 口
C 口
D0~D7
外 设
A15 ~A2
系统总线
Home
5
Back Next
8255A 芯片的控制字
11 :端口 C(PC -PC ) 输入
1 :端口 B 输入
0 :端口 C(PC -PC ) 输出
0 :端口 B 输出
1 :端口 B 方式 1
0 :端口 B 方式 0
1X :端口 A 方式 2
1 :端口 C ( PC -PC )输入
1 :端口 A 输入
0 :端口 C ( PC -PC )输出
0 :端口 A 输出
00 :端口 A 方式 0
01 :端口 A 方式 1
D 6 D 5 D 4 D 3 D 2 D 1 D 03 0
3 0
7 4
7 4
方式控制字标识位
Home
6
Back Next
工作方式 0―― 简单输入 / 输出——查询方式;A , B , C 三个端口均可。
Home
三态缓冲器地址译码器
&
数据
来自外设
8
8
IO/M
RD
数据总线
地址总线
方式方式 00 输入(输入( IN ALIN AL ,, PORTPORT ) 框图) 框图
7
Back Next
Home
方式方式 00 输出(输出( OUT PORTOUT PORT ,, ALAL ) 框图) 框图
锁存器到外设
8
8
IO/M
WR
地址译码器
数据总线
地址总线
&
CE
8
Back Next
工作方式 1―― 选通输入 / 输出——中断方式;A , B ,两个端口均可。
Home
1 1 0
B 口方式 1 输出控制字
PB7~PB0
PC2PC1
PC0
INTEB
PC2
与门WR
D7~D0
OBFB
ACKB
INTRB
1 0 1 0
A 口方式 1 输出控制字
PA7~PA0
PC6PC7
PC3
INTEA
PC6
与门
OBFA
ACKA
INTRA
WR
D7~D0
9
Back Next
Home
方式方式 11 下输入端口的联络信号下输入端口的联络信号
1 0 1 1A 口方式 1 输入控制字
PA7~PA0
PC4PC5
PC3
INTEA
PC4
与门IBFA
STBA
INTRA
RD
D7~D0
A 口方式 1 输入时相应的联络信号
1 1 1B 口方式 1 输入控制字
B 口方式 1 输入时相应的联络信号
PB7~PB0
PC2PC1
PC0
INTEB
PC2
与门RD
D7~D0
IBFB
STBB
INTRB
8
Back Next
工作方式 2―― 双向输入 / 输出——中断方式。只有 A 端口才有。
Home
PA7~PA0
PC6PC7
ACKAOBFA
D7~D0
RD
WR
PC4PC5
STBAIBFA
INTEA1
PC4
INTEA2
PC6与
门
PC3
INTRA
或门
与
门
本 节 小 结本 节 小 结通过本节的学习:掌握并行接口的概念、并行接口的特点和功能。 了解并行接口芯片 8255A 的结构、并行接口的工作方式,能利用并行接口芯片编程。
HomeBack
1
1. 串行通信与串行接口 串行通信,串行通信指的是数据一位一位地依
次传输,每一位数据占据一个固定的时间长度。
串行接口, 是指采用串行传输方式来传输数据的接口标准。
HomeNext
2
串行通信线路有如下三种方式
单工通信
半双工通信
全双工通信
发送器 接收器
发送器 /接收器
发送器 /接收器
发送器 /接收器
发送器 /接收器
A 站 B 站
Back Next Home
1. 异步通信方式
3
Back Next
1 2 3 4 5 6 7 8
5-8 位数据 空闲位
1
起始位
停止位
Home
2. 同步通信方式
4
Back Next
① 面向比特 (bit) 型规程
② 面向字符型规程
Home
5
Back Next
8251A 芯片内部结构及其功能
发送
缓冲器
并 串
转换
串 并
转换
接收
缓冲器
发送控制电路
接收控制电路
TxD
TxRDY
TxEMPTY
TxC
RxD
RxRDY
RxC
SYNDET/BRKDET
数据总线
缓冲器
读 / 写
控制逻辑电路
调制 / 解调
控制电路
D -D7 0
RESET
CLK
C/D
RD
WR
CS
DSR
DTR
CTS
RTS
内 部 总
线
发 送
器
接 收
器
Home
6
Back Next
11 )) CPU(CPU( 数据数据 )→8251)→8251 的的 THR THR ;;22 )) TSRTSR 移空时,移空时, THR → TSRTHR → TSR ,, LSRLSR 中“数据发送保持中“数据发送保持
寄存器空” 状态位置位 ;寄存器空” 状态位置位 ;33 )) TSRTSR 根据根据 LCRLCR 中规定的格式从低到高逐位发送数据 ;中规定的格式从低到高逐位发送数据 ;44 )) LSRLSR 中“数据发送保持寄存器空” 状态位可用来产生中“数据发送保持寄存器空” 状态位可用来产生
中断,也可查询该状态位,以实现数据的连续发送。中断,也可查询该状态位,以实现数据的连续发送。
8251A 芯片发送数据过程
TSR
THR
串行数据输出
并行数据LSRINT
LCR
数据状态1)
2)
3)
2)4)
4)
Home
7
Back Next
11 )) SINSIN 引脚→ 引脚→ RSRRSR ;;22 )) RSRRSR 根据根据 LSRLSR 中规定的数据位数确定是否收到了一个完整中规定的数据位数确定是否收到了一个完整的数据,收到后将数据→的数据,收到后将数据→ RBRRBR ;;33 )) RBRRBR 收到收到 RSRRSR 的数据后,将的数据后,将 LSRLSR 寄存器中“寄存器中“接收缓冲寄存接收缓冲寄存器满器满”的状态位置位;”的状态位置位;44 )) LSRLSR 中中““接收缓冲寄存器满接收缓冲寄存器满””状态位可用来产生中断,也可状态位可用来产生中断,也可查询该状态位,查询该状态位,以实现数据的连续接收。以实现数据的连续接收。
8251A 芯片接收数据过程
RSR
RBR
串行数据输入并行数据
LSRINT
LCR
数据状态
1)
2)
3)4)
Home
本 节 小 结本 节 小 结通过本节的学习:掌握串行接口的概念、串行接口的特点和功能。 掌握串行通信线路的三种方式的特点。熟悉可编程串行接口芯片 8251A 的内部结构、外部引脚功能。 掌握 8251A 的编程应用。
HomeBack
1
1. DMA 控制器 DMA 控制器可以象 CPU那样得到总线控制权,
用 DMA 方式实现外部设备和存储器之间的数据高速传输。
一个 DMA 控制器通常可以连接一个或几个输入 /
输出接口,每个接口通过一组连线和 DMA 控制器相连。
将 DMA 控制器中和某个接口有联系的部分为一个通道。而一个 DMA 控制器一般由几个通道组成。
HomeNext
2
DMA 方式,外设向內存传输数据的过程外设准备好数据后向 DMAC 发出 DMA 传送请求信
号;
DMAC经过处理后,由总线仲裁机构裁决,使 CPU
出让总线控制权,并向 DMAC 发出总线响应信号;
DMAC 接到响应信号后,成为总线的主控者;
DMAC 向外设发出 DMA 应答信号,开始 DMA 传送;
DMA 传送结束, DMAC 向外设发出 EOP 信号,并撤消对 CPU 的总线请求,交回系统总线的管理和控制权。
Back Next Home
8237 芯片内部结构及其功能 3
Back Next
数据总线缓冲器
读 / 写逻辑部件
控制逻辑工作方式寄存器及
状态寄存器
通道 0 地址及计数
通道 1 地址及计数
通道 2 地址及计数
通道 3 地址及计数
优先选择逻辑
DRQ
DACK0
0
DRQ
DACK 1
1
DRQ
DACK 2
2
DRQ
DACK 3
3
D -D7 0
I/ORI/OWCLK
0A
CS
READYHRQ
HLDAMEMRMEMW
AENADSTB
TCMARK
内部总线
1A2A3A
4A5A6A7A
RESET
Home
工作方式寄存器
4
Back Next
AL TCS EW RP EN EN EN EN
1 :通道 0 起动位
1 :优先权旋转位
1 :写扩展位
1 :通道 1 起动位
1 :通道 2 起动位
1 :通道 3 起动位
7D 6D 5D 4D 3D 2D 1D 0D
2 1 03
TC
停止位
自动转入位
Home
5
Back Next
状态寄存器
UP TC TC TC TC
1 :通道 0 到达终点计数状态
1 :通道 1 到达终点计数状态
1 :通道 2 到达终点计数状态
1 :通道 3 到达终点计数状态
D 7 D 6 D 5 D 4 D 3 D 2 D 1 D 0
3 2 1 0
修改标志位
Home
本 节 小 结本 节 小 结通过本节的学习:掌握DMA控制技术的特点。掌握DMA方式传输数据的基本过程。熟悉可编程DMA控制器 8237 的内部结构、外部引脚功能。 掌握 8237 的编程方法。
HomeBack
1
定时的本质是计数,将若干片小的时间单元累加起来,就获得一段时间。
HomeNext
实现定时的方法实现定时的方法:: 软件方法:用一段程序实现延时软件方法:用一段程序实现延时
• 利用利用程序循环程序循环延迟指定的时间延迟指定的时间• 缺点:缺点: CPUCPU 占用率高,延时精度低,兼容差占用率高,延时精度低,兼容差
硬件方法:定时硬件方法:定时 // 计数器电路计数器电路• 利用利用脉冲计数脉冲计数在设定的时间输出定时信号在设定的时间输出定时信号
● ● 82538253 是一种硬件定时是一种硬件定时 // 计数器芯片计数器芯片
2
8253 芯片外部引线
DB D7-D0
8253
A1
A0
WR
RD
CS 通道 2
通道 1
通道 0
CLK0
GATE0
OUT0
CLK1
GATE1
OUT1
CLK1
GATE1
OUT1
A1
A0
IOW
IOR
片选信号
Back Next Home
8253 芯片内部结构及其功能 3
Back Next Home
4
Back Next
82538253 的工作模式的工作模式 方式方式 0——0—— 计数结束产生中断计数结束产生中断 方式方式 1——1—— 可编程的单脉冲可编程的单脉冲 (( 单稳单稳 ))触发器 触发器 方式方式 2——2——分频器分频器 ((速度波发生器速度波发生器 ))
方式方式 3——3—— 方波发生器 方波发生器 方式方式 4——4—— 软件触发的选通信号发生器软件触发的选通信号发生器 方式方式 5——5—— 硬件触发的选通信号发生器 硬件触发的选通信号发生器
Home
5
Back Next
8253 控制寄存器的格式
SC1 SC0 RW1 RW0 M2 M1 M0 BCD
1-- 计数值为 BCD 码格式
0-- 计数值为二进制格式M2 M1 M0 模式选择
0 0 0 模式 0
0 0 1 模式 1
/ 1 0 模式 2
/ 1 1 模式 3
1 0 0 模式 4
1 0 1 模式 5
0 0---- 对计数器进行锁存
0 1---- 只读 / 写低 8 位字节
1 0---- 只读 / 写高 8 位字节
1 1---- 只读 / 写低 8 位字节 ,
再读 / 写高 8 位字节 .
0 0---- 选计数器 0
0 1---- 选计数器 1
1 0---- 选计数器 2
1 1---- 无意义
Home
6
Back Next
8253 与系统的连接示意图
CLK
GATE
OUT
D0~D7
WR
RD
A1
A0
CS
DB
IOW
IOR
A1
A0
译码器高位地址A15-A2
8253
共三组
82538253占用占用 44 个接个接口地址:口地址: 计数器计数器 00 计数器计数器 11 计数器计数器 22 控制寄存器控制寄存器
((决定决定 82538253 的基地址的基地址 ))
Home
7
Back Next
初始化程序流程
写控制字
写计数值低 8位
写计数值高 8位
*
非必须
写入顺序:
可按计数器分别写入控制字和初值。
也可先写所有计数器控制字,再写入它们的初值
Home
本 节 小 结本 节 小 结通过本节的学习:掌握定时的本质和定时的方法。熟悉可编程定时 / 计数器 8253 的内部结构、外部引脚功能。 掌握 8253 的六种不同工作模式各自的特点及使用方法。 掌握 8253 的编程流程和应用。
HomeBack
1
完成这种模拟量向数字量转换的器件称为模拟模拟 // 数数字转换器字转换器,简称为 ADC 或 A/D 。
HomeNext
将数字量转换成模拟量的器件称为 将数字量转换成模拟量的器件称为数字数字 // 模拟转换器模拟转换器,,简称简称 DACDAC 或或 D/AD/A 。 。
模拟量模拟量是指一些连续变化的物理量,所谓的连续变化是是指一些连续变化的物理量,所谓的连续变化是指:从时间上说,它随时间连续变化;从数值上说,它指:从时间上说,它随时间连续变化;从数值上说,它的数值也是连续变化的。的数值也是连续变化的。
数字量数字量是不连续的、间断的并且它能表示的数值范围也受微机的限制。
2
D/A转换器的主要性能指标1) 分辨率 :8 位 :分辨率 1/255
2) 线性度3) 转换精度4) 建立时间5) 温度系数6) 电源抑制比7) 工作温度范围8) 失调误差9) 增益误差10) 非线性误差
Back HomeNext
DAC0832 转换器的逻辑图3
Back HomeNext
4
Back HomeNext
DAC0832DAC0832 工作方式工作方式
1. 1. 单缓冲方式单缓冲方式 适用于一路模拟量输出 适用于一路模拟量输出 ,, 或多路模拟量非同或多路模拟量非同步输出步输出 ..
2.2. 双缓冲方式双缓冲方式 适用于多个 适用于多个 DAC0832DAC0832 同时输出同时输出 ..
3. 3. 直通方式直通方式 适用于连续反馈控制线路 适用于连续反馈控制线路 ..
5
D/A转换器的主要性能指标
1) 分辨率2) 转换精度3) 转换时间4) 增益系数5) 温度系数6) 对电源电压变化的抑制比
Back HomeNext
ADC 0809 转换器的逻辑图6
Back HomeNext
控制与时序
起动 时钟
8 位A/D
SAR
树状开关
256RT 型电阻网络
(中断)
3 位地址
地址锁存允许
VccGND +VREF -VREF 输出允许 OE
比较器VST
VIN
8
位模拟量输入
8
位模拟开关
地址锁存与译码
锁存缓冲
器三态输
出
8
位数字量输出
转换结束
ADC 0809 与系统总线的连接6
Back HomeNext
7
Back HomeNext
AD570AD570 是是 ADAD公司生产的公司生产的 88 位逐次逼近型位逐次逼近型
A/DA/D转换芯片,它将转换芯片,它将 D/AD/A转换电路、基准电压、转换电路、基准电压、
时钟、比较器、逐次逼近寄存器以及输出缓冲时钟、比较器、逐次逼近寄存器以及输出缓冲
器等集成在一块芯片上,并具有三态输出。器等集成在一块芯片上,并具有三态输出。
AD570AD570 结构结构
8
Back HomeNext
程序查询方式 程序查询方式 中断方式 中断方式 CPUCPU等待方式等待方式 固定延迟方式 固定延迟方式
AD570AD570 的工作方式的工作方式
本 节 小 结本 节 小 结通过本节的学习:理解 D/A转换和 A/D转换的含义。熟悉 D/A转换器和 A/D转换器的主要性能指标的含义。 掌握 DAC0832 D/A转换器和 ADC 0809 A/D转换器,以及 AD570 A/D转换器的结构、工作方式。
HomeBack