第七章 输入输出接口(2)_第1页
第七章 输入输出接口(2)_第2页
第七章 输入输出接口(2)_第3页
第七章 输入输出接口(2)_第4页
第七章 输入输出接口(2)_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第 7 7 章章 输入输入/ /输出接口输出接口2了解和掌握:了解和掌握: 接口的基本功能接口的基本功能 端口的概念端口的概念 端口的编址方式端口的编址方式 I/OI/O地址译码地址译码一、一、 输入输出概述输入输出概述什么是什么是I/OI/O接口(电路)?接口(电路)? I/OI/O接口是位于系统与外设间、用来协助完接口是位于系统与外设间、用来协助完成数据传送和控制任务的逻辑电路成数据传送和控制任务的逻辑电路 PCPC机系统板的可编程接口芯片、机系统板的可编程接口芯片、I/OI/O插槽上插槽上的电路板(适配器)都是接口电路的电路板(适配器)都是接口电路数据总线数据总线 DB控制总线控制总线

2、 CB地址总线地址总线 AB存存储储器器I/O接接口口输输入入设设备备I/O接接口口输输出出设设备备CPU微型计算机的结构示意图微型计算机的结构示意图一、一、 输入输出概述输入输出概述为什么需要为什么需要I/OI/O接口(电路)?接口(电路)? 微机的外部设备多种多样微机的外部设备多种多样 工作原理、驱动方式、信息格式、以及工作原理、驱动方式、信息格式、以及工作速度方面彼此差别很大工作速度方面彼此差别很大 它们不能与它们不能与CPUCPU直接相连直接相连 必须经过中间电路再与系统相连必须经过中间电路再与系统相连 这部分电路被称为这部分电路被称为I/OI/O接口电路接口电路多种外设多种外设一、一

3、、 输入输出概述输入输出概述什么是微机接口技术?什么是微机接口技术? 处理微机系统与外设间联系的技术处理微机系统与外设间联系的技术 注意其软硬结合的特点注意其软硬结合的特点 根据应用系统的需要,使用和构造相应根据应用系统的需要,使用和构造相应的接口电路,编制配套的接口程序,支的接口电路,编制配套的接口程序,支持和连接有关的设备持和连接有关的设备1. I/O1. I/O接口的主要功能接口的主要功能 对输入输出数据进行缓冲和锁存对输入输出数据进行缓冲和锁存输出接口有输出接口有锁存环节锁存环节,输入接口有,输入接口有缓冲环节缓冲环节实际的电路常用:实际的电路常用:输出锁存缓冲环节输出锁存缓冲环节,输

4、入锁存缓冲环节输入锁存缓冲环节 对信号的形式和数据的格式进行变换对信号的形式和数据的格式进行变换微机直接处理:数字量、开关量、脉冲量微机直接处理:数字量、开关量、脉冲量 对对I/OI/O端口进行寻址端口进行寻址 与与CPUCPU和和I/OI/O设备进行联络设备进行联络一、一、 输入输出概述输入输出概述2. I/O2. I/O接口的典型结构接口的典型结构I/OI/O端口端口1 1I/OI/O端口端口2 2I/OI/O端口端口3 3地址地址译码译码数据数据缓冲缓冲控制控制电路电路外外设设ABABDBDBCBCBC CP PU U一、一、 输入输出概述输入输出概述(1). (1). 接口电路的内部结

5、构接口电路的内部结构 CPUCPU与外设主要有数据、状态和控制信息需与外设主要有数据、状态和控制信息需要相互交换,于是从应用角度看内部:要相互交换,于是从应用角度看内部: 数据寄存器数据寄存器 保存外设给保存外设给CPUCPU和和CPUCPU发往外设的数据发往外设的数据 状态寄存器状态寄存器 保存外设或接口电路的状态保存外设或接口电路的状态 控制寄存器控制寄存器 保存保存CPUCPU给外设或接口电路的命令给外设或接口电路的命令一、一、 输入输出概述输入输出概述10I/OI/O端口CPUCPU数据数据状态状态控制控制外设外设I/OI/O接口接口DBDB(2). (2). 接口电路的外部特性接口电

6、路的外部特性 主要体现在引脚上,分成两侧信号主要体现在引脚上,分成两侧信号面向面向CPUCPU一侧的信号:一侧的信号: 用于与用于与CPUCPU连接连接 主要是数据、地址和控制信号主要是数据、地址和控制信号面向外设一侧的信号:面向外设一侧的信号: 用于与外设连接用于与外设连接 提供的信号五花八门提供的信号五花八门 功能定义、时序及有效电平等差异较大功能定义、时序及有效电平等差异较大一、一、 输入输出概述输入输出概述3. 3. 接口电路芯片的分类接口电路芯片的分类 接口电路核心部分往往是一块或数块大接口电路核心部分往往是一块或数块大规模集成电路芯片(接口芯片):规模集成电路芯片(接口芯片): 通

7、用接口芯片通用接口芯片 支持通用的数据输入输出和控制的接口芯片支持通用的数据输入输出和控制的接口芯片 面向外设的专用接口芯片面向外设的专用接口芯片 针对某种外设设计、与该种外设接口针对某种外设设计、与该种外设接口 面向微机系统的专用接口芯片面向微机系统的专用接口芯片 与与CPUCPU和系统配套使用,以增强其总体功能和系统配套使用,以增强其总体功能一、一、 输入输出概述输入输出概述4. 4. 接口电路的可编程性接口电路的可编程性 许多接口电路具有多种功能和工作方式,许多接口电路具有多种功能和工作方式,可以通过编程的方法选定其中一种可以通过编程的方法选定其中一种 接口需要进行物理连接,还需要编写接

8、接口需要进行物理连接,还需要编写接口软件口软件 接口软件有两类:接口软件有两类: 初始化程序段初始化程序段设定芯片工作方式等设定芯片工作方式等 数据交换程序段数据交换程序段管理、控制、驱动外设,管理、控制、驱动外设,负责外设和系统间信息交换负责外设和系统间信息交换一、一、 输入输出概述输入输出概述 5. I/O 5. I/O端口的编址端口的编址接口电路占用的接口电路占用的I/OI/O端口有两类编排形式端口有两类编排形式 I/OI/O端口单独编址端口单独编址 I/OI/O地址空间独立于存储地址空间地址空间独立于存储地址空间 如如8086/80888086/8088 I/OI/O端口与存储器统一编

9、址端口与存储器统一编址 它们共享一个地址空间它们共享一个地址空间 如如MCS-51MCS-51单片机单片机理解端口理解端口一、一、 输入输出概述输入输出概述1515接口和端口接口和端口接口接口1 1接口接口2 2接口接口N N端口端口1 1端口端口2 2端口端口m m端口端口1 1端口端口1 1端口端口2 2端口端口2 2端口端口m m端口端口m m端口端口编址编址端口地址端口地址= =芯片地址(高位地址)芯片地址(高位地址)+ +片内地址片内地址(1) I/O(1) I/O端口单独编址端口单独编址 优点:优点: I/OI/O端口的地址空间独立端口的地址空间独立 控制和地址译码电路相对简单控制

10、和地址译码电路相对简单 专门的专门的I/OI/O指令使程序清晰易读指令使程序清晰易读 缺点:缺点: I/OI/O指令没有存储器指令丰富指令没有存储器指令丰富内存内存空间空间I/OI/O空间空间FFFFFFFFFF0 0FFFFFFFF80 x8680 x86采用采用I/OI/O端口独立编址端口独立编址一、一、 输入输出概述输入输出概述(2) I/O(2) I/O端口与存储器统一编址端口与存储器统一编址 优点:优点: 不需要专门的不需要专门的I/OI/O指令指令 I/OI/O数据存取与存储器数据数据存取与存储器数据存取一样灵活存取一样灵活 缺点:缺点: I/OI/O端口要占去部分存储器端口要占去

11、部分存储器地址空间地址空间 程序不易阅读(不易分清程序不易阅读(不易分清访问内存还是访问外设)访问内存还是访问外设)内存内存部分部分I/OI/O部分部分存储器空间存储器空间0000000000FFFFFFFFFF一、一、 输入输出概述输入输出概述6. 8088/80866. 8088/8086的输入输出指令的输入输出指令 输入指令输入指令IN AL,data8IN AL,data8; ;字节输入,直接寻址字节输入,直接寻址IN AL,DXIN AL,DX; ;字节输入,间接寻址字节输入,间接寻址IN AX,data8IN AX,data8; ;字输入,直接寻址字输入,直接寻址IN AX,DXI

12、N AX,DX; ;字输入,间接寻址字输入,间接寻址 输出指令输出指令OUT data8,ALOUT data8,AL; ;字节输出,直接寻址字节输出,直接寻址OUT DX,ALOUT DX,AL; ;字节输出,间接寻址字节输出,间接寻址OUT data8,AXOUT data8,AX; ;字输出,直接寻址字输出,直接寻址OUT DX,AXOUT DX,AX; ;字输出,间接寻址字输出,间接寻址演示演示演示演示一、一、 输入输出概述输入输出概述(1) 8088/8086的的I/O端口端口 8088086/80886/8088只能通过输入输出指令与外设进行数据交换;只能通过输入输出指令与外设进行

13、数据交换;呈现给程序员的外设是端口(呈现给程序员的外设是端口(PortPort),即),即I/OI/O地址地址 地址线上的地址信号用地址线上的地址信号用IO/M来区分来区分 80868086用于寻址外设端口的地址线为用于寻址外设端口的地址线为1616条,只使用条,只使用20根根地址线中的地址线中的16根:根:A15A0 I/O操作可寻址的操作可寻址的I/O端口数为端口数为64K(65536)个个 I/O地址范围为地址范围为0FFFFH IBM PC只使用了只使用了1024个个I/O地址地址(03FFH) 每个端口用于传送一个字节的外设数据每个端口用于传送一个字节的外设数据一、一、 输入输出概述

14、输入输出概述(2) I/O(2) I/O寻址方式寻址方式 8088088/80868/8086的端口有的端口有64K64K个,无需分段,设计个,无需分段,设计有两种寻址方式有两种寻址方式v直接寻址:只用于寻址直接寻址:只用于寻址00H FFH00H FFH前前256256个端个端口,操作数口,操作数data8data8表示端口号表示端口号v间接寻址:可用于寻址全部间接寻址:可用于寻址全部64K64K个端口,个端口,DXDX寄存器的值就是端口号寄存器的值就是端口号 对大于对大于FFHFFH的端口只能采用间接寻址方式的端口只能采用间接寻址方式一、一、 输入输出概述输入输出概述(3) (3) 数据交

15、换方式数据交换方式 如果输入输出一个字节,利用如果输入输出一个字节,利用ALAL寄存器寄存器 如果输入输出一个字,利用如果输入输出一个字,利用AXAX寄存器寄存器 输入一个字,实际上是从连续两个端口输入两个输入一个字,实际上是从连续两个端口输入两个字节,分别送字节,分别送ALAL(对应低地址端口)和(对应低地址端口)和AHAH(对应(对应高地址端口)高地址端口) 输出一个字,实际上是将输出一个字,实际上是将ALAL(对应低地址端口)(对应低地址端口)和和AHAH(对应高地址端口)两个字节的内容输出给(对应高地址端口)两个字节的内容输出给连续两个端口连续两个端口一、一、 输入输出概述输入输出概述

16、ININ指令指令(从(从20H20H端口输入一个字)端口输入一个字);方法方法1 1:字输入,直接寻址:字输入,直接寻址IN AX,20HIN AX,20H;方法方法2 2:字输入,间接寻址:字输入,间接寻址MOV DX,20HMOV DX,20HIN AX,DXIN AX,DX;方法方法3 3:字节输入,直接寻址:字节输入,直接寻址IN AL,21HIN AL,21HMOV AH,ALMOV AH,ALIN AL,20HIN AL,20H;方法方法4 4:字节输入,间接寻址:字节输入,间接寻址MOV DX,21HMOV DX,21HIN AL,DXIN AL,DXMOV AH,ALMOV A

17、H,ALDEC DXDEC DXIN AL,DXIN AL,DX一、一、 输入输出概述输入输出概述OUTOUT指令指令(向(向300H300H端口输出一个字节)端口输出一个字节);唯一的方法:间接寻址,字节量输出;唯一的方法:间接寻址,字节量输出MOV AL,bvarMOV AL,bvar ;bvarbvar是字节变量是字节变量MOV DX,300HMOV DX,300HOUT DX,ALOUT DX,AL一、一、 输入输出概述输入输出概述24247 7、I/OI/O地址的译码地址的译码目的:目的: 确定端口的地址确定端口的地址参加译码的信号:参加译码的信号: IORIOR,IOWIOW,高位

18、地址信号高位地址信号 OUTOUT指令将使总线的指令将使总线的IOWIOW信号有效信号有效 ININ指令将使总线的指令将使总线的IORIOR信号有效信号有效7. I/O7. I/O地址的译码地址的译码 I/OI/O地址的译码方法与存储器地址的译码方地址的译码方法与存储器地址的译码方法一样,但有它的特点:法一样,但有它的特点: 部分译码部分译码时,通常是中间地址线不连接时,通常是中间地址线不连接 部分译码也有最低地址线不连接的情况部分译码也有最低地址线不连接的情况 每个接口电路通常只占用几个每个接口电路通常只占用几个I/OI/O地址,这时地址,这时可以利用基本逻辑门电路进行地址译码可以利用基本逻

19、辑门电路进行地址译码 译码器:产生多个外设的译码器:产生多个外设的I/OI/O端口地址端口地址一、一、 输入输出概述输入输出概述2626部分地址译码部分地址译码 用部分高位地址信号(而不是全部)作为译码用部分高位地址信号(而不是全部)作为译码 信号,使得被选中存储器芯片占有几组不同信号,使得被选中存储器芯片占有几组不同 的地址范围。的地址范围。2727部分地址译码例部分地址译码例 两组地址:两组地址: F0000H F1FFFHF0000H F1FFFH B0000H B1FFFH B0000H B1FFFHA A1919A A1717A A1616A A1515A A1414A A1313&

20、amp; & 1 162646264CSCS1 11 11 11 10 00 00 0高位地址:高位地址: 1 1110001100010110001011000,111100011110002828全地址译码全地址译码 用全部的高位地址信号作为译码信号,使用全部的高位地址信号作为译码信号,使 得存储器芯片的每一个单元都占据一个唯得存储器芯片的每一个单元都占据一个唯 一的内存地址。一的内存地址。一、一、 输入输出概述输入输出概述2929全地址译码例全地址译码例A A1919A A1818A A1717A A1616A A1515A A1414A A1313& & 1 1

21、CS1CS11 1S SRAM RAM 62646264CS2CS2+5V+5V0 01 11 11 11 10 00 00 0一、一、 输入输出概述输入输出概述3030I/OI/O地址译码例地址译码例 某外设接口有某外设接口有4 4个端口,地址为个端口,地址为2F0H-2F3H2F0H-2F3H,由由A11A2译码得到,而译码得到,而A1、A0用来区分接口用来区分接口中的中的4 4个端口。试画该接口与系统的连接图。个端口。试画该接口与系统的连接图。3131I/OI/O地址译码例地址译码例3232I/OI/O地址译码例地址译码例 译码电路图:译码电路图: 1 1A A1111A A1010A

22、A8 8A A3 3A A2 2A A9 9A A7 7A A4 4& &CECEA A1 1A A0 0接口芯片接口芯片IORIORIOWIOW& &/IOR+/IOW/IOR+/IOW:与非门;:与非门;A2-A11:A2-A11:或非门;最后与非门或非门;最后与非门IBM PC/ATIBM PC/AT主机板的主机板的I/OI/O译码电路译码电路接口芯片内部译码接口芯片内部译码A A0 0A A4 4DMADMA控制器控制器1 1中断控制器中断控制器1 1定时计数器定时计数器并行接口电路并行接口电路DMADMA页面寄存器页面寄存器中断控制器中断控制器2 2D

23、MADMA控制器控制器2 2协处理器协处理器A A5 5A A6 6A A7 7A A8 8A A9 9ALS138ALS138译码器译码器HLDAHLDAMASTERMASTERA AB BC CE1E1E2E2E3E3Y0Y0Y1Y1Y2Y2Y3Y3Y4Y4Y5Y5Y6Y6Y7Y7一、一、 输入输出概述输入输出概述IBM PC/XTIBM PC/XT主机板的主机板的I/OI/O译码电路译码电路Y Y0 0 Y Y1 1 Y Y2 2 Y Y3 3 Y Y4 4 Y Y5 5Y Y6 6 Y Y7 7A A5 5A A6 6 A A7 7A A8 8A A9 9 AENAENIOWIOWA

24、AB B C CG2BG2BG2AG2AG1G1DMA CSDMA CS(82378237)INTR CSINTR CS(82598259)T/C CST/C CS(82538253)PPI CSPPI CS(82558255)WRTDMAPGWRTDMAPG(写(写DMADMA页面寄存器)页面寄存器)WRTNMIREGWRTNMIREG(写(写NMINMI屏蔽寄存器)屏蔽寄存器)一、一、 输入输出概述输入输出概述逻辑门电路进行逻辑门电路进行I/OI/O地址译码地址译码A A9 9A A8 8A A7 7A A6 6A A5 5A A2 2A A4 4A A3 3AENAENA A1 1A A

25、0 074LS0374LS033E7H3E7H一、一、 输入输出概述输入输出概述二、数据传送的控制方式二、数据传送的控制方式 程序控制下的数据传送程序控制下的数据传送通过通过CPUCPU执行程序中的执行程序中的I/OI/O指令来完成传送,又分为:无条件传送、查询指令来完成传送,又分为:无条件传送、查询传送、中断传送传送、中断传送 直接存储器存取(直接存储器存取(DMADMA)传送请求由外设向传送请求由外设向DMADMA控制器(控制器(DMACDMAC)提出,后者向)提出,后者向CPUCPU申请总线,申请总线,最后最后DMACDMAC利用系统总线来完成外设和存储器间的利用系统总线来完成外设和存储

26、器间的数据传送数据传送 I/OI/O处理机处理机CPUCPU委托专门的委托专门的I/OI/O处理机来管理外处理机来管理外设,完成传送和相应的数据处理设,完成传送和相应的数据处理1. 1. 无条件传送方式及其接口无条件传送方式及其接口 在在CPUCPU与慢速变化的设备交换数据时,可以认为与慢速变化的设备交换数据时,可以认为它们总是处于它们总是处于“就绪就绪”状态,随时可以进行数据状态,随时可以进行数据传送,这就是无条件传送,或称立即传送、同步传送,这就是无条件传送,或称立即传送、同步传送传送 适合于简单设备,如适合于简单设备,如LEDLED数码管、按键或按纽等数码管、按键或按纽等 无条件传送的接

27、口和操作均十分简单无条件传送的接口和操作均十分简单 这种传送有前提:外设必须随时就绪这种传送有前提:外设必须随时就绪流程流程二、数据传送的控制方式二、数据传送的控制方式无条件传送:输入示例无条件传送:输入示例MOV DX, 160HMOV DX, 160HININAL, DXAL, DXIOR三态缓冲器OEI/O装置地址译码器CSD7D0A15A1A00160H二、数据传送的控制方式二、数据传送的控制方式无条件传送:输入实例无条件传送:输入实例MOV MOV DX, 160HDX, 160HININAL, DXAL, DX74LS24474LS244+5V+5V10K x 810K x 8G

28、G1 1 G G2 2数据总线数据总线CSCSRDRD二、数据传送的控制方式二、数据传送的控制方式缓冲器缓冲器74LS24474LS244简介简介常用典型芯片:常用典型芯片:74LS240/24174LS240/241二、数据传送的控制方式二、数据传送的控制方式无条件传送:输出示例无条件传送:输出示例MOV DX, 160HMOV AL, BXOUT DX, AL地址译码器数据锁存器A15A1IOWA0CS0160H输出设备D7D0二、数据传送的控制方式二、数据传送的控制方式无条件传送:输出实例无条件传送:输出实例MOV DX, 160HMOV AL, BXOUT DX, AL二、数据传送的控

29、制方式二、数据传送的控制方式锁存器锁存器74LS37374LS373简介简介使能使能G GHLHHHHLLLLLQ0Z输出允许OE输入输出Q常用典型芯片常用典型芯片:74LS273,573,Intel8282/828374LS273,573,Intel8282/8283二、数据传送的控制方式二、数据传送的控制方式无条件传送:输入输出接口无条件传送:输入输出接口K7K7K1K1K0K0+5V+5VD D0 0D D7 7A A0 0A A1515CLKCLKLS06LS06反相反相驱动器驱动器LS273LS2738D8D锁存器锁存器LS244LS244三态三态缓冲器缓冲器8000H8000H译码

30、译码+5V+5VLED0LED0LED7LED7G GIOWIOWIORIOR二、数据传送的控制方式二、数据传送的控制方式next:next: mov dx,8000hmov dx,8000h;DX;DX指向数据端口指向数据端口in al,dxin al,dx; ;从输入端口读开关状态从输入端口读开关状态not alnot al; ;反相反相out dx,alout dx,al; ;送输出端口显示送输出端口显示call delaycall delay; ;调子程序延时调子程序延时jmp nextjmp next; ;重复重复2. 2. 查询传送方式及其接口查询传送方式及其接口 CPUCPU需要

31、先了解(查询)外设的工作状态,需要先了解(查询)外设的工作状态,然后在外设可以交换信息的情况下(就绪)然后在外设可以交换信息的情况下(就绪)实现数据输入或输出实现数据输入或输出 对多个外设的情况,则对多个外设的情况,则CPUCPU按一定顺序依次按一定顺序依次查询(轮询)。先查询的外设将优先进行数查询(轮询)。先查询的外设将优先进行数据交换据交换 查询传送的特点是:工作可靠,适用面宽,查询传送的特点是:工作可靠,适用面宽,但传送效率低但传送效率低就绪就绪二、数据传送的控制方式二、数据传送的控制方式查询传送的两个环节查询传送的两个环节 查询环节查询环节 寻址状态口寻址状态口 读取状态寄存器的标志位

32、读取状态寄存器的标志位 若不就绪就继续查询,直至就绪若不就绪就继续查询,直至就绪 传送环节传送环节 寻址数据口寻址数据口 是输入,通过输入指令从数据端口是输入,通过输入指令从数据端口读入数据读入数据 是输出,通过输出指令向数据端口是输出,通过输出指令向数据端口输出数据输出数据输入状态输入状态就绪?就绪?数据交换数据交换Y YN N流程流程二、数据传送的控制方式二、数据传送的控制方式(1). (1). 查询输入接口查询输入接口IORIOR+5V+5V8D8D锁存器锁存器8 8位位三态三态缓冲器缓冲器译码译码1 1位位三态三态缓冲器缓冲器R RQ Q A A0 0A A15158000H8000H

33、8001H8001HD D0 0D D7 7D D0 0D D输入输入设备设备IORIORSTBSTB二、数据传送的控制方式二、数据传送的控制方式 mov dx,8000h mov 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

34、 al,dx; ;从数据端口输入数据从数据端口输入数据(2). (2). 查询输出接口查询输出接口8D8D锁存器锁存器译码译码1 1位位三态三态缓冲器缓冲器R RQ Q A A0 0A A15158000H8000H8001H8001HD D0 0D D7 7D D7 7D D+5V+5V输出输出设备设备ACKACKIOWIOWIORIOR二、数据传送的控制方式二、数据传送的控制方式 mov dx,8000h mov dx,8000h ;DX;DX指向状态端口指向状态端口status:status: in al,dxin al,dx; ;读取状态端口的状态数据读取状态端口的状态数据test a

35、l,80htest al,80h; ;测试标志位测试标志位D7D7jnz statusjnz status;D7;D71 1,未就绪,继续查询,未就绪,继续查询inc dxinc dx;D7;D70 0,就绪,就绪,DXDX指向数据端口指向数据端口mov al,bufmov al,buf; ;变量变量bufbuf送送ALALout dx,alout dx,al; ;将数据输出给数据端口将数据输出给数据端口3. 3. 中断传送方式中断传送方式 CPUCPU在执行程序中,被在执行程序中,被内部或外部的事件所内部或外部的事件所打断,转去执行一段打断,转去执行一段预先安排好的中断服预先安排好的中断服务

36、程序;服务结束后,务程序;服务结束后,又返回原来的断点,又返回原来的断点,继续执行原来的程序继续执行原来的程序断点断点主程序主程序中断服务程序中断服务程序中断请求中断请求对外设对外设进行处理进行处理继续执行继续执行返回断点返回断点流程流程二、数据传送的控制方式二、数据传送的控制方式(1). (1). 中断传送与接口中断传送与接口 中断传送是一种效率更高的程序传送方式中断传送是一种效率更高的程序传送方式 进行传送的中断服务程序是预先设计好的进行传送的中断服务程序是预先设计好的 中断请求是外设随机向中断请求是外设随机向CPUCPU提出的提出的 CPUCPU对请求的检测是有规律的:一般是在每条指令对

37、请求的检测是有规律的:一般是在每条指令的最后一个时钟周期采样中断请求输入引脚的最后一个时钟周期采样中断请求输入引脚 本节主要论述中断在输入和输出方面的应用本节主要论述中断在输入和输出方面的应用 中断还有着非常广泛的应用中断还有着非常广泛的应用二、数据传送的控制方式二、数据传送的控制方式中断输入接口中断输入接口D D0 0D D7 7+5V+5V8D8D锁存器锁存器8 8位位三态三态缓冲器缓冲器三态缓冲器三态缓冲器R RQ Q 译码译码 8001H8001H中断向量号中断向量号D D0 0D D7 7INTRINTRD D输入输入设备设备中断允许触发器中断允许触发器A A0 0A A1515中断

38、请求触发器中断请求触发器IORIORINTAINTASTBSTB二、数据传送的控制方式二、数据传送的控制方式(2) (2) 中断工作过程中断工作过程 中断请求中断请求n中断响应中断响应n关中断关中断n断点保护断点保护n中断识别中断识别n现场保护现场保护n中断服务中断服务n恢复现场恢复现场n开中断开中断n中断返回中断返回中断服务是进行数据交换的实质性环节中断服务是进行数据交换的实质性环节二、数据传送的控制方式二、数据传送的控制方式4. DMA4. DMA传送方式传送方式 希望克服程序控制传送的不足:希望克服程序控制传送的不足:外设外设CPUCPU存储器存储器外设外设CPUCPU存储器存储器 直接

39、存储器存取直接存储器存取DMADMA:外设外设存储器存储器外设外设存储器存储器 CPUCPU释放总线,由释放总线,由DMADMA控制器管理控制器管理二、数据传送的控制方式二、数据传送的控制方式DMADMA传送的工作过程传送的工作过程 CPU CPU对对DMADMA控制器进行初始化设置控制器进行初始化设置 外设、外设、DMACDMAC和和CPUCPU三者通过应答信号建三者通过应答信号建立联系:立联系:CPUCPU将总线交给将总线交给DMACDMAC控制控制 DMADMA传送传送 DMADMA读存储器:存储器读存储器:存储器 外设外设 DMADMA写存储器:存储器写存储器:存储器 外设外设 自动增

40、减地址和计数,判断传送完成否自动增减地址和计数,判断传送完成否二、数据传送的控制方式二、数据传送的控制方式DMADMA传送流程传送流程HLDAHLDA发存储器地址发存储器地址传送数据传送数据传送结束?传送结束?DMADMA结束结束修改地址指针修改地址指针流程流程二、数据传送的控制方式二、数据传送的控制方式传送方式的比较传送方式的比较 无条件传送:慢速外设需与无条件传送:慢速外设需与CPUCPU保持同步保持同步 查询传送:查询传送: 简单实用,效率较低简单实用,效率较低 中断传送:外设主动,可与中断传送:外设主动,可与CPUCPU并行工作,并行工作,但每次传送需要大量额外时间开销但每次传送需要大

41、量额外时间开销 DMADMA传送:传送:DMACDMAC控制,外设直接和存储器控制,外设直接和存储器进行数据传送,适合大量、快速数据传送进行数据传送,适合大量、快速数据传送DMADMA方式传送数据,具有最高的传送速度,但连接方式传送数据,具有最高的传送速度,但连接DMACDMAC比较复杂。比较复杂。在实际工程应用中,除非必须使用在实际工程应用中,除非必须使用DMACDMAC,否则就不使用它,宁,否则就不使用它,宁肯用查询或中断方式进行数据传送。肯用查询或中断方式进行数据传送。二、数据传送的控制方式二、数据传送的控制方式1.1. 什么是接口?什么是端口?接口有哪些功能?接口什么是接口?什么是端口

42、?接口有哪些功能?接口中传送的信息有哪几类?中传送的信息有哪几类? I/OI/O端口的寻址方式有哪些?在端口的寻址方式有哪些?在8086/80888086/8088微机系统微机系统中,中,CPUCPU是如何实现对是如何实现对I/OI/O端口寻址的?端口寻址的? CPUCPU与外设之间的输入输出数据传输方式有哪几种?与外设之间的输入输出数据传输方式有哪几种?何谓程序控制方式?它有哪几种基本方式?何谓程序控制方式?它有哪几种基本方式? 4. 4. 有一外设接口,其数据端口地址为有一外设接口,其数据端口地址为100H100H,状态端,状态端口地址为口地址为101H101H端口的端口的D7D7位表示输入设备的状态。当位表示输入设备的状态。当D7=1 D7=1 时,表示外设数据已经准备好。用状态查询时,表示外设数据已经准备好。用状态查询方式实现从外设输入数据。方式实现从外设输入数据。习习 题题5.5. 某外设接口,其数据端口地址为某外设接口,其数据端口地址为301H301H,状态,状态端口地址为端口地址为300H300H端口的端口的D0D0位表示输出设备的位表示输出设备的状态。当状态。当D0=1D0=1时,表示外设已经空闲,时,表示外设已经空闲,CPUCPU将将AH

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论