《数字量输入输出.ppt》由会员分享,可在线阅读,更多相关《数字量输入输出.ppt(43页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第五章第五章 数字量输入输出数字量输入输出v 概述概述v 系统总线及接口系统总线及接口v 中断控制系统中断控制系统v 计数定时接口计数定时接口v 并行输入输出接口并行输入输出接口北京化工大学微机原理课件北京化工大学微机原理课件第一节第一节 概述概述5.1.1 I/O信号的形式信号的形式一一 数据信息数据信息1.数字量数字量二进制形式的数据,或是已经过编码的二进制形式的数据。二进制形式的数据,或是已经过编码的二进制形式的数据。最小单位为最小单位为“位位”(bit),8位称为一个字节位称为一个字节(BYTE)。2.模拟量模拟量模拟量信号不能直接进入计算机,必须经过模拟量信号不能直接进入计算机,必须
2、经过A/D(模拟模拟/数字数字)转换器,把模拟量转换成数字量,才能输入计算机。当外部转换器,把模拟量转换成数字量,才能输入计算机。当外部设备需要模拟量信号控制时,设备需要模拟量信号控制时,D/A(数字数字/模拟模拟)转换器又能把转换器又能把数字量转换成模拟量信号。数字量转换成模拟量信号。3.开关量开关量开关量信号只有两种状态,即开关量信号只有两种状态,即“开开”或或“闭闭”。这样,只要用一位。这样,只要用一位二进制数就可表示。二进制数就可表示。二二 状态信息状态信息 反应当前外设的工作状态,是外设通过接口往反应当前外设的工作状态,是外设通过接口往CPU传送的。传送的。三三 控制信息控制信息 是
3、是CPU通过接口传送给外设的,通过接口传送给外设的,CPU通过发送控制信息通过发送控制信息 控制外设的工作。控制外设的工作。5.1.2 I/O接口接口在计算机中,介于在计算机中,介于CPU与外设间,实现硬件连接和软件通讯与外设间,实现硬件连接和软件通讯的装置。的装置。一、一、I/O接口的作用接口的作用对信息的传输形式进行变换。(模数转换和数模转换)对信息的传输形式进行变换。(模数转换和数模转换)电平转换和放大电平转换和放大 I/O定向定向 串并转换及并串转换串并转换及并串转换 锁存和缓冲锁存和缓冲二、二、I/O接口的构成接口的构成CPU译译码码数据端口数据端口状态端口状态端口控制端口控制端口I
4、/O设备设备DBABCB北京化工大学微机原理课件北京化工大学微机原理课件(1)I/O端口端口概念:概念:CPU与外设进行数据传输时,各类信息在接口进入不同与外设进行数据传输时,各类信息在接口进入不同的寄存器,一般称这些寄存器为的寄存器,一般称这些寄存器为I/O端口。端口。分类:数据端口,状态端口,控制端口。分类:数据端口,状态端口,控制端口。CPU数据数据状态状态控制控制外设外设北京化工大学微机原理课件北京化工大学微机原理课件(2)I/O端口的编址方式端口的编址方式 存储器映射方式存储器映射方式(统一编址方式统一编址方式)优点:使用优点:使用MEM操作指令,不需专用的操作指令,不需专用的I/O
5、指令,指令丰富,使指令,指令丰富,使I/O 功能更加灵活。功能更加灵活。缺点:缺点:MEM容量减小,容量减小,MEM指令长度一般比专用指令长度一般比专用I/O指令长。指令长。I/O映射方式映射方式(独立编址方式独立编址方式)缺点:访问缺点:访问I/O需要专门的需要专门的I/O指令,指令少,访问不灵活。指令,指令少,访问不灵活。优点:不需要占用存储器空间,指令长度短,执行速度快。优点:不需要占用存储器空间,指令长度短,执行速度快。北京化工大学微机原理课件北京化工大学微机原理课件一一.直接传送方式直接传送方式 适用于总是处于准备适用于总是处于准备 好状态的外设好状态的外设 优点:软件及接口硬优点:
6、软件及接口硬件件 简单简单 缺点:只适用于简单缺点:只适用于简单 外设,适应范围较窄外设,适应范围较窄5.1.4 I/O的控制方式的控制方式北京化工大学微机原理课件北京化工大学微机原理课件二二.查询传送方式查询传送方式(1)概念概念(2)三环节三环节CPU从接口中从接口中 读取状态字读取状态字 CPU检测状态字检测状态字如果外设处于就绪如果外设处于就绪 状态,传送数据状态,传送数据查询式输入的接口电路查询式输入的接口电路北京化工大学微机原理课件查询式输出接口电路例:查询式输出的程序段,例:查询式输出的程序段,STATUS_PORT表示状态端口地址,表示状态端口地址,READY_BIT表示状态端
7、口中的准备好位,表示状态端口中的准备好位,DATA_PORT表示表示数据端口地址,数据端口地址,DATA表示输出数据在存储器中存放的位置。表示输出数据在存储器中存放的位置。MOV DX,STATUS_PORTWAITING:IN AL,DX TEST AL,READY_BITJZ WAITINGMOV DX,DATA_PORT MOV AL,DATAOUT DX,ALMOV DX,STATUS_PORTIN AL,DXAND AL,NOT READY_BITOUT DX,AL北京化工大学微机原理课件北京化工大学微机原理课件三、三、中断传送方式中断传送方式1.优点优点可以使可以使CPU和外设同步
8、工作,提高了和外设同步工作,提高了CPU的工作效率。的工作效率。2.中断传送原理中断传送原理中断传送方式的接口电路中断传送方式的接口电路北京化工大学微机原理课件北京化工大学微机原理课件四、四、DMA方式方式1.优点优点 外设与内存间直接进行数据交换,不通过外设与内存间直接进行数据交换,不通过CPU。DMA方式方式 由硬件请求信号启动,又由由硬件请求信号启动,又由DMAC电路完成数据传送,电路完成数据传送,整个过程完全由硬件实现,所以传送速率非常高。整个过程完全由硬件实现,所以传送速率非常高。2.DMA控制器的功能控制器的功能 能向能向CPU发出发出HOLD信号信号 当当CPU发出发出HLDA信
9、号后,接管总线控制权,进入信号后,接管总线控制权,进入DMA方式方式 发出地址信息,能对存储器寻址及能修改地址指针发出地址信息,能对存储器寻址及能修改地址指针 能发出读写等控制信号能发出读写等控制信号 能决定传送字节数及判断能决定传送字节数及判断DMA传送是否结束传送是否结束发出发出DMA结束信号,使结束信号,使CPU恢复正常工作状态。恢复正常工作状态。5.5并行输入输出接口通用并行通用并行I/O接口芯片具有以下特点:接口芯片具有以下特点:每个芯片集成了多个独立的并行数据传输通道,每个芯片集成了多个独立的并行数据传输通道,且每个通道均可编程设置工作方式。且每个通道均可编程设置工作方式。每个通道
10、都提供状态查询功能,芯片有一定每个通道都提供状态查询功能,芯片有一定 的中断管理功能。的中断管理功能。北京化工大学微机原理课件北京化工大学微机原理课件可编程输入输出接口芯片可编程输入输出接口芯片8255一一 8255A的结构的结构8255A的方框图的方框图北京化工大学微机原理课件北京化工大学微机原理课件可编程输入输出接口芯片可编程输入输出接口芯片82558255A是是Intel86系列微处理机的配套并行接口芯片,系列微处理机的配套并行接口芯片,它可为它可为86系列系列CPU与外部设备之间提供并行输入与外部设备之间提供并行输入/输输出的通道。由于它是可编程的,可以通过软件来设出的通道。由于它是可
11、编程的,可以通过软件来设置芯片的工作方式,所以,用置芯片的工作方式,所以,用8255A连接外部设备时,连接外部设备时,通常不用再附加外部电路,给使用者带来很大方便。通常不用再附加外部电路,给使用者带来很大方便。北京化工大学微机原理课件北京化工大学微机原理课件可编程输入输出接口芯片可编程输入输出接口芯片8255一一 8255A的结构的结构1.数据端口数据端口A、B、C 均为均为8 8位端口位端口2.A组控制和组控制和B组控制电路组控制电路 A A组控制电路控制端口组控制电路控制端口A A和端口和端口C C的高的高4 4位的工作方式和读写操作。位的工作方式和读写操作。B B组控制电路控制端口组控制
12、电路控制端口B B和端口和端口C C的低的低4 4位的工作方式和读写操作。位的工作方式和读写操作。3.数据总线缓冲器数据总线缓冲器功能:功能:通过它与系统数据总线相连。通过它与系统数据总线相连。4.读写控制逻辑电路读写控制逻辑电路 功能:功能:管理数据传输过程。管理数据传输过程。北京化工大学微机原理课件5.控制信号控制信号片选信号:由系统地址线译码产生,启动片选信号:由系统地址线译码产生,启动CPU与与8255A之间之间的通信。的通信。读、写信号:控制读、写信号:控制CPU与与8255A之间的数据流向。之间的数据流向。RESET复位信号:清控制寄存器,设置复位信号:清控制寄存器,设置A、B、C
13、三个端口为三个端口为输入方式。输入方式。端口选择信号:经译码四个地址分别对应于端口选择信号:经译码四个地址分别对应于A、B、C三个三个数据端口和控制端口。数据端口和控制端口。RD 读信号读信号:低电平有效,它控制低电平有效,它控制8255A送出数据和状态信息送出数据和状态信息至至CPU.WR 写信号,低电平有效,它控制把写信号,低电平有效,它控制把CPU输出的数据和命令信号输出的数据和命令信号写到写到8255A。当当A1A000,选择端口,选择端口A;当当A1A001,选择端口,选择端口B;当当A1A010,选择端口,选择端口C;当当A1A011,选择控制字寄存器,选择控制字寄存器8255A共
14、有共有4个端口,个端口,3个数据端口,个数据端口,A口,口,B口,口,C口,一个口,一个控制端口。控制端口。6.端口寻址端口寻址RDWRCSA1A0操作操作00010读读A口口01010读读B口口10010读读C口口00100写写A口口01100写写B口口10100写写C口口11100写控制端口写控制端口1高阻高阻11010非法状态非法状态110高阻高阻北京化工大学微机原理课件北京化工大学微机原理课件二二 8255A的控制字及工作方式的控制字及工作方式1.三种基本工作方式三种基本工作方式方式方式0 0基本的输入输出方式基本的输入输出方式方式方式1 1选通的输入输出方式选通的输入输出方式方式方式
15、2 2双向传输方式双向传输方式2.工作方式控制字工作方式控制字例:设例:设8255A的端口地址为的端口地址为F8HFBH,A、B、C均为基本均为基本 I/O方式方式(即方式即方式0),其中,其中A口为输入口,口为输入口,B口为输出口,口为输出口,C口为输出口,写出工作方式控制字。口为输出口,写出工作方式控制字。分析:确定控制端口的地址分析:确定控制端口的地址 写控制字到控制端口写控制字到控制端口MOV AL,1001 0000BOUT 0FBH,AL北京化工大学微机原理课件北京化工大学微机原理课件二二 8255A的控制字及工作方式的控制字及工作方式3.C口置位复位控制字口置位复位控制字例:设例
16、:设8255A控制端口的地址为控制端口的地址为0FBH,(1)写控制字使写控制字使PC6复位复位 (2)写控制字使写控制字使PC3置位置位(1)MOV AL,0000 1100B OUT 0FBH,AL(2)MOV AL,0000 0111B OUT 0FBH,AL北京化工大学微机原理课件北京化工大学微机原理课件三三 方式方式0 基本输入输出方式,适用于无需应答信号的简单基本输入输出方式,适用于无需应答信号的简单I/O数据场合,数据场合,I/O数据处于准备好状态,数据处于准备好状态,CPU随时从端口写入和读取数据。随时从端口写入和读取数据。方式方式0可工作在查询方式,方式可工作在查询方式,方式
17、0的应答信号线由用户自行定义,的应答信号线由用户自行定义,只能查询不能中断,取只能查询不能中断,取C口的某些位作为口的某些位作为A、B口的控制和状态信息。口的控制和状态信息。四四 方式方式11.与方式与方式0的比较的比较和方式和方式0相比,相比,A、B仍作为数据输入仍作为数据输入/输出口,但规定端口输出口,但规定端口C的的某些位作为状态和控制信息,不能由用户改变。某些位作为状态和控制信息,不能由用户改变。北京化工大学微机原理课件北京化工大学微机原理课件四四 方式方式12.方式方式1输入输入STB选通信号。由外部输入,低电平有效。选通信号。由外部输入,低电平有效。STB有效时,将外部输入的数据锁
18、存到所选端口的输入锁存器有效时,将外部输入的数据锁存到所选端口的输入锁存器中。中。IBF输入缓冲存储器满信号。向外部输出,高电平有效。输入缓冲存储器满信号。向外部输出,高电平有效。IBF有效时,表示由输入设备输入的数据已占用该端口有效时,表示由输入设备输入的数据已占用该端口的输入锁存器,它由的输入锁存器,它由STB信号置位,待信号置位,待CPU执行执行IN指令时,指令时,RD有效,将输入数据读入有效,将输入数据读入CPU,其后沿把,其后沿把IBF置置“0”,表示输入,表示输入缓冲存储器已空,外部设备可继续输入后续数据。缓冲存储器已空,外部设备可继续输入后续数据。INTR中断请求信号,高电平有效
19、。中断请求信号,高电平有效。这是这是8255A的一个输出信号,可作为向的一个输出信号,可作为向CPU的中断请求信号。的中断请求信号。当当STB为高,为高,IBF为高和为高和INTE(中断允许中断允许)为高时被置为高,而为高时被置为高,而由由RD信号的下降沿清除。信号的下降沿清除。INTEA:端口端口A的中断允许信号,可由用户通过对的中断允许信号,可由用户通过对PC4的按位的按位置位置位/复位来控制。复位来控制。PC4=1,允许中断。,允许中断。PC4=0,禁止中断。,禁止中断。INTEB:端口端口B的中断允许信号,可由用户通过对的中断允许信号,可由用户通过对PC2的按位的按位置位置位/复位来控
20、制。复位来控制。PC2=1,允许中断。,允许中断。PC2=0,禁止中断。,禁止中断。北京化工大学微机原理课件北京化工大学微机原理课件四四 方式方式1方式方式1输入时序输入时序北京化工大学微机原理课件北京化工大学微机原理课件四四 方式方式13.方式方式1输出输出方式方式1输出对应的控制信号和状态信号输出对应的控制信号和状态信号OBF输出缓冲存储器满信号。向外部输出,低电平有效。输出缓冲存储器满信号。向外部输出,低电平有效。OBF有效时,表示有效时,表示CPU已将数据写入该端口正等待输出。当已将数据写入该端口正等待输出。当CPU执行执行OUT指令,指令,WR有效时,表示将数据锁存到数据输出有效时,
21、表示将数据锁存到数据输出缓冲存储器,由缓冲存储器,由WR的上升沿将的上升沿将OBF置为有效。由置为有效。由ACK的有效的有效信号使其恢复为高。信号使其恢复为高。ACK 外部应答信号。由外部输入,低电平有效。外部应答信号。由外部输入,低电平有效。ACK有效,表示外部设备已收到由有效,表示外部设备已收到由8255A输出的八位数据,输出的八位数据,它实际上是对它实际上是对OBF信号的回答信号。信号的回答信号。INTR中断请求信号。向中断请求信号。向CPU输出,高电平有效。输出,高电平有效。当输出装置已经接收了当输出装置已经接收了CPU输出的数据后,它用来作为向输出的数据后,它用来作为向CPU提出新的
22、中断请求。要求提出新的中断请求。要求CPU继续输出数据。当继续输出数据。当ACK为高电平,为高电平,OBF为高电平和为高电平和INTE为高电平时,使其置位。而为高电平时,使其置位。而WR信号的信号的下降沿使其复位。下降沿使其复位。INTEA:端口端口A的中断允许信号,可由用户通过对的中断允许信号,可由用户通过对PC6的按位的按位置位置位/复位来控制。复位来控制。PC6=1,允许中断。,允许中断。PC6=0,禁止中断。,禁止中断。INTEB:端口端口A的中断允许信号,可由用户通过对的中断允许信号,可由用户通过对PC2的按位的按位置位置位/复位来控制。复位来控制。PC2=1,允许中断。,允许中断。
23、PC2=0,禁止中断。,禁止中断。北京化工大学微机原理课件北京化工大学微机原理课件四四 方式方式13.方式方式1输出输出方式方式1输出时序输出时序五、方式五、方式2 双向输入双向输入/输出方式输出方式8255A中只允许端口中只允许端口A处于工作方式处于工作方式2,可用来在两台处理机,可用来在两台处理机之间实现双向并行通信。其有关的控制信号由端口之间实现双向并行通信。其有关的控制信号由端口C提供,并提供,并可向可向CPU发出中断请求信号。发出中断请求信号。当端口当端口A工作于方式工作于方式2时,允许端口时,允许端口B工作方式工作方式0或方式或方式1完成完成输入输入/输出功能,其方式控制字格式如图
24、所示。输出功能,其方式控制字格式如图所示。端口端口A工作于方式工作于方式2所需要的所需要的5个控制信号分别由端口个控制信号分别由端口C的的PC7PC3来提供。如果端口来提供。如果端口B工作于方式工作于方式0,那么,那么PC2PC0可用作数据输入可用作数据输入/输出;如果端口输出;如果端口B工作于方式工作于方式1,那么,那么PC2PC0用来作端口用来作端口B的控制信号的控制信号.INTE1:输出中断允许信号。:输出中断允许信号。INTE1为为1时,时,8255A输出缓冲器输出缓冲器空时通过空时通过INTR向向CPU发出输出发出输出中断请求信号;中断请求信号;INTE1为为0时,屏时,屏蔽输出中断
25、。蔽输出中断。INTE2:输入中断允许信号。:输入中断允许信号。INTE2为为1时,时,8255A输入缓冲器输入缓冲器满时通过满时通过INTR向向CPU发出输入发出输入中断请求信号;中断请求信号;INTE2为为0时,屏时,屏蔽输入中断。蔽输入中断。8255A与与CPU的连接的连接8255A和和8086/8088系统连接时,数据线和控制线系统连接时,数据线和控制线一般直接和系统总线的相应信号相连,片选信号一般直接和系统总线的相应信号相连,片选信号和地址译码器的输出相连,三个端口的数据线和和地址译码器的输出相连,三个端口的数据线和外设的数据线直接相连。但是对外设的数据线直接相连。但是对8255A的
26、端口选择的端口选择信号信号A1和和A0,在连接上有所不同。,在连接上有所不同。在在8086系统中,由于采用系统中,由于采用16位数据总线,位数据总线,CPU在传输数据在传输数据时,偶地址端口的数据总是通过低时,偶地址端口的数据总是通过低8位的数据总线输入位的数据总线输入/输出,输出,奇地址端口的数据总是通过高奇地址端口的数据总是通过高8位数据总线输入位数据总线输入/输出。所以,输出。所以,当当8255A的的D7D0和系统数据总线的低和系统数据总线的低8位相连时,要求位相连时,要求CPU访问访问8255A的的4个端口地址均为偶地址,而个端口地址均为偶地址,而8255A自身又规定自身又规定其其4个
27、片内端口地址个片内端口地址A1和和A0应为应为00,01,10和和11。为了满足。为了满足CPU和和8255A的各自不同要求,连接时,须将的各自不同要求,连接时,须将8255A的的A1,A0和系统地址总线的和系统地址总线的A2,A1分别相连。也就是说,分别相连。也就是说,CPU访问访问8255A的四个端口时,其编程地址应为四个连续的偶地址,的四个端口时,其编程地址应为四个连续的偶地址,系统总线的系统总线的A0总为总为0。下图是。下图是8255A和和8086系统的连接系统的连接示意图。示意图。例:设例:设8255A端口地址为端口地址为0F0H0F3H,A口为输入口,口为输入口,B口为口为输出口,
28、工作方式输出口,工作方式0,PC4为为READY信号。信号。(1)写出初始化程序写出初始化程序(2)从从A口输入一个字节到内存口输入一个字节到内存1000H单元中单元中(3)从从A口输入十个字节存入从口输入十个字节存入从1000H开始的单元。开始的单元。(1)MOV AL,1001 1001B OUT 0F3H,AL(2)CHECK:IN AL,0F2H AND AL,10H JZ CHECK IN AL,0F0H MOV 1000H,AL(2)MOV CX,10 MOV SI,1000H CHECK:IN AL,0F2H AND AL,10H JZ CHECK IN AL,0F0H MOV SI,AL INC SI DEC CX JNZ CHECK例:设例:设A口方式口方式1,输入口,输入口 B口口 方式方式1,输出口,输出口,PC6,PC7输出输出 INTEA PC4置位置位,允许中断,允许中断 INTEB PC2复位复位 ,禁止中断禁止中断CWR EQU 0F3H MOV AL,1011010XB OUT CWR,AL MOV AL,0XXX1001B OUT CRW,AL MOV AL,0XXX0100B OUT CRW,AL