微机技术第06章

上传人:kms****20 文档编号:51460405 上传时间:2018-08-14 格式:PPT 页数:53 大小:1.39MB
返回 下载 相关 举报
微机技术第06章_第1页
第1页 / 共53页
微机技术第06章_第2页
第2页 / 共53页
微机技术第06章_第3页
第3页 / 共53页
微机技术第06章_第4页
第4页 / 共53页
微机技术第06章_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《微机技术第06章》由会员分享,可在线阅读,更多相关《微机技术第06章(53页珍藏版)》请在金锄头文库上搜索。

1、第第 6 6 章章第6章 基本输入输出接口教学重点n I/O接口电路的典型结构n 无条件传送方式n 查询传送方式n 中断工作过程6.1 I/O接口概述为什么需要I/O接口(电路)?n微机的外部设备多种多样n工作原理、驱动方式、信息格式、以及 工作速度方面彼此差别很大n它们不能与CPU直接相连n必须经过中间电路再与系统相连n这部分电路被称为I/O接口电路多种外设6.1 I/O接口概述(续1)什么是I/O接口(电路)?nI/O接口是位于系统与外设间、用来协助 完成数据传送和控制任务的逻辑电路nPC机系统板的可编程接口芯片、I/O总线 槽的电路板(适配器)都是接口电路CPUCPU接口接口 电路电路I

2、/OI/O 设备设备6.1 I/O接口概述(续2)什么是微机接口技术?n处理微机系统与外设间联系的技术n注意其软硬结合的特点n根据应用系统的需要,使用和构造相应 的接口电路,编制配套的接口程序,支持 和连接有关的设备6.1.1 I/O接口的主要功能 对输入输出数据进行缓冲和锁存输出接口有锁存环节,输入接口有缓冲 环节 实际的电路常用: 输出锁存缓冲环节,输入锁存缓冲环节 对信号的形式和数据的格式进行变换微机直接处理:数字量、开关量、脉冲 量 对I/O端口进行寻址 与CPU和I/O设备进行联络6.1.2 I/O接口的典型结构控制总线CB地址总线ABI/O接口电路数据控制状态数据总线DBCPU外设

3、控制寄存器状态寄存器数据寄存器 1. 接口电路的内部结构 2. 接口电路的外部特性 3. 接口电路芯片的分类 4. 接口电路的可编程性1. 接口电路的内部结构nCPU与外设主要有数据、状态和控制信息 需要相互交换,于是从应用角度看内部: 数据寄存器n保存外设给CPU和CPU发往外设的数据 状态寄存器n保存外设或接口电路的状态 控制寄存器n保存CPU给外设或接口电路的命令2. 接口电路的外部特性n主要体现在引脚上,分成两侧信号 面向CPU一侧的信号:n用于与CPU连接n主要是数据、地址和控制信号 面向外设一侧的信号:n用于与外设连接n提供的信号五花八门n功能定义、时序及有效电平等差异较大3. 接

4、口电路芯片的分类n接口电路核心部分往往是一块或数块大规 模集成电路芯片(接口芯片):n通用接口芯片n支持通用的数据输入输出和控制的接口 芯片n面向外设的专用接口芯片n针对某种外设设计、与该种外设接口n 面向微机系统的专用接口芯片n与CPU和系统配套使用,以增强其总体 功能4. 接口电路的可编程性n许多接口电路具有多种功能和工作方式, 可以通过编程的方法选定其中一种n接口需要进行物理连接,还需要编写接口 软件n接口软件有两类:n初始化程序段设定芯片工作方式等n数据交换程序段管理、控制、驱动 外设,负责外设和系统间信息交换6.1.3 I/O端口的编址接口电路占用的I/O端口有两类编排形式nI/O端

5、口单独编址nI/O地址空间独立于存储地址空间n如8086/8088nI/O端口与存储器统一编址n它们共享一个地址空间n如M6800理解端口I/O端口单独编址n优点:nI/O端口的地址空间独立n控制和地址译码电路相对简 单n专门的I/O指令使程序清晰 易读n缺点:nI/O指令没有存储器指令丰 富内存 空间 I/O 空间FFFFF0FFFF80x86采用I/O端口独立编址I/O端口与存储器统一编址n优点:n不需要专门的I/O指 令nI/O数据存取与存储 器数据存取一样灵活n缺点:nI/O端口要占去部分 存储器地址空间n程序不易阅读(不易 分清访存和访问外设)内存 部分I/O 部分存储器空间0000

6、0FFFFF6.1.4 8088/8086的输入输出指令n输入指令 IN AL,i8;字节输入,直接寻址 IN AL,DX;字节输入,间接寻址 IN AX,i8;字输入,直接寻址 IN AX,DX ;字输入,间接寻址n输出指令 OUT i8,AL ;字节输出,直接寻址 OUT DX,AL;字节输出,间接寻址 OUT i8,AL ;字输出,直接寻址 OUT DX,AL;字输出,间接寻址演 示演示8088/8086的I/O端口n8088只能通过输入输出指令与外设进行数 据交换;呈现给程序员的外设是端口(Port ),即I/O地址n8086用于寻址外设端口的地址线为16条, 端口最多为2166553

7、6(64K)个,端口号 为0000H FFFFHn每个端口用于传送一个字节的外设数据I/O寻址方式n8088/8086的端口有64K个,无需分段, 设计有两种寻址方式v直接寻址:只用于寻址00H FFH前256 个端口,操作数i8表示端口号v间接寻址:可用于寻址全部64K个端口, DX寄存器的值就是端口号n对大于FFH的端口只能采用间接寻址方式数据交换方式n如果输入输出一个字节,利用AL寄存器n如果输入输出一个字,利用AX寄存器n输入一个字,实际上是从连续两个端口输入 两个字节,分别送AL(对应低地址端口)和 AH(对应高地址端口)n输出一个字,实际上是将AL(对应低地址 端口)和AH(对应高

8、地址端口)两个字节的内容输出给连续两个端口IN指令(从20H端口输入一个字);方法1:字量输入,直接寻址 in ax,20h;方法2:字量输入,间接寻址 mov dx,20h in ax,dx;方法3:字节输入,直接寻址 in al,21h mov ah,al in al,20h ;方法4:字节输入,间接寻址 mov dx,21h in al,dx mov ah,al dec dx in al,dxOUT指令(向300H端口输出一个字节);唯一的方法:间接寻址,字节量输出 mov al,bvar ;bvar是字节变量 mov dx,300h out dx,al6.1.5 I/O地址的译码nI/

9、O地址的译码方法与存储器地址的译码方法 一样,但有它的特点:n部分译码时,通常是中间地址线不连接n部分译码也有最低地址线不连接的情况n每个接口电路通常只占用几个I/O地址,这时可 以利用基本逻辑门电路进行地址译码n除采用译码器、门电路进行译码外,I/O地址译 码还经常采用可编程逻辑器件PLDn为了给系统一定的选择余地,有些接口电路利 用比较器、开关或跨接器等进行多组I/O地址的译码IBM PC/AT主机板的I/O译码电路接口芯片内部译码A0A4DMA控制器1 中断控制器1 定时计数器 并行接口电路 DMA页面寄存器 中断控制器2 DMA控制器2 协处理器A5 A6 A7A8 A9ALS138译

10、码器HLDA MASTERA B CE1 E2 E3Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7IBM PC/XT主机板的I/O译码电路Y0 Y1 Y2 Y3 Y4 Y5Y6 Y7A5 A6 A7A8 A9 AENIOWA B CG2B G2A G174LS13874LS138DMA CS(8237) INTR CS(8259) T/C CS(8253) PPI CS(8255)WRTDMAPG (写DMA页面寄存器)WRTNMIREG (写NMI屏蔽寄存器)逻辑门电路进行I/O地址译码A9 A8 A7 A6 A5 A2 A4 A3 AEN A1 A074LS033E7H6.1.6 数据传送

11、方式n程序控制下的数据传送通过CPU执行程序 中的I/O指令来完成传送,又分为:无条件传送、 查询传送、中断传送n直接存储器存取(DMA)传送请求由外设 向DMA控制器(DMAC)提出,后者向CPU申请 总线,最后DMAC利用系统总线来完成外设和存 储器间的数据传送nI/O处理机CPU委托专门的I/O处理机来管 理外设,完成传送和相应的数据处理6.2 无条件传送方式及其接口n在CPU与慢速变化的设备交换数据时, 可以认为它们总是处于“就绪”状态,随时 可以进行数据传送,这就是无条件传送, 或称立即传送、同步传送n适合于简单设备,如LED数码管、按键 或按纽等n无条件传送的接口和操作均十分简单n

12、这种传送有前提:外设必须随时就绪流程无条件传送:输入示例MOV DX, 160H INAL, DX无条件传送:输入实例MOV DX, 160H INAL, DX74LS244+5V10K x 8G1 G2数据总线CS RD无条件传送:输出示例MOV DX, 160HMOV AL, BXOUT DX, AL无条件传送:输出实例MOV DX, 160HMOV AL, BXOUT DX, AL+5V74LS373300 x 8LE OE数据总线CS WR无条件传送:输入输出接口K7K1K0+5VD0D7A0A15CLK LS06 反相 驱动器LS273 8D 锁存器LS244 三态 缓冲器8000H

13、译码+5VLED0LED7GIOWIORnext:mov dx,8000h ;DX指向数据端口in al,dx;从输入端口读开关状态not al;反相out dx,al;送输出端口显示call delay;调子程序延时jmp next;重复6.3 查询传送方式及其接口nCPU需要先了解(查询)外设的工作状 态,然后在外设可以交换信息的情况下( 就绪)实现数据输入或输出n对多个外设的情况,则CPU按一定顺序 依次查询(轮询)。先查询的外设将优先 进行数据交换n查询传送的特点是:工作可靠,适用面宽 ,但传送效率低就绪查询传送的两个环节 查询环节n寻址状态口n读取状态寄存器的标志位n若不就绪就继续查

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

15、位 三态 缓冲器RQA0A158000H8001HD0D7D7D+5V输出 设备ACKIOWIORmov dx,8000h ;DX指向状态端口status: in al,dx;读取状态端口的状态数据test al,80h;测试标志位D7jnz status;D71,未就绪,继续查询inc dx;D70,就绪,DX指向数据端口mov al,buf;变量buf送ALout dx,al;将数据输出给数据端口6.3.3 查询方式的EEPROM编程2817AA0A10A0A108000HI/O0I/O7D0D7D0译码A11A19译码A0A15RDY/BUSYIORWE RDMEMW MEMRCEnex

16、t: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;循环至全部字节写完6.4 中断传送方式断点主程序中断服务程序中断请求对外设 进行处理继续执行返回断点nCPU在执行程序中, 被内部或外部的事件所 打断,转去执行一段预 先安排好的中断服务程 序;服务结束后,又返 回原来的断点,继续执 行原来的程序流程6.4.1 中断传送与接口n中断传送是一种效率更高的程序传送方式n进行传送的中断服务程序是预先设计好的n中断请求是外设随机向CPU提出的nCPU对请求的检测是有规律的:一般是在每 条指令的最后一个时钟周期采样中断请求输入 引脚

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号