第 7 章输入和输出1.ppt
《第 7 章输入和输出1.ppt》由会员分享,可在线阅读,更多相关《第 7 章输入和输出1.ppt(53页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、微机原理及应用第 7 章 输入和输出v概述vCPU与外设数据传送的方式vDMA控制器本章要点本章要点12/29/2022微机原理及应用第 7 章 输入和输出 输入和输出设备是计算机系统的重要组成部分。程序、原始数据和各种现场采集到的资料和信息,都要通过输入设备输入至计算机。计算结果或各种控制信号要输出给各种输出设备,以便显示、打印和实现各种控制动作。常用的输入设备有键盘(Key Board)、鼠标、扫描仪,或者经过A/D(模/数)转换的现场信息等。7.1 概述12/29/2022微机原理及应用第 7 章 输入和输出CPU寻址外设可以有两种方式:存储器对应输入输出方式和端口寻址的输入输出方式。1
2、.存储器对应输入输出方式把一个外设端口作为存储器的一个单元来对待,故每一个外设端口占有存储器的一个地址。从外部设备输入一个数据,作为一次存储器读的操作;而向外部设备输出一个数据,则作为一次存储器写的操作。7.1.1 输入输出的寻址方式12/29/2022微机原理及应用第 7 章 输入和输出2.端口寻址的输入输出方式实际上是以端口(Port)作为地址的单元,因为一个外设不仅有数据寄存器还有状态寄存器和控制命令寄存器,它们各需要一个端口才能加以区分,故一个外设往往需要多个端口地址。CPU用地址来选择外设。通常专用的I/O指令(IN,OUT),只用一个字节作为端口地址,故最多可寻址256个端口。而用
3、DX间接寻址外设时,则端口地址是16位的,可寻址216=64K个端口地址。12/29/2022微机原理及应用第 7 章 输入和输出 CPU与一个外设之间交换的信息,如图7-1所示。7.1.2 CPU与I/O设备之间的接口信息图7-112/29/2022微机原理及应用第 7 章 输入和输出传送的信息包括以下几种:1.数据(Data)它大致可以分为三种基本类型:(1)数字量:由键盘等输入的信息是以二进制形式表示的数或以ASCII码表示的数或字符。(2)模拟量:当计算机用于控制时,大量的现场信息经过传感器把非电量(例如温度、压力、流量、位移等)转换为电量。这些模拟量必须先经过A/D转换才能输入计算机
4、。(3)开关量:开关量是两个状态的量,如电机的运转与停止,开关的闭合与断开,阀门的打开和关闭等。这些量只要用一位二进制数即可表示。12/29/2022微机原理及应用第 7 章 输入和输出2.状态信息(Status)在输入时,有输入设备的状态信息是否准备好(Ready);在输出时,有输出设备的状态信息是否有空(Empty),若输出设备正在输出信息,则以忙(Busy)指示等。3.控制信息(Control)例如控制输入输出设备启动或停止等信息。12/29/2022微机原理及应用第 7 章 输入和输出CPU与外设的信息交换称为通信(Communication)。基本的通信方式有两种:并行通信与串行通信
5、方式,如图7-4所示。并行通信数据的各位同时传送;串行通信数据一位一位顺序传送。7.1.3 CPU与接口电路之间数据传送的形式图7-412/29/2022微机原理及应用第 7 章 输入和输出7.2 CPU与外设数据传送的方式7.2.1 查询传送方式1.查询式输入 CPU与I/O设备的工作往往是异步的。所以,通常在传送前,必须要查询外设的状态,当外设准备就绪了才传送;若未准备好,则CPU等待。方框图如图7-9所示12/29/2022微机原理及应用第 7 章 输入和输出图7-912/29/2022微机原理及应用第 7 章 输入和输出当输入设备的数据已经准备好后便发出一个选通信号,一方面把数据送入锁
6、存器,另一方面使D触发器为“1”,给出“准备好”(Ready)的状态信号。而数据信号与状态信号必须由不同的端口输至CPU数据总线。当CPU要由外设输入信息时,先输入状态信息,检查数据是否已经准备好,当数据已经准备好后,才输入数据。读入数据的命令,使状态信息清“0”。12/29/2022微机原理及应用第 7 章 输入和输出这种查询输入方式的程序流程图如图7-11所示。图7-1112/29/2022微机原理及应用第 7 章 输入和输出查询部分的程序如下:POLL:INAL,STATUS_PORT;从状态端口输入状态信息TEST AL,80H;检查READY是否为1JEPOLL;未READY=0,循
7、环INAL,DATA_PORT;READY,从数据端口输入数据 这种CPU与外设的状态信息的交换方式,称为应答式,状态信息称为“联络”或“握手”(Handshake)信息。12/29/2022微机原理及应用第 7 章 输入和输出2.查询式输出在输出时,CPU也必须了解外设的状态,看外设是否有空(即外设不正处在输出状态,或外设的数据寄存器是空的),若有空,则CPU执行输出指令,否则就等待。其方框图如图7-12所示。12/29/2022微机原理及应用第 7 章 输入和输出图7-1212/29/2022微机原理及应用第 7 章 输入和输出当输出设备把CPU要输出的数据输出以后,发出一个ACK(Ack
8、nowledge)信号,使D触发器置“0”,即使“Busy”线为0(Empty=Busy)。当CPU接收到这个状态信息后就执行输出指令。输出指令执行后,由地址信号和IO/M及WR相“与”后,发出选通信号,把在数据线上输出的数据送至锁存器。同时,令D触发器置“1”,它一方面通知外设输出数据已经准备好,可以执行输出操作;另一方面在数据由输出设备输出以前,一直为“1”,告诉CPU(CPU通过读状态端口而知道)外设“Busy”,阻止CPU输出新的数据。12/29/2022微机原理及应用第 7 章 输入和输出接口电路的端口信息为:数据端口为8位或16位;状态信息为1位,查询式输出的程序流程图如图7-14
9、所示。12/29/2022微机原理及应用第 7 章 输入和输出查询部分的程序为:POLL:INAL,STATUS_PORT;从状态端口输入状态信息TEST AL,80H;检查BUSY位JNEPOLL;BUSY则循环等待MOV AL,STORE;否则,从缓冲区取数据OUTDATA_PORT,AL;从数据端口输出12/29/2022微机原理及应用第 7 章 输入和输出3.一个采用查询方式的数据采集系统一个有8个模拟量输入的数据采集系统,用查询的方式与CPU传送信息,其电路如图7-15所示。图7-1512/29/2022微机原理及应用第 7 章 输入和输出 8个输入模拟量,经过多路开关它由端口4输出
10、的3位二进制码(A2、A1、A0)控制(000相应于D0输入),每次送出一个模拟量至A/D转换器;同时A/D转换器由端口4输出的D4位控制启动与停止。A/D转换器的READY信号由端口2的D0输送至CPU数据总线,经A/D转换后的数据由端口3传送至数据总线。12/29/2022微机原理及应用第 7 章 输入和输出START:MOVDL,0F8H;设置启动A/D转换的信号LEADI,DSTOR;存放输入数据缓冲区的地址偏移量DIAGAIN:MOVAL,DLANDAL,0EFH;使D4=0OUT4,AL;停止A/D转换CALLDELAY;等待停止A/D操作的完成MOVAL,DL;D4=1OUT4,
11、AL;启动A/D,且选择模拟量A0实现这样的数据采集过程的程序为:DELAY:RET12/29/2022微机原理及应用第 7 章 输入和输出POLL:INAL,2;输入状态信息D0SHR AL,1JNC POLL;若未READY=0,程序循环等待INAL,3;否则,输入数据STOSB ;存至内存,AL存入DIINCDL;修改多路开关控制信号,指向下一个模拟量JNEAGAIN;8个模拟量未输入完,循环已完,执行别的程序段 12/29/2022微机原理及应用第 7 章 输入和输出 在上述的查询传送方式中,CPU要不断地询问外设,当外设没有准备好时,CPU要等待,这样就浪费了CPU的时间。而且许多外
12、设的速度是较低的,如键盘、打印机等,它们输入或输出一个数据的速度是很慢的。为了提高CPU的效率,可采用中断的传送方式。7.2.2 中断传送方式在中断传送方式时的接口电路,其方框图如图7-16所示。12/29/2022微机原理及应用第 7 章 输入和输出12/29/2022微机原理及应用第 7 章 输入和输出当输入设备输入一数据,发出选通信号,把数据存入锁存器,又使D触发器置“1”,发出中断请求。若中断是开放的,CPU接受了中断请求信号后,在现行指令执行完后,暂停正在执行的程序,发出中断响应信号INTA,于是外设把一个中断矢量放到数据总线上。12/29/2022微机原理及应用第 7 章 输入和输
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 输入和输出1 输入 输出
限制150内