1、第五章 微型计算机接口和外设的数据传输/微机原理 第五章 微型计算机和外设的数据传输(2/本章重点/接口电路的功能 接口部件和I/O端口 CPU和外设之间的三种数据传输方式、各自优缺点和使用场合 中断传输方式的原理和可***中断的响应过程 DMA方式的原理和DMA***的功能/微机原理 第五章 微型计算机和外设的数据传输(3/I/O接口概述/接口电路按功能可分为两类/ 使微处理器正常工作所需的辅助电路 输入输出接口电路(2)为什么要用接口电路 为什么需要I/O接口(电路)/微机的外部设备多种多样,其工作原理、驱动方式、信息格式、以及工作速度方面彼此差别很大,它们不能与CPU直接相连,必须经过中间
2、电路再与系统相连/微机原理 第五章 微型计算机和外设的数据传输(4/5/2 CPU和输入输出设备之间的信号/CPU和输入输出设备之间有以下几类信号 / (1)数据信息/又分为: 数字量 模拟量 开关量 (2)状态信息 (3)控制信息/微机原理 第五章 微型计算机和外设的数据传输(5/5/3 接口部件的I/O端口/数据端口 状态端口 控制端口或命令端口/微机原理 第五章 微型计算机和外设的数据传输(6/I/O接口的主要功能/寻址功能 输入/输出功能 数据转换功能 联络功能 中断管理功能 复位功能 可编程功能 错误检测功能/微机原理 第五章 微型计算机和外设的数据传输(7/外设通过接口和系统的连接
3、/微机原理 第五章 微型计算机和外设的数据传输(8/5/4 CPU和外设之间的数据传送方式/解决定时问题的三种传送方式: 程序方式 中断方式 DMA方式/微机原理 第五章 微型计算机和外设的数据传输(9/5/4/1 程序方式/1/ 无条件传送方式/图 无条件传送方式的工作原理/微机原理 第五章 微型计算机和外设的数据传输(10/无条件传送方式及其接口/在CPU与慢速变化的设备交换数据时,可以认为它们总是处于“就绪”状态,随时可以进行数据传送,这就是无条件传送,或称立即传送、同步传送(演示) 适合:简单设备,如LED数码管、按键或按纽等 优点:无条件传送的接口和操作均十分简单 前提:外设必须随时
4、就绪/微机原理 第五章 微型计算机和外设的数据传输(11/无条件传送:输入示例/MOV DX/ 160H IN AL/ DX/微机原理 第五章 微型计算机和外设的数据传输(12/无条件传送:输入实例/MOV DX/ 160H IN AL/ DX/微机原理 第五章 微型计算机和外设的数据传输(13/无条件传送:输出示例/MOV DX/ 160H MOV AL/ BX OUT DX/ AL/微机原理 第五章 微型计算机和外设的数据传输(14/无条件传送:输出实例/MOV DX/ 160H MOV AL/ BX OUT DX/ AL/微机原理 第五章 微型计算机和外设的数据传输(15/无条件传送:输
5、入输出接口/next/mov dx/8000h/DX指向数据端口 in al/dx/从输入端口读开关状态 not al/反相 out dx/al/送输出端口显示 call delay/调子程序延时 jmp next/重复/微机原理 第五章 微型计算机和外设的数据传输(16/无条件传送实例/例:用无条件传送方式编写产生任意波形、任意频率的脉冲信号程序。 现给定三种波形A、B和C。 其中时间间隔T=10ms,每种波形由T1T8共八个状态组成,要求连续重复发送T1T8信号/微机原理 第五章 微型计算机和外设的数据传输(17/2 / 条件传送方式/1)条件传送的概念 (2)条件传送的三个环节: CPU
6、从接口中读取状态字 CPU检测状态字 传送数据/微机原理 第五章 微型计算机和外设的数据传输(18/查询传送的两个环节/查询环节 寻址状态口 读取状态寄存器的标志位 若不就绪就继续查询,直至就绪 传送环节 寻址数据口 是输入,通过输入指令从数据端口读入数据 是输出,通过输出指令向数据端口输出数据 流程/微机原理 第五章 微型计算机和外设的数据传输(19/查询式输入的接口电路/微机原理 第五章 微型计算机和外设的数据传输(20/查询式输出的接口电路/微机原理 第五章 微型计算机和外设的数据传输(21/查询式输入过程的流程图/微机原理 第五章 微型计算机和外设的数据传输(22/查询输入接口/mov
7、 dx/8000h/DX指向状态端口 status/in al/dx/读状态端口 test al/01h/测试标志位D0 jz status/D00,未就绪,继续查询 inc dx/D01,就绪,DX指向数据端口 in al/dx/从数据端口输入数据/微机原理 第五章 微型计算机和外设的数据传输(23/查询输出接口/mov dx/8000h/DX指向状态端口 status/in al/dx/读取状态端口的状态数据 test al/80h/测试标志位D7 jnz status/D71,未就绪,继续查询 inc dx/D70,就绪,DX指向数据端口 mov al/buf/变量buf送AL out
8、dx/al/将数据输出给数据端口/微机原理 第五章 微型计算机和外设的数据传输(24/查询方式的EEPROM编程/next/mov al/55h/写入内容55H mov bx/al/写入存储单元 nop/空操作指令,起延时作用 nop next1/in al/dx/查询状态口 test al/01h/测试D0 jz next1/D00,芯片还在写入 inc bx/D01,写毕,指针移动 loop next/循环至全部字节写完/微机原理 第五章 微型计算机和外设的数据传输(25/查询式数据采集系统/8086/8088 CPU/A/D转换/2/3/4/多路开关/数据端口读选通/8位数据/1位状态/
9、控制端口写选通/状态端口读选通/启动 D4/数据/READY/D7/D0/D1/D2/1个模拟量/8个 输入 模拟量/A0/A7/微机原理 第五章 微型计算机和外设的数据传输(26/查询传送方式及其接口/CPU需要先了解(查询)外设的工作状态,然后在外设可以交换信息的情况下(就绪)实现数据输入或输出 对多个外设的情况,则CPU按一定顺序依次查询(轮询)。先查询的外设将优先进行数据交换 查询传送的特点是:工作可靠,适用面宽,但传送效率低/微机原理 第五章 微型计算机和外设的数据传输(27/5/4/2 中断方式/CPU在执行程序中,被内部或外部的事件所打断,转去执行一段预先安排好的中断服务程序;服
10、务结束后,又返回原来的断点,继续执行原来的程序/流程/微机原理 第五章 微型计算机和外设的数据传输(28/5/4/2 中断方式/1/ 中断传送方式的原理/微机原理 第五章 微型计算机和外设的数据传输(29/可***中断的响应和执行/微机原理 第五章 微型计算机和外设的数据传输(30/2 / 中断优先级问题的解决/1)解决中断优先级的三种办法: 软件查询方式 简单硬件方式菊花链法 专用硬件方式 (2)三种方法的优缺点/微机原理 第五章 微型计算机和外设的数据传输(31/中断优先级菊花链及其逻辑电路/a) 菊花链/微机原理 第五章 微型计算机和外设的数据传输(32/典型的可编程中断***/微机原理
11、第五章 微型计算机和外设的数据传输(33/5/4/3 DMA方式/1/ DMA传送方式的提出 DMA传送方式的优点 数据传输率/微机原理 第五章 微型计算机和外设的数据传输(34/DMA传送方式/希望克服程序控制传送的不足: 外设CPU存储器 外设CPU存储器 直接存储器存取DMA: 外设存储器 外设存储器 CPU释放总线,由DMA***管理/微机原理 第五章 微型计算机和外设的数据传输(35/DMA传送的工作过程/CPU对DMA***进行初始化设置 外设、DMAC和CPU三者通过应答信号建立联系:CPU将总线交给DMAC控制 DMA传送 DMA读存储器:存储器 外设 DMA写存储器:存储器
12、外设 自动增减地址和计数,判断传送完成否/微机原理 第五章 微型计算机和外设的数据传输(36/DMA传送流程/流程/微机原理 第五章 微型计算机和外设的数据传输(37/DMA***的功能: 向CPU发总线请求信号 实行对总线的控制 修改所用的 存储器或接口的地址指针 发读写控制信号 存放数据长度 交还总线控制权/微机原理 第五章 微型计算机和外设的数据传输(38/DMA传输单个数据(输出过程)的原理/微机原理 第五章 微型计算机和外设的数据传输(39/DMA***的内部最小配置和接口要求/微机原理 第五章 微型计算机和外设的数据传输(40/从接口往内存传输一个数据块的过程/接口往DMA***发
13、一个DMA请求 得到总线控制权 地址寄存器的内容送地址总线 通知接口将数据送到数据总线 数据送到所指单元 地址寄存器的值加1 字节计数器的值减1 如字节计数器的值不为0,则回到/否则结束/微机原理 第五章 微型计算机和外设的数据传输(41/DMA传输对接口的要求/控制寄存器有1位指出数据传输方向 控制寄存器有1位用来启动I/O操作 状态寄存器有1位指出设备当前是否处于忙状态/微机原理 第五章 微型计算机和外设的数据传输(42/DMA传输对DMA控制寄存器的要求/有1位作为DMA允许位 有1位用来确定DMA方向 有1位决定进行一次传输后放弃还是维持对总线的控制权 状态寄存器有1位表示数据块传输是
14、否结束/微机原理 第五章 微型计算机和外设的数据传输(43/对DMA***和接口部件预置的信息/往DMA***的字节计数器设置初值 往DMA***的地址寄存器中设置地址初值 对DMA***设置控制字并启动DMA操作 对接口部件设置控制字并启动I/O操作/微机原理 第五章 微型计算机和外设的数据传输(44/启动数据块输入的例子/IDLE/IN AL/INTSTAT/检测设备是否处于 忙状态,如是,则等待 TEST AL/04 JNZ IDLE MOV AX/COUNT /设置计数 OUT BYTE-REG/AX LEA AX/BUFFER /设置地址初值 OUT ADD-REG,AX/微机原理
15、第五章 微型计算机和外设的数据传输(45/MOV AL,DMAC/取原DMA控制字 OR AL,49H/设置方向、块传输 /和允许标志 OUT DMACON/AL/置DMA控制字 MOV AL,INTC /设置接口的传输方向 /及允许标志 OR AL,05H OUT INTCON/AL /设置接口的控制字/微机原理 第五章 微型计算机和外设的数据传输(46/3/ DMA***的工作特点/是一个接口电路 能够控制系统总线 操纵外设和存储器之间的数据传输/微机原理 第五章 微型计算机和外设的数据传输(47/5/4/4 输入输出过程中提出的几个问题/1/系统如何知道接口已准备好数据等待CPU提取或者
16、准备接收CPU的数据? 2/当系统中有几个设备处于同一种传输方式之下、而且同时发传输请求时,系统到底先响应哪个请求/微机原理 第五章 微型计算机和外设的数据传输(48/传送方式的比较/无条件传送:慢速外设需与CPU保持同步 查询传送: 简单实用,效率较低 中断传送:外设主动,可与CPU并行工作,但每次传送需要大量额外时间开销 DMA传送:DMAC控制,外设直接和存储器进行数据传送,适合大量、快速数据传送/本章学习到此结束,谢谢/微机原理 第五章 微型计算机和外设的数据传输(50/多种多样的外设/工作原理不同 机械、电子、机电、电磁 传送信息类型多样 数字量、模拟量、开关量 传送速度差别极大 传
17、送方式不尽相同 串行、并行 编码方式不同 二进制、BCD码、ASCII码/返回/微机原理 第五章 微型计算机和外设的数据传输(51/输出接口的锁存环节/返回/微机原理 第五章 微型计算机和外设的数据传输(52/输出接口的锁存、缓冲环节/返回/微机原理 第五章 微型计算机和外设的数据传输(53/输入接口的缓冲环节/返回/微机原理 第五章 微型计算机和外设的数据传输(54/输入接口的锁存、缓冲环节/返回/微机原理 第五章 微型计算机和外设的数据传输(55/端口(PORT/端口泛指I/O地址,通常对应寄存器 一个接口电路可以具有多个I/O端口,每个端口用来保存和交换不同的信息 数据寄存器、状态寄存器和控制寄存器占有的I/O地址常依次被称为数据端口、状态端口和控制端口,用于保存数据、状态和控制信息 输入、输出端口可以是同一个I/O地址/一定要理解/返回/微机原理 第五章 微型计算机和外设的数据传输(56/IN AL/ 21H/返回/微机原理 第五章 微型计算机和外设的数据传输(57/OUT 43H/ AL/返回/微机原理 第五章 微型计算机和外设的数据传输(58/无条件传送流程/返回/微机原理 第五章 微型计算机和外设的数据传输(59/就绪(