微机原理第5章微型计算机与外设之间的数据传输.ppt

微机原理第5章微型计算机与外设之间的数据传输.ppt

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理第5章微型计算机与外设之间的数据传输

第5章 微型计算机和外设之间的数据传输 5.1接口电路的概述 微型计算机各种接口框图 5.2 CPU与外设之间所传送的信息类型 CPU与I/O端口之间所交换的信息,可以有下列几种类型: 数据信息:包括数字量、模拟量、开关量等,可以输入也可以输出 状态信息:这是I/O端口送给CPU的有关本端口所对应的外设 当前状态的信息。供CPU进行分析、判断、决策。 控制信息:这是CPU送给I/O端口的控制命令,使相应的外部 设备完成特定的操作。 数据信息、状态信息和控制信息是不同类型的信息,它 们所起的作用也不一样。但在8086/8088微机系统中,这三种、不同类型的信息的输入、输出过程是相同的。为了加以区分,可以使它们具有不同的端口地址,在端口地址相同的情况下,可以规定操作的顺序,或者在输入/输出的数据中设置特征位。 传送方式有并行和串行两种。 5.3 接口部件的I/O端口  I/O接口电路的连接 5.3.1I/O接口电路中的基本寄存器 1.数据端口 用于中转数据信息。一种情况是CPU通过数据总线,将待传送给外设的数据先传送到数据端口,然后由I/O设备通过与I/O接口电路相连接的数据线取得该数据 另一种情况是I/O设备首先将输入数据锁存于数据端口,然后,CPU通过数据端口将该数据读入CPU中。数据端口一般既有输出寄存器(或称输出锁存器),又有输入寄存器(或称输入锁存器) 2、命令端口   用于传送对I/O设备的命令信息。CPU将命令信息通过数据总线写入I/O接口电路的命令寄存器中,然后传送到I/O设备,以便控制外设的操作。它由输出寄存器组成,命令端口是一个输出端口 3、状态端口   用于传送外设所处的状态信息。状态端口是输入端口,CPU通过读取状态端口的数据,以此了解外设当前所处的工作状态,比如,如果是输入设备,则可以通过状态信息了解输入设备是否有了等待输入的新数据,如果是输出设备,CPU通过读入的状态信息,可以了解输出设备是否作好了接受CPU传送新数据的准备。显然,1bit的状态信息可以反应1个外设的两种状态,1个8位的状态端口则可以反应外设的8个状态信息    总之,I/O接口电路中一般有数据端口、命令端口以及状态端口,每个端口地址是不相同的,CPU均通过数据总线来传送三种端口的数据。有些I/O接口中,还有中断控制逻辑电路,以便外设与CPU之间以中断方式进行输入或输出,其优点是可以提高CPU的工作效率 5.3.2 I/O端口的编址方式 两种I/O端口的编址方式 二、专门的I/O编址方式 专用I/O编址的优缺点 优点:不占用内存空间,使用专门I/O指令访问I/O端口,I/O速度快  缺点:CPU的引脚上必须具有能区分出访问内存还是访问I/O端口的信号,作为I/O接口电路中端口译码电路以及存储器片选译码电路的输入信号 5.4.1 接口电路的主要功能 设备选择功能 数据缓冲功能 接收和执行CPU命令的功能 寄存外设状态的功能 信号的转换功能 数据宽度变换的功能 可编程功能 5.5 CPU与I/O设备传输数据的几种方式   CPU以及I/O设备的种类繁多,CPU与I/O设备所构成的系统不可能完全相同,CPU与I/O设备之间传输数据的方式也不完全相同,接口电路的结构与功能也不同,驱动程序也不相同    传输数据的方式:无条件I/O传送方式、查询式输入输出方式、中断控制方式、DMA方式.   例:假设状态端口与数据端口的地址分别为300H和301H,状态信息从数据总线上的D0位读入CPU中,查询式输入程序段如下: MOV DX,300H ; 状态口地址传送给DX ABC:IN AL,DX ;  读入状态信息 TEST AL,01H ; AL∧01H,影响ZF标志 JZ ABC ;  如果状态信息为0转ABC MOV DX,301H; 数据端口地址传送给DX IN AL,DX ; 读入数据信息   例:假设状态端口与数据端口的地址分别为3FOH和3F1H,状态信息从数据线上D7位读入CPU中,查询式输出程序段如下: MOV DX,3F0H ; 状态口地址传送给DX CBA:IN AL,DX ; 读入状态信息 TEST AL,80H ; AL∧80H,影响ZF标志 JZ CBA ; 如果状态信息为0则转CBA MOV DX,3F1H ; 数据端口地址传送给DX MOV AL,[SI] ; 从内存读取数据给AL OUT DX,AL ; 向数据口输出数据 从图可以看出,当CPU与I/O设备之间采用查询式输入输

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档