七基本输入输出接口

上传人:无*** 文档编号:193183909 上传时间:2023-03-09 格式:PPT 页数:39 大小:619.50KB
收藏 版权申诉 举报 下载
七基本输入输出接口_第1页
第1页 / 共39页
七基本输入输出接口_第2页
第2页 / 共39页
七基本输入输出接口_第3页
第3页 / 共39页
资源描述:

《七基本输入输出接口》由会员分享,可在线阅读,更多相关《七基本输入输出接口(39页珍藏版)》请在装配图网上搜索。

1、1第第章章基基本本输输入入输输出出接接口口 本章内容本章内容芯片芯片I/O输入输出指令输入输出指令无条件传送方式无条件传送方式查询传送方式查询传送方式中断工作过程中断工作过程7.1 I/O端口概述端口概述一、为什么需要一、为什么需要I/OI/O接口(电路)接口(电路)?微机的外部设备多种多样。微机的外部设备多种多样。工作原理、驱动方式、信息格式、以及工作工作原理、驱动方式、信息格式、以及工作速度方面彼此差别很大。速度方面彼此差别很大。它们不能与它们不能与CPU直接相连,必须经过中间电直接相连,必须经过中间电路与系统相连。路与系统相连。这部分电路被称为这部分电路被称为I/O接口电路。接口电路。多

2、种外设多种外设二、什么是二、什么是I/O接口(电路)?接口(电路)?I/O接口是位于系统与外设间、用来协助完成接口是位于系统与外设间、用来协助完成数数据传送和控制任务据传送和控制任务的逻辑电路。的逻辑电路。PC机系统板的可编程接口芯片、机系统板的可编程接口芯片、I/O总线槽的总线槽的电路板(适配器)都是接口电路电路板(适配器)都是接口电路7.1.1 I/O接口的主要功能接口的主要功能 对输入输出数据进行缓冲和锁存对输入输出数据进行缓冲和锁存输出接口有锁存环节;输入接口有缓冲环节输出接口有锁存环节;输入接口有缓冲环节 对信号的形式和数据的格式进行变换对信号的形式和数据的格式进行变换微机直接处理:

3、微机直接处理:数字量数字量、开关量开关量、脉冲量脉冲量 对对I/O端口进行寻址端口进行寻址 与与CPU和和I/O设备进行联络设备进行联络7.1.2 I/O接口的典型结构接口的典型结构控制总线控制总线CB地址总线地址总线ABI/O接口电路接口电路数据数据控制控制状态状态数据总线数据总线DBCPU外设外设控制寄存器控制寄存器状态寄存器状态寄存器数据寄存器数据寄存器数据端口数据端口:用于数据信息输入输出的端口。:用于数据信息输入输出的端口。状态端口状态端口:CPUCPU通过状态端口了解外设或接口部件本身状态。通过状态端口了解外设或接口部件本身状态。控制端口控制端口:CPUCPU通过控制端口发出控制命

4、令,以控制接口部件通过控制端口发出控制命令,以控制接口部件或外设的动作。或外设的动作。7.1.3 I/O端口的编址端口的编址接口电路占用的接口电路占用的I/O端口有两类编排形式端口有两类编排形式I/O端口单独编址端口单独编址I/O地址空间独立于存储地址空间地址空间独立于存储地址空间如如8086/8088I/O端口与存储器统一编址端口与存储器统一编址它们共享一个地址空间它们共享一个地址空间如如M6800 I/O端口单独编址端口单独编址优点:优点:I/O端口的地址空间独立端口的地址空间独立控制和地址译码电路相对简单控制和地址译码电路相对简单专门的专门的I/O指令使程序清晰易读指令使程序清晰易读缺点

5、:缺点:I/O指令没有存储器指令丰富指令没有存储器指令丰富内存内存空间空间I/O空间空间FFFFF0FFFF80 x86采用采用I/O端口独立编址端口独立编址 I/O端口与存储器统一编址端口与存储器统一编址优点:优点:不需要专门的不需要专门的I/O指令指令I/O数据存取与存储器数数据存取与存储器数据存取一样灵活据存取一样灵活缺点:缺点:I/O端口要占去部分存储端口要占去部分存储器地址空间器地址空间程序不易阅读(不易分程序不易阅读(不易分清访存和访问外设)清访存和访问外设)内存内存部分部分I/O部分部分存储器空间存储器空间00000FFFFF7.1.4 8088/8086的输入输出指令的输入输出

6、指令输入指令输入指令(IN:将外设数据传送给将外设数据传送给CPU内的内的AL/AX)IN AL,i8;字节输入字节输入IN AL,DX;字节输入字节输入IN AX,i8;字输入字输入IN AX,DX;字输入字输入输出指令输出指令(OUT:将将CPU内的内的AL/AX数据传送给外设)数据传送给外设)OUT i8,AL;字节输出字节输出OUT DX,AL;字节输出字节输出OUT i8,AX;字输出字输出OUT DX,AX;字输出字输出演示演示演示演示8088/8086的的I/O端口端口8088/8086只能通过输入输出指令与外设进只能通过输入输出指令与外设进行数据交换;呈现给程序员的外设是端口行

7、数据交换;呈现给程序员的外设是端口(Port),即即I/O地址地址8088/8086用于寻址外设端口的地址线为用于寻址外设端口的地址线为16条,端口最多为条,端口最多为21665536(64K)个,端)个,端口号为口号为0000H FFFFHI/O寻址方式寻址方式8088/8086的的端口有端口有64K个,无需分段,设计个,无需分段,设计有两种寻址方式有两种寻址方式直接寻址直接寻址:只用于寻址:只用于寻址00H FFH前前256个端口,个端口,操作数操作数i8表示端口号表示端口号间接寻址间接寻址:可用于寻址全部:可用于寻址全部64K个端口,个端口,DX寄存寄存器的值就是端口号器的值就是端口号对

8、大于对大于0FFH的端口只能采用间接寻址方式的端口只能采用间接寻址方式数据交换方式数据交换方式如果输入输出一个字节,利用如果输入输出一个字节,利用AL寄存器寄存器如果输入输出一个字,利用如果输入输出一个字,利用AX寄存器寄存器输入一个字,实际上是从连续两个端口输入输入一个字,实际上是从连续两个端口输入两个字节,分别送两个字节,分别送AL(对应低地址端口)(对应低地址端口)和和AH(对应高地址端口)(对应高地址端口)输出一个字,实际上是将输出一个字,实际上是将AL(对应低地址(对应低地址端口)和端口)和AH(对应高地址端口)两个字节(对应高地址端口)两个字节的内容输出给连续两个端口的内容输出给连

9、续两个端口IN指令实例(指令实例(从从20H端口输入一个字)端口输入一个字);方法;方法1 1:直接寻址,字量输入:直接寻址,字量输入in ax,20hin ax,20h;方法;方法2 2:间接寻址,字量输入:间接寻址,字量输入mov dx,20hmov dx,20hin ax,dxin ax,dx;方法;方法3:直接寻址,字节量输入直接寻址,字节量输入in al,21hin al,21hmov ah,almov ah,alin al,20hin al,20h;方法;方法4:间:间接寻址,字节量输入接寻址,字节量输入mov dx,21hmov dx,21hin al,dxin al,dxmov

10、 ah,almov ah,aldec dxdec dxin al,dxin al,dxOUT指令实例指令实例(向(向300H端口输出一个字节)端口输出一个字节);惟一的方法:间接寻址,字节量输出;惟一的方法:间接寻址,字节量输出mov al,bvarmov al,bvar;bvarbvar是字节变量是字节变量mov dx,300hmov dx,300hout dx,alout dx,al7.2 CPU与外设数据传送的方式与外设数据传送的方式 1.无条件传送方式无条件传送方式在在CPU与慢速变化的设备交换数据时,可以与慢速变化的设备交换数据时,可以认为它们总是处于认为它们总是处于“就绪就绪”状态

11、,随时可以状态,随时可以进行数据传送,这就是无条件传送,或称立进行数据传送,这就是无条件传送,或称立即传送、同步传送即传送、同步传送适合于简单设备,如适合于简单设备,如LED数码管、按键或按数码管、按键或按纽等纽等无条件传送的接口和操作均十分简单无条件传送的接口和操作均十分简单这种传送有前提:外设必须随时就绪这种传送有前提:外设必须随时就绪流程流程【例题例题7.17.1】硬件如下图所示,不断扫描开关硬件如下图所示,不断扫描开关K Ki i,当开关,当开关闭合时,点亮相应的闭合时,点亮相应的LEDLEDi i,当地址为,当地址为200H200H时,时,/Y/Y为低电平。为低电平。+5VK0K1K

12、7LED0LED1LED711G2GG1IORIOWY74LS24474LS373Q0Q1Q7D0D71A12A41A21Y1-42Y1-4OED0D7.分析分析:开关:开关KiKi闭合时,输入闭合时,输入为低电平为低电平“0 0”,而点亮相应,而点亮相应LEDiLEDi,则需要输出高电平,则需要输出高电平“1 1”,输入与输出的关系相输入与输出的关系相反。反。编写程序时,若采取先编写程序时,若采取先读入开关状态,再分析每一读入开关状态,再分析每一位的状态,然后决定位的状态,然后决定LEDLED的亮的亮灭,则该程序显得非常繁琐。灭,则该程序显得非常繁琐。CODE SEGMENT ASSUME

13、CS:CODE MAIN PROC FAR START:PUSH DS MOV AX,0 PUSH AX AGAIN:MOV AH,1 ;读键盘缓冲区字符;读键盘缓冲区字符 INT 16H CMP AL,1BH ;若为;若为“Esc”键,则退出键,则退出 JZ EXIT MOV DX,200H IN AL,DX ;读取开关状态;读取开关状态 NOT AL ;取反;取反 OUT DX,AL ;输出控制;输出控制LED JMP AGAIN EXIT:RET ;返回;返回DOS MAIN ENDPCODE ENDS END START2.查询传送方式查询传送方式CPU需要先了解(查询)外设的工作状态

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

15、直至就绪 传送环节传送环节寻址数据口寻址数据口是输入,通过输入指令从数据端口是输入,通过输入指令从数据端口读入数据读入数据是输出,通过输出指令向数据端口是输出,通过输出指令向数据端口输出数据输出数据输入状态输入状态就绪?就绪?数据交换数据交换YN流程流程.查询输入接口查询输入接口IOR+5V8D锁存器锁存器8位位三态三态缓冲器缓冲器译码译码1位位三态三态缓冲器缓冲器RQA0A158000H8001HD0D7D0D输入输入设备设备IORSTBmov dx,8000h;DX指向状态端口指向状态端口status:in al,dx;读状态端口;读状态端口test al,01h;测试标志位;测试标志位D

16、0jz status;D00,未就绪,继续查询,未就绪,继续查询inc dx;D01,就绪,就绪,DX指向数据端口指向数据端口in al,dx;从数据端口输入数据;从数据端口输入数据.查询输出接口查询输出接口8D锁存器锁存器译码译码1位位三态三态缓冲器缓冲器RQA0A158000H8001HD0D7D7D+5V输出输出设备设备ACKIOWIORmov dx,8000h;DX指向状态端口指向状态端口status:in al,dx;读取状态端口的状态数据;读取状态端口的状态数据test al,80h;测试标志位;测试标志位D7jnz status;D71,未就绪,继续查询,未就绪,继续查询inc

17、dx;D70,就绪,就绪,DX指向数据端口指向数据端口mov al,buf;变量;变量buf送送ALout dx,al;将数据输出给数据端口;将数据输出给数据端口3.中断传送方式中断传送方式断点断点主程序主程序中断服务程序中断服务程序中断请求中断请求对外设对外设进行处理进行处理继续执行继续执行返回断点返回断点CPU在执行程序中,被在执行程序中,被内部或外部的事件所打内部或外部的事件所打断,转去执行一段预先断,转去执行一段预先安排好的中断服务程序;安排好的中断服务程序;服务结束后,又返回原服务结束后,又返回原来的断点,继续执行原来的断点,继续执行原来的程序来的程序流程流程中断传送与接口中断传送与

18、接口中断传送是一种效率更高的程序传送方式中断传送是一种效率更高的程序传送方式进行传送的进行传送的中断服务程序是预先设计好的中断服务程序是预先设计好的中断请求是外设随机向中断请求是外设随机向CPU提出的提出的CPU对请求的检测是有规律的对请求的检测是有规律的:一般是在每:一般是在每条指令的最后一个时钟周期采样中断请求输条指令的最后一个时钟周期采样中断请求输入引脚入引脚中断输入接口中断输入接口D0D7+5V8D锁存器锁存器8位位三态三态缓冲器缓冲器三态缓冲器三态缓冲器RQ译码译码8001H中断向量号中断向量号D0D7INTRD输入输入设备设备中断允许触发器中断允许触发器A0A15中断请求触发器中断

19、请求触发器IORINTASTB中断查询接口中断查询接口A0A15锁锁存存器器INTR三态三态缓冲器缓冲器译码译码8001HD0D7中断中断A中断中断B中断中断CIOR 4.DMA传送方式传送方式希望克服程序控制传送的不足:希望克服程序控制传送的不足:外设外设CPU存储器存储器外设外设CPU存储器存储器直接存储器存取直接存储器存取DMA:外设外设存储器存储器外设外设存储器存储器CPU释放总线,由释放总线,由DMA控制器管理控制器管理DMA传送的工作过程传送的工作过程 CPU对对DMA控制器进行初始化设置控制器进行初始化设置 外设、外设、DMAC和和CPU三者通过应答信号建立三者通过应答信号建立联

20、系:联系:CPU将总线交给将总线交给DMAC控制控制 DMA传送传送DMA读存储器:存储器读存储器:存储器 外设外设DMA写存储器:存储器写存储器:存储器 外设外设 自动增减地址和计数,判断传送完成否自动增减地址和计数,判断传送完成否DMA传送流程传送流程流程流程HLDA发存储器地址发存储器地址传送数据传送数据传送结束?传送结束?DMA结束结束修改地址指针修改地址指针NY传送方式的比较传送方式的比较无条件传送无条件传送:慢速外设需与:慢速外设需与CPU保持同步保持同步查询传送查询传送:简单实用,效率较低简单实用,效率较低中断传送中断传送:外设主动,可与:外设主动,可与CPU并行工作,并行工作,

21、但每次传送需要大量额外时间开销但每次传送需要大量额外时间开销 DMA传送传送:DMAC控制,外设直接和存储控制,外设直接和存储器进行数据传送,适合大量、快速数据传器进行数据传送,适合大量、快速数据传送送多种多样的外设多种多样的外设工作原理不同工作原理不同机械、电子、机电、电磁机械、电子、机电、电磁传送信息类型多样传送信息类型多样数字量、模拟量、开关量数字量、模拟量、开关量传送速度差别极大传送速度差别极大传送方式不尽相同传送方式不尽相同串行、并行串行、并行编码方式不同编码方式不同二进制、二进制、BCD码、码、ASCII码码返回端口(端口(PORT)端口泛指端口泛指I/O地址,通常对应接口电路的寄

22、存器地址,通常对应接口电路的寄存器一个接口电路可以具有多个一个接口电路可以具有多个I/O端口(寄存器),端口(寄存器),每个端口用来保存和交换不同的信息每个端口用来保存和交换不同的信息数据寄存器、状态寄存器和控制寄存器占有的数据寄存器、状态寄存器和控制寄存器占有的I/O地址常依次被称为数据端口、状态端口和控地址常依次被称为数据端口、状态端口和控制端口,用于保存数据、状态和控制信息制端口,用于保存数据、状态和控制信息输入、输出端口可以是同一个输入、输出端口可以是同一个I/O地址地址返回IN AL,21H返回OUT 43H,AL返回无条件传送流程无条件传送流程返回就绪就绪(Ready)在输入场合在

23、输入场合“就绪就绪”说明输入接口已准备好送往说明输入接口已准备好送往CPU的数的数据,正等着据,正等着CPU来读取来读取该状态也可用接口中数据缓冲器已该状态也可用接口中数据缓冲器已“满满”来描述来描述 在输出场合在输出场合“就绪就绪”说明输出接口已做好准备,等待接收说明输出接口已做好准备,等待接收CPU要输出的数据要输出的数据该状态也可用接口数据缓冲器已该状态也可用接口数据缓冲器已“空空”、或者用、或者用接口(外设)接口(外设)“闲闲”或不或不“忙(忙(Busy)”来描来描述述返回就绪:满,空、闲、不忙就绪:满,空、闲、不忙查询传送流程查询传送流程返回中断传送流程中断传送流程返回DMA传送流程传送流程返回第第7章:教学要求章:教学要求1.了解了解I/O端口编址方法端口编址方法2.掌握输入输出指令掌握输入输出指令3.掌握无条件、查询传送方式掌握无条件、查询传送方式4.理解中断传送方式理解中断传送方式5.理解理解DMA传送的工作过程传送的工作过程

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!