微机原理及应用_第6章_第1页
微机原理及应用_第6章_第2页
微机原理及应用_第6章_第3页
微机原理及应用_第6章_第4页
微机原理及应用_第6章_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

1、微机原理及应用微机原理及应用 第第6章章 输入输出输入输出 一、接口的基本概念 二、输入输出的寻址方式 三、CPU与外设交换信息的控制方式 一、接口的基本概念一、接口的基本概念 1.接口的定义及功能 2.接口电路中的信息 3.接口的类型 返回 二、输入输出的寻址方式二、输入输出的寻址方式 1. I/O端口的编址 2. I/O端口地址译码方法 返回 三、三、CPU与外设交换信息的控制方式与外设交换信息的控制方式 1. 程序控制方式 2. 中断控制方式 3. 直接存储器存取控制方式(DMA) 4. I/O处理机控制方式 返回 1.接口的定义及功能接口的定义及功能 输入输出(I/O)设备是计算机系统

2、的基本组成部分(简称外设), 是实现人-机联系的主要手段. 常见的外设有键盘,显示器,打印机,鼠标,开关量输入输出 通道和A/D,D/A转换器等等. 从原理上讲,输入输出操作类似于对于存储器的读写操作, CPU可以用访问存储器的相类似的方法同外部设备交 换数据.但是事实上实际上输入输出操作要比访问存 储器复杂地多. 微 处 理 器 CPU 存储器I/O接口I/O设备 数据总线 控制总线 地址总线 下一页 1.接口的定义及功能接口的定义及功能(续上页续上页) I/O接口,是在CPU与外设之间,使两者动作协调的连接电 路. 也就是说,在CPU与外设之间建立一个缓冲区,解决CPU与 外设备之间存在的

3、数据形式,数据的传递方式,以及传 递速率上存在很大差异的矛盾. 接口的功能就是对数据的传输控制. 微 处 理 器 CPU 存储器I/O接口I/O设备 数据总线 控制总线 地址总线 返回 1.接口的定义及功能接口的定义及功能(续上页续上页) 接口的功能就是对数据的传输控制. 接口内有特定的硬件电路供CPU直接存取,称为I/O端口; 接口应有地址译码功能; 接口可传送除基本信息(数据信息)外的各种信息 2.接口电路中的信息接口电路中的信息 接口电路中通常包含数据信息, 控制信息和状态信息. 从含义和功能上,数据信息,控制信息和状态信息各不相同, 分别传送,各有通路,我们称这些通路为端口(PORT)

4、,三种 端口的集合就是接口. CPU 数据端口 控制端口 状态端口 外 部 设 备 接口 返回 CB DB AB 接口CPU I/O 设备 数据信息 控制信息 状态信息 2.接口电路中的数据信息接口电路中的数据信息(续上页续上页) 数据信息CPU与外设交换的基本信息就是数据,8位 或16位。 三种类型: (1)数字量: 是指由键盘,磁盘等读入的信号, 或由CPU送到 打印机,显示器等信息, 一般是二进制数,或是以ASCII 码表示的数据及字符号. (2)模拟量: 当微机系统用于过程控制系统时,则现场多数 是模拟量,如温度,压力,流量等,需要通过A/D和D/A转 换. (3)开关量: 是指可以表

5、示成两个状态的物理量,如开关的 “通”与“断”,电机的“运转”与“停止”,可以用 一位二进制表示. 返回 2.接口电路中的控制信息接口电路中的控制信息(续上页续上页) 控制信息CPU通过接口电路传送给外设,从而达到控 制外设的目的. 如外设的启动,停止或选通信号是常见的控制信号. 当然不同的外设,具体工作原理不同,其控制信号也会有所 不同. 返回 CB DB AB 接口CPU I/O 设备 数据信息 控制信息 状态信息 2.接口电路中的状态信息接口电路中的状态信息(续上页续上页) 状态信息是反映当前外设所处的工作状态,是外设通 过接口电路向CPU传送的信号. 如输出设备常用BUSY信号来表明现

6、在正处于忙碌状态, 输入设备常用READY信号来表明输入的数据已经准 备好等等. 返回 3.接口的类型接口的类型 接口电路目前都有现成的接口芯片来实现. (1)按通用性可以分为两类:专用接口和通用接口; 如显示控制器,键盘控制器等属于专用接口; 通用接口可以供几类外设使用. (2)接口按与外设数据的传送方式可以分为并行接口和串 行接口. 并行接口是指主机与外设之间信息的传送按字节或字进 行. 串行接口是指主机与外设备之间信息的传送是按通讯规 则一位一位进行. 返回 1. I/O端口的编址端口的编址 (1)I/O端口和存储器统一编址 (2)I/O端口独立编址 返回 2. I/O端口地址译码方法端

7、口地址译码方法 直接地址译码属于一种局部译码法,对地址总线的某些 位进行译码. CPU直接与59相连; 低位是芯片本身 端口选择; 如8237: A9A8=11; A7 A6A5=000; A4A0由具体芯片接线法 返回 DMACS8237片选 INTECS8259片选 T/C CS 8253片选 PPI CS 8255片选 写DMA页面寄存器 写NMI屏蔽寄存器 74LS138 XA5 XA6 XA7 XA8 XA9 XIOW G1 G2A G2B A B C Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 AEN (1)I/O端口和存储器统一编址端口和存储器统一编址 这种编址方式是外设端口

8、地址和存储器单元地址, 共占存储器的地址, 即一个外设端口占用一个 存储单元地址. CPU对外设端口的读写操作相当于对存储单元的 读写操作. CPU可以采用任意一条访问存储器的指令,访问 I/O端口. 返回 (2)I/O端口独立编址端口独立编址 这种编址方式是让I/O端口和存储器地址分别建 立两个地址空间,独立编址. CPU采用专门的I/O指令去访问I/O端口. 8086/8088采用I/O端口独立编址,设置了专门的 I/O指令. 返回 8086/8088的的I/O指令指令 (1)直接端口寻址方式 IN AL, PORT;端口PORT的字节信息送AL OUT PORT,AL;将AL的数据信息送

9、到端口PORT IN AX, PORT;端口PORT的字信息送AX, 即端口PORT ;的字节信息送AL, 端口PORT+1的字节 ;信息送AH OUT PORT,AX;将AX的字信息送端口,即AL送端口 ;PORT,AH送端口PORT+1 注:端口PORT的地址范围是8位,即0255 下一页 8086/8088的的I/O指令指令(续上页续上页) (2)间接端口寻址方式 IN AL, DX;从DX所表示的端口输入字节数据到AL OUT DX,AL ;将AL中的数据输出到以DX表示的端口 IN AX, DX;从DX所表示的端口输入字数据到AX,即 ;DX端口的字及到AL,DX+1端口的字节 ;到

10、AH OUT DX,AX ;将AX的字数据输出到以DX表示的端口,即 ;AL输出到DX端口,AH输出到DX+1 注:当端口地址大于8位时,必须用间接端口寻址方式 返回 1. 程序控制方式程序控制方式 (1)无条件传送控制方式 这是一种简单的数据传送方式,适用于任何时候均处于 “准备就绪”状态的外部设备,CPU可以随时执行I/O 指令来完成数据传送操作. 例题 (2)条件传送控制方式 查询输入 查询输出 例题 返回 例: 如图示,外设为8个发光二极管,与其相连的I/O端口 地址80H,欲使发光二极管全亮,执行指令: MOV AL, 0 OUT80H, AL +5V I/O 接口 (80H) CP

11、U DB AB CB 返回 查询输入查询输入 若CPU需要外设输入数据时,首先从状态端口读入状态信息,判断数据 是否准备好. 程序段: LTEST: IN AL, S_PORT ;从状态口读入 AND AL,80H;检查READY=1? JZ LTEST;READY=0,继续等待 IN AL, D_PORT ;READY=1,从数据口 ;读入数据 N Y 输入状态信息 READY? 输入数据 READY(1位) 数据端口(8位) 输入 状态端口(1位) 返回 查询输出查询输出 CPU输出数据前,先查询外设的状态端口的状态信息,若为“空”,则 执行输出指令把把数据送入数据端口. 程序段: WAI

12、T1: IN AL, S_PORT ;从状态端口读入 AND AL,01H ;BUSY=0? JNZ WAIT1 ;BUSY=1,返回 MOV AL, DOUT ;BUSY=0,取数 OUT D_PORT,AL;从数据端口输出 BUSY(1位) 数据端口(8位) 输出 状态端口(1位) 输入 A0 返回 N Y 输入状态信息 BUSY? 取数并输出数据 准备输出数据 例题例题 1.设状态端口地址为60H,数据端口地址为61H,外部输入信息准备状 态标志为D7=1,请用查询方式写出读入外部数据的程序段. 解:分析:这是查询输入,则流程图 程序段: WAIT1:IN AL,60H ;从状态端口读入

13、状态信息 AND AL,80H ;判断D7=1? JZ WAIT1 ; D7=0,返回再读状态信息 IN AL, 61H ;D7=1,从数据端口读入 N Y 输入状态信息 READY? 输入数据 下一页 例题例题(续上页续上页) 2.设状态端口地址为86H,数据端口为85H,外设忙碌D7=1, 请用查询方式写出CPU从存储器缓冲区Buffer送出 1KB的数给外设的程序段. 解:分析,这是查询输出,且要送1K字节, 流程图 例题例题(续上页续上页) 流程图 N Y 输入状态信息 BUSY? 取数并输出数据 设置循环次数 CX=1000 设置Buffer指针SI 修改Buffer指针 CX-1送CX CX=0? N Y 数据传送结束 例题例题(续上页续上页) 程序清单 LEA SI,Buffer MOV CX, 1000 W1:IN

温馨提示

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

评论

0/150

提交评论