《微型计算机接口和外设的数据传输教学.ppt》由会员分享,可在线阅读,更多相关《微型计算机接口和外设的数据传输教学.ppt(63页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第五章第五章 微型计算机接口和外设的数据传输微型计算机接口和外设的数据传输本章重点本章重点接口电路的功能接口电路的功能接口部件和接口部件和I/OI/O端口端口CPUCPU和外设之间的三种数据传输方式、各自优缺点和使用场和外设之间的三种数据传输方式、各自优缺点和使用场合合中断传输方式的原理和可屏蔽中断的响应过程中断传输方式的原理和可屏蔽中断的响应过程DMADMA方式的原理和方式的原理和DMADMA控制器的功能控制器的功能 机原理 第五章 微型计算机和外设的数据传输(2)I/O接口概述接口电路按功能可分为两类接口电路按功能可分为两类:使微处理器正常工作所需的辅助电路使微处理器正常工作所需的辅助电路
2、输入输出接口电路(输入输出接口电路(2 2)为什么要用接口电路)为什么要用接口电路为什么需要为什么需要I/OI/O接口(电路)?接口(电路)?微机的外部设备微机的外部设备多种多样多种多样,其工作原理、,其工作原理、驱动方式、信息格式、以及工作速度方面彼驱动方式、信息格式、以及工作速度方面彼此差别很大,它们不能与此差别很大,它们不能与CPUCPU直接相连,必须直接相连,必须经过中间电路再与系统相连经过中间电路再与系统相连机原理 第五章 微型计算机和外设的数据传输(3)5.2 CPU5.2 CPU和输入输出设备之间的信号和输入输出设备之间的信号 CPUCPU和输入输出设备之间有以下几类信号和输入输
3、出设备之间有以下几类信号:(1 1)数据信息)数据信息,又分为:又分为:数字量数字量 模拟量模拟量 开关量开关量 (2 2)状态信息)状态信息 (3 3)控制信息)控制信息 机原理 第五章 微型计算机和外设的数据传输(4)5.3 5.3 接口部件的接口部件的I/OI/O端口端口 数据端口数据端口 状态端口状态端口 控制端口或命令端口控制端口或命令端口 机原理 第五章 微型计算机和外设的数据传输(5)I/O接口的主要功能寻址功能输入/输出功能数据转换功能联络功能中断管理功能复位功能可编程功能错误检测功能机原理 第五章 微型计算机和外设的数据传输(6)外设通过接口和系统的连接外设通过接口和系统的连
4、接 机原理 第五章 微型计算机和外设的数据传输(7)5.4 CPU5.4 CPU和外设之间的数据传送方式和外设之间的数据传送方式 解决定时问题的三种传送方式:解决定时问题的三种传送方式:程序方式程序方式 中断方式中断方式 DMADMA方式方式 机原理 第五章 微型计算机和外设的数据传输(8)5.4.1 5.4.1 程序方式程序方式 1.1.无条件传送方式无条件传送方式 图图 无无条条件件传传送送方方式式的的工工作作原原理理机原理 第五章 微型计算机和外设的数据传输(9)无条件传送方式及其接口在CPU与慢速变化的设备交换数据时,可以认为它们总是处于“就绪”状态,随时可以进行数据传送,这就是无条件
5、传送,或称立即传送、同步传送(演示)适合:简单设备,如LED数码管、按键或按纽等优点:无条件传送的接口和操作均十分简单前提:外设必须随时就绪机原理 第五章 微型计算机和外设的数据传输(10)无条件传送:输入示例MOV MOV DX,160HDX,160HININ AL,DX AL,DX机原理 第五章 微型计算机和外设的数据传输(11)无条件传送:输入实例MOV DX,160HIN AL,DX74LS244+5V10K x 8G1 G2数数据据总总线线CSRD机原理 第五章 微型计算机和外设的数据传输(12)无条件传送:输出示例MOV DX,160HMOV AL,BXOUT DX,AL机原理 第
6、五章 微型计算机和外设的数据传输(13)无条件传送:输出实例MOV DX,160HMOV AL,BXOUT DX,AL+5V74LS373300 x 8LE OE数数据据总总线线CSWR机原理 第五章 微型计算机和外设的数据传输(14)无条件传送:输入输出接口K7K1K0+5VD0D7A0A15CLKLS06反相反相驱动器驱动器LS2738D锁存器锁存器LS244三态三态缓冲器缓冲器8000H译码译码+5VLED0LED7GIOWIORnext:next:mov dx,8000hmov dx,8000h;DX;DX指向数据端口指向数据端口in al,dxin al,dx;从输入端口读开关状态从
7、输入端口读开关状态not alnot al;反相反相out dx,alout dx,al;送输出端口显示送输出端口显示call delaycall delay;调子程序延时调子程序延时jmp nextjmp next;重复重复机原理 第五章 微型计算机和外设的数据传输(15)无条件传送实例无条件传送实例例:用无条件传送方式编写产生任意波形、任意频率的脉例:用无条件传送方式编写产生任意波形、任意频率的脉冲信号程序。冲信号程序。现给定三种波形现给定三种波形A A、B B和和C C。其中时间间隔其中时间间隔T=10msT=10ms,每种波形由,每种波形由T1T1T8T8共八个状态组成,共八个状态组成
8、,要求连续重复发送要求连续重复发送T1T1T8T8信号。信号。机原理 第五章 微型计算机和外设的数据传输(16)2.2.条件传送方式条件传送方式 (1 1)条件传送的概念)条件传送的概念(2 2)条件传送的三个环节:)条件传送的三个环节:CPUCPU从接口中读取状态字从接口中读取状态字CPUCPU检测状态字检测状态字传送数据传送数据机原理 第五章 微型计算机和外设的数据传输(17)查询传送的两个环节 查询环节查询环节寻址状态口寻址状态口读取状态寄存器的标志位读取状态寄存器的标志位若不就绪就继续查询,直至就绪若不就绪就继续查询,直至就绪 传送环节传送环节寻址数据口寻址数据口是输入,通过输入指令从
9、数据端口读入数据是输入,通过输入指令从数据端口读入数据是输出,通过输出指令向数据端口输出数据是输出,通过输出指令向数据端口输出数据流程流程输入状态输入状态就绪?就绪?数据交换数据交换YN机原理 第五章 微型计算机和外设的数据传输(18)查询式输入的接口电路查询式输入的接口电路 机原理 第五章 微型计算机和外设的数据传输(19)查询式输出的接口电路查询式输出的接口电路 机原理 第五章 微型计算机和外设的数据传输(20)查查询询式式输输入入过过程程的的流流程程图图机原理 第五章 微型计算机和外设的数据传输(21)查询输入接口IOR+5V8D锁存器锁存器8位位三态三态缓冲器缓冲器译码译码1位位三态三
10、态缓冲器缓冲器RQ A0A158000H8001HD0D7D0D输入输入设备设备IORSTBmov dx,8000hmov dx,8000h;DX;DX指向状态端口指向状态端口status:status:in al,dxin al,dx;读状态端口读状态端口test al,01htest al,01h;测试标志位测试标志位D0D0jz statusjz status;D0;D00 0,未就绪,继续查询,未就绪,继续查询inc dxinc dx;D0;D01 1,就绪,就绪,DXDX指向数据端口指向数据端口in al,dxin al,dx;从数据端口输入数据从数据端口输入数据机原理 第五章 微型
11、计算机和外设的数据传输(22)查询输出接口8D锁存器锁存器译码译码1位位三态三态缓冲器缓冲器RQ A0A158000H8001HD0D7D7D+5V输出输出设备设备ACKIOWIORmov dx,8000hmov dx,8000h;DX;DX指向状态端口指向状态端口status:status:in al,dxin al,dx;读取状态端口的状态数据读取状态端口的状态数据test al,80htest al,80h;测试标志位测试标志位D7D7jnz statusjnz status;D7;D71 1,未就绪,继续查询,未就绪,继续查询inc dxinc dx;D7;D70 0,就绪,就绪,DX
12、DX指向数据端口指向数据端口mov al,bufmov al,buf;变量变量bufbuf送送ALALout dx,alout dx,al;将数据输出给数据端口将数据输出给数据端口机原理 第五章 微型计算机和外设的数据传输(23)查询方式的EEPROM编程2817AA0A10A0A108000HI/O0I/O7D0D7D0译码译码A11A19译码译码A0A15 RDY/BUSYIORWERDMEMWMEMRCEnext:next:mov al,55hmov al,55h;写入内容写入内容55H55Hmov bx,almov bx,al;写入存储单元写入存储单元nopnop;空操作指令,起延时作
13、用空操作指令,起延时作用nopnopnext1:next1:in al,dxin al,dx;查询状态口查询状态口test al,01htest al,01h;测试测试D0D0jz next1jz next1;D0;D00 0,芯片还在写入,芯片还在写入inc bxinc bx;D0;D01 1,写毕,指针移动,写毕,指针移动loop nextloop next;循环至全部字节写完循环至全部字节写完机原理 第五章 微型计算机和外设的数据传输(24)查询式数据采集系统查询式数据采集系统8086/8088CPUA/D转换转换234多路开关多路开关数据端口数据端口读选通读选通8位数据位数据1位状态位
14、状态控制端口控制端口写选通写选通状态端口状态端口读选通读选通启动启动 D4数据数据READYD7D0D1D21个模拟量个模拟量8个个输入输入模拟量模拟量A0A7机原理 第五章 微型计算机和外设的数据传输(25)查询传送方式及其接口CPUCPU需要先了解(查询)外设的工作状态,然后在外需要先了解(查询)外设的工作状态,然后在外设可以交换信息的情况下(设可以交换信息的情况下(就绪就绪)实现数据输入或输)实现数据输入或输出出对多个外设的情况,则对多个外设的情况,则CPUCPU按一定顺序依次查询(轮按一定顺序依次查询(轮询)。先查询的外设将优先进行数据交换询)。先查询的外设将优先进行数据交换查询传送的
15、特点是:工作可靠,适用面宽,但传送效查询传送的特点是:工作可靠,适用面宽,但传送效率低率低机原理 第五章 微型计算机和外设的数据传输(26)5.4.2 5.4.2 中断方式中断方式断点断点主程序主程序中断服务程序中断服务程序中断请求中断请求对外设对外设进行处理进行处理继续执行继续执行返回断点返回断点CPU在执行程序中,被内部或外部的事件所打断,转去执行一段预先安排好的中断服务程序;服务结束后,又返回原来的断点,继续执行原来的程序流程流程机原理 第五章 微型计算机和外设的数据传输(27)5.4.2 5.4.2 中断方式中断方式 1.1.中断传送方式的原理中断传送方式的原理 机原理 第五章 微型计
16、算机和外设的数据传输(28)可屏蔽中断的响应和执行可屏蔽中断的响应和执行 机原理 第五章 微型计算机和外设的数据传输(29)2.2.中断优先级问题的解决中断优先级问题的解决 (1)(1)解决中断优先级的三种办法:解决中断优先级的三种办法:软件查询方式软件查询方式 简单硬件方式简单硬件方式菊花链法菊花链法专用硬件方式专用硬件方式 (2)(2)三种方法的优缺点三种方法的优缺点 机原理 第五章 微型计算机和外设的数据传输(30)中断优先级菊花链及其逻辑电路中断优先级菊花链及其逻辑电路 (a)(a)菊花链菊花链 机原理 第五章 微型计算机和外设的数据传输(31)典型的可编程中断控制器典型的可编程中断控
17、制器 机原理 第五章 微型计算机和外设的数据传输(32)5.4.3 DMA5.4.3 DMA方式方式 1.DMA1.DMA传送方式的提出传送方式的提出DMADMA传送方式的优点传送方式的优点数据传输率数据传输率机原理 第五章 微型计算机和外设的数据传输(33)DMA传送方式希望克服程序控制传送的不足:外设CPU存储器外设CPU存储器直接存储器存取DMA:外设存储器外设存储器CPU释放总线,由DMA控制器管理机原理 第五章 微型计算机和外设的数据传输(34)DMA传送的工作过程 CPU对DMA控制器进行初始化设置 外设、DMAC和CPU三者通过应答信号建立联系:CPU将总线交给DMAC控制 DM
18、A传送DMA读存储器:存储器 外设DMA写存储器:存储器 外设 自动增减地址和计数,判断传送完成否机原理 第五章 微型计算机和外设的数据传输(35)DMA传送流程HLDA发存储器地址发存储器地址传送数据传送数据传送结束?传送结束?DMA结束结束修改地址指针修改地址指针流程流程机原理 第五章 微型计算机和外设的数据传输(36)DMADMA控制器的功能:控制器的功能:向向CPUCPU发总线请求信号发总线请求信号 实行对总线的控制实行对总线的控制 修改所用的修改所用的 存储器或接口的地址指针存储器或接口的地址指针 发读写控制信号发读写控制信号 存放数据长度存放数据长度 交还总线控制权交还总线控制权机
19、原理 第五章 微型计算机和外设的数据传输(37)DMADMA传输单个数据传输单个数据(输出过程输出过程)的原理的原理 机原理 第五章 微型计算机和外设的数据传输(38)DMADMA控制器的内部最小配置和接口要求控制器的内部最小配置和接口要求 机原理 第五章 微型计算机和外设的数据传输(39)从接口往内存传输一个数据块的过程:从接口往内存传输一个数据块的过程:接口往接口往DMADMA控制器发一个控制器发一个DMADMA请求请求 得到总线控制权得到总线控制权 地址寄存器的内容送地址总线地址寄存器的内容送地址总线 通知接口将数据送到数据总线通知接口将数据送到数据总线 数据送到所指单元数据送到所指单元
20、 地址寄存器的值加地址寄存器的值加1 1 字节计数器的值减字节计数器的值减1 1 如字节计数器的值不为如字节计数器的值不为0 0,则回到,则回到;否则结束否则结束 机原理 第五章 微型计算机和外设的数据传输(40)DMADMA传输对接口的要求:传输对接口的要求:控制寄存器有控制寄存器有1 1位指出数据传输方向位指出数据传输方向 控制寄存器有控制寄存器有1 1位用来启动位用来启动I/OI/O操作操作 状态寄存器有状态寄存器有1 1位指出设备当前是否处于忙状态位指出设备当前是否处于忙状态 机原理 第五章 微型计算机和外设的数据传输(41)DMADMA传输对传输对DMADMA控制寄存器的要求:控制寄
21、存器的要求:有有1 1位作为位作为DMADMA允许位允许位 有有1 1位用来确定位用来确定DMADMA方向方向 有有1 1位决定进行一次传输后放弃还是维持对总线的控制权位决定进行一次传输后放弃还是维持对总线的控制权 状态寄存器有状态寄存器有1 1位表示数据块传输是否结束位表示数据块传输是否结束机原理 第五章 微型计算机和外设的数据传输(42)对对DMADMA控制器和接口部件预置的信息:控制器和接口部件预置的信息:往往DMADMA控制器的字节计数器设置初值控制器的字节计数器设置初值 往往DMADMA控制器的地址寄存器中设置地址初值控制器的地址寄存器中设置地址初值 对对DMADMA控制器设置控制字
22、并启动控制器设置控制字并启动DMADMA操作操作 对接口部件设置控制字并启动对接口部件设置控制字并启动I/OI/O操作操作 机原理 第五章 微型计算机和外设的数据传输(43)启动数据块输入的例子启动数据块输入的例子IDLE:IN AL,INTSTATIDLE:IN AL,INTSTAT;检测设备是否处于检测设备是否处于 忙状态,如是,则等待忙状态,如是,则等待 TEST AL,04 TEST AL,04 JNZ IDLE JNZ IDLE MOV AX,COUNT MOV AX,COUNT ;设置计数设置计数 OUT BYTE-REG,AX OUT BYTE-REG,AX LEA AX,BUF
23、FER LEA AX,BUFFER ;设置地址初值设置地址初值 OUT ADD-REG OUT ADD-REG,AX AX 机原理 第五章 微型计算机和外设的数据传输(44)MOV ALMOV AL,DMACDMAC;取原取原DMADMA控制字控制字OR ALOR AL,49H49H;设置方向、块传输设置方向、块传输;和允许标志和允许标志OUT DMACON,ALOUT DMACON,AL;置置DMADMA控制字控制字MOV ALMOV AL,INTC ;INTC ;设置接口的传输方向设置接口的传输方向;及允许标志及允许标志OR ALOR AL,05H05HOUT INTCON,AL ;OUT
24、 INTCON,AL ;设置接口的控制字设置接口的控制字 机原理 第五章 微型计算机和外设的数据传输(45)3.3.DMA DMA控制器的工作特点控制器的工作特点 是一个接口电路是一个接口电路 能够控制系统总线能够控制系统总线操纵外设和存储器之间的数据传输操纵外设和存储器之间的数据传输机原理 第五章 微型计算机和外设的数据传输(46)5.4.4 5.4.4 输入输出过程中提出的几个问题输入输出过程中提出的几个问题 1.1.系统如何知道接口已准备好数据等待系统如何知道接口已准备好数据等待CPUCPU提取或者准备接提取或者准备接收收CPUCPU的数据的数据?2.2.当系统中有几个设备处于同一种传输方式之下、而且同当系统中有几个设备处于同一种传输方式之下、而且同时发传输请求时,系统到底先响应哪个请求时发传输请求时,系统到底先响应哪个请求?机原理 第五章 微型计算机和外设的数据传输(47)传送方式的比较无条件传送:慢速外设需与CPU保持同步查询传送:简单实用,效率较低中断传送:外设主动,可与CPU并行工作,但每次传送需要大量额外时间开销 DMA传送:DMAC控制,外设直接和存储器进行数据传送,适合大量、快速数据传送机原理 第五章 微型计算机和外设的数据传输(48)本章学习到此结束,谢谢!本章学习到此结束!