版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
输入输出接口基础
接口电路信息 I/O接口功能 I/O端口编址方式端口地址译码接口信息传输方式
查询方式 中断方式 DMA方式并行接口串行接口6.1输入/输出接口基础接口电路中的信息一、数据信息数字量——二进制形式的数据或ASCII码表示的字符。模拟量——连续变化的物理量。接口中用A/D、D/A转换实现计算机与外设的数据传输。开关量——只有两个状态的量。只需一位二进制数表示。为什么要使用接口?二、状态信息
反应外设当前工作状态,由外设通过接口送CPU。三、控制信息CPU通过接口发送给外设的信息,以控制外设的工作。数据缓冲数据寄存、驱动,时间缓冲设备选择端口寻址信号转换信号电平、传输格式、数据类别、传输逻辑和时序接收、解释并执行CPU命令错误检测数据效验中断管理具备中断控制逻辑,允许中断方式传输可编程功能可软件改换
I/O接口的功能数据缓冲/锁存器状态寄存器控制寄存器总线驱动地址译码控制逻辑总线外设端口编址独立编址:I/O端口与存储器视为独立对象,各自空间可用到最大。寻址时需专门信号配合进行区分00000H……0FFFFH10000H……FFFFFH0000H……FFFFH存储器空间I/O空间00000H…………EFFFFHF0000H……FFFFFH统一编址:I/O端口与存储器视为一体,统一使用地址空间;对I/O端口和存储器的访问使用同一套指令。无需专门信号配合进行寻址区分,但二者挤占空间。统一编址6.2接口地址译码一个接口可能有多个端口,每个端口一个地址;高位地址译码后选接口,低位地址选端口。〖例〗现有7个接口芯片,每个芯片32个端口,用74138译码器为其设计地址译码电路(地址线16位,端口地址从0000H开始)ABCG1A5A6A7+5VA15A14A13A12A11A10A9A8接口选通〖例〗为打印机配置接口地址378H、379H、37AHCLRACKDATA控制状态数据锁存控制锁存状态读入STROBEAUTOFDXTINITSLCTIN中断允许ERROESLCTPEACKBUSYDBA0A1A2A374174742747424074245IRQRESET379H37AH378H6.3接口信息传输方式程序控制方式又称为同步方式,是一种软、硬件都十分简单的I/O控制方式,一般用于CPU与数据变化缓慢、操作时间固定的外设之间的数据传输。此种方式下CPU认为外设始终处于就绪状态。输出锁存器输入缓冲器Vcc端口译码电路G1G2ABDBM/IOWRRD无条件传送方式查询方式(带握手线)又称条件传送方式,即传送数据之前CPU先要查询外设状态,当外设准备好了才传送。CPU先向I/O设备发出命令字,要求传送数据;从I/O端口读入状态字;检查状态字中的标志,数据交换是否可以进行;CPU在确认缓冲器中已有数据后,发出地址信息,对缓冲器寻址。通过数据总线读取缓冲器中的内容,并存入寄存器中。(输入)CPU在确认输出接口的数据缓冲器空时,发出地址信息,对缓冲器寻址。CPU把要输出的数据通过数据总线送入输出缓冲器中。(输出)查询式输入查询方式输入接口电路输入装置准备好(选通信号)→D触发器Q=1→三态缓冲器置位(状态信息“准备好”)CPU由AB发出端口地址→译码后选通数据缓冲器→由DB读数据。地址选通信号同时将D触发器Q清0。数据缓冲器(8位)锁存器输入装置三态缓冲器(1位)RQD数据端口读选通状态端口读选通数据状态信息选通信号数据+5V查询式输出三态缓冲器(1位)锁存器(8位)DQR输出装置查询方式输出接口电路状态端口读选通数据端口写选通+5V数据BUSYACKCPU由AB发出端口地址→译码后形成数据端口写选通信号→该信号上升沿锁存输出的数据→D触发器置1通知输出装置从锁存器取数据输出装置将数据输出后回送ACK→D触发器清0,表示输出装置空闲。数据中断控制方式当外设需要传输数据时,向CPU发出中断请求,CPU进入中断服务实现数据传输。在中断控制方式方式下,可免去CPU查询IO端口的任务,节约时间,提高CPU工作效率。特别适合CPU与多个外设同时工作。2中断控制何谓中断?中断请求中断服务程序CPU现行处理流程中断返回特点外部事件(中断源)主动,CPU被动。CPU工作效率提高中断系统的几个概念中断源——发出中断请求的来源中断向量——中断服务程序入口地址断点——响应中断请求时CPU现行程序(下一条)待执行指令的地址中断优先级——CPU对中断请求的响应级别现场——中断发生时程序的运行状态(主要指CPU寄存器内容和特定状态标志)中断嵌套——CPU正在执行中断服务时对更高优先级的中断请求作出响应中断屏蔽——CPU对中断请求不予响应中断服务中断服务程序由用户自行编制(1)保护现场:保存CPU内部各寄存器的内容,以便在服务程序中可以使用这些寄存器而不致破坏原信息。(2)开总中断:将IF置1,使得在该中断服务期间CPU仍然能够响应更高级的中断请求。(3)具体处理:进行用户的中断服务。(4)关总中断:将IF位清0。(5)恢复现场:将入栈保护的各寄存器内容依次弹出,恢复进入中断服务程序前的状态。(6)开总中断:再次将IF位置1,使返回之后能够再响应。(7)中断返回:执行一句IRET指令,CPU将自动将堆栈中的断点弹出给IP和CS,然后弹出标志寄存器FLAGS,完成恢复断点的操作。这样,程序就可以接着执行被中断的原程序了。当CPU正在进行某一级别中断源的中断处理时,若有更高级别的新中断源发出请求,且新中断源满足响应条件,则CPU应中止当前的中断服务程序,保护此程序的断点和现场,转而响应高级中断。这种多级(重)中断的处理方式称为“嵌套”。中断优先级按各个外设中断请求的重要程度排列CPU响应的次序称为中断优先级。即同时有多个中断请求到来时,CPU会首先响应和处理优先级别最高的中断请求。当CPU正在处理某个中断时,如果外部又有一个优先级别比本优先级别更高的中断请求,则可以实现中断嵌套。中断嵌套中断嵌套必须具备以下几个条件:(1)原中断的服务程序中,应在保护现场执行完毕后开放总中断(IF位置1);(2)新到来的中断应具有比原中断高的优先级,同级或低级均不能嵌套;(3)为保护各级中断服务程序的数据不被破坏,所有服务程序中均应有保护现场、恢复现场的指令;(4)每个中断服务程序末尾必须有IRET指令以示结束,从而返回被中断的程序地址处。中断控制接口的功能接收外设(中断源)状态变化,产生中断请求信号中断请求屏蔽接收CPU中断请求响应信号,清除中断请求(复位)传送中断向量(软件配合)中断可被响应的条件:中断请求触发器置位;中断屏蔽触发器清零;CPU内部开放中断;CPU未处理更高级中断;CPU现行指令执行完;端口译码三态缓冲器输入锁存器QD中断屏蔽触发器输入设备中断请求INT数据+5V中断控制方式输入的接口电路外设准备好数据时,便发出选通信号,该信号将数据打入锁存器,同时使中断请求触发器置1。在中断屏蔽触发器允许的情况下,向CPU发出中断请求INT。CPU回答的信号清除中断请求。R地址总线数据总线选通信号中断源管理……中断判优中断处理过程屏蔽过滤正在服务优先级……中断服务寄存中断服务程序中断请求IRQ[n]IR0IR1IRn保存断点保留现场由n获取中断向量恢复现场中断返回中断检测请求确认IRQA1234567812345678::……………………中断允许寄存器中断请求寄存器INTRCPU接收到INTR后,查询中断请求寄存器,其查询顺序决定了外设中断请求的优先级8个外设的中断请求输入1允许,0屏蔽优先级管理软件判优12345678:…………123456788-3编码器优先级寄存器A2A1A0B2B1B0A>B比较器中断允许寄存器中断请求寄存器INTRCPU正在处理的中断优先级硬件排序12345678:……………INTRINTA设备1INTA输入设备2INTA输入设备7INTA输入设备8INTA输入::链式排队电路硬件排序(链式排队)12345678::中断允许寄存器中断请求寄存器CPURegI/OMABDB3DMA(DirectMemoryAccess)控制DMACDMA请求总线请求总线允许DMA应答对DMAC编程,确定传送起始地址及长度、优先级等I/O就绪,发DMARQ信号DMAC向CPU提出总线保持请求,CPU应答,释放总线;DMAC接管DMAC分别向I/O及M寻址并发出对应的读、写信号,开始DMA周期。输入缓冲器输出锁存器外设端口译码DBAB6.4并行接口+5V8位并行输入8位并行输出行0127列0127……矩阵键盘接口输入全0预设0列输出键值=0输出00H输出延时去抖、确定输入全0修改下一列输出值行扫描,每扫一行键值+1键值+8查找到,结束YYNNabcdefgdp共阳极共阴极abcdefgdp并行输出并行输出D0~D7D0~D3位选通段选通电源+开关电源-开关数码显示接口动态显示原理模拟量转换接口温度流量压力位移模拟量电学量传感器A/D计算机D/A执行部件放大驱动01001001110111011110001000111110110110101采样量化编码A/D原理A/D芯片的主要性能参数分辨率
数字输出最低位(LSB)所对应的输入电平精度
转换输出的正确程度转换时间
完成一次A/D转换所需的时间例ADC08098路模拟量输入通道分辨率8位精度±1LSB转换时间100μs(CLK640kHz)A0A1A2A16~A3D7D0微机总线ADD0ADD1ADD2ALESTARTOEEOC地址译码ADC0809IN0IN7ADC0809查询接口~~D7D0~ADD0~2模拟输入通道选择 IN0~IN7模拟量输入ALE地址锁存允许 EOC转换结束,输出高(状态)START转换启动,高 D0~D7数据输出OE读出允许,高A0A1A2A16~A3D7D0微机总线ADD0ADD1ADD2ALESTARTOEEOC地址译码ADC0809IN0IN7ADC0809中断接口~~D7D0~ADD0~2模拟输入通道选择 IN0~IN7模拟量输入ALE地址锁存允许 EOC转换结束,输出高(状态)START转换启动,高 D0~D7数据输出OE读出允许,高IRQ
可编程并行接口芯片
Intel8255A8255A的基本性能8255A具有三个相互独立的输入/输出通道,即通道A、通道B和通道C,简称A口、B口、C口。A口有三种工作方式:方式0、方式1、方式2。B口有两种工作方式:方式0和方式1。在方式0下,A口、B口、C口都可作为数据口,在其他方式下,A口、B口作数据口,C口作联络口。PA7~PA0PC7~PC4PB7~PB0外设接口部分(通道A、B、C)通道A8位输出锁存/缓冲器和8位输入锁存器。
8255A的内部结构和引脚通道B8位输出锁存/缓冲器和8位输入锁存/缓冲器通道C8位输出锁存/缓冲器和8位输入缓冲器(无锁存)A组端口A组端口C上半部B组端口C下半部B组端口A组控制电路B组控制电路数据总线缓冲器读写控制逻辑A1A0RESETD0~D7PC3~PC0I/OI/OI/OI/O内部8位数据总线内部逻辑(A、B组控制电路)CPU接口(数据总线缓冲器、读写控制逻辑)A组端口A组端口C上半部B组端口C下半部B组端口A组控制电路B组控制电路数据总线缓冲器读写控制逻辑A1A0RESETD0~D7I/OI/OI/OI/O内部8位数据总线A1A0端口00A口01B口10C口11控制口
8255A的控制字8255A方式选择控制字
方式选择控制字的格式如图。该控制字写到控制口。C口可以按高4位、低4位分别设定数据输入或输出1-输入0-输出1-输入0-输出0-方式01-方式11-输入0-输出标识位00-方式001-方式11X-方式21-输入0-输出1D6D5D4D3D2D1D0A组方式选择:通道A:通道B:B组方式:PC7~PC4:PC3~PC0:8255A按位置位/复位控制字通道C的每一位都可以通过向控制寄存器写入置位/复位控制字,使之置位(即输出为1)或复位(即输出为0)。【注意】该控制字写到控制口1=置10=置0位选择:000~111分别表示C口的位0~位7未用标识位0D6D5D4D3D2D1D0
8255A的工作方式方式0(Model0)——基本输入输出方式1(Model1)——选通输入输出方式2(Model2)——双向数据传送1.方式0方式0是一种基本的输入或输出方式。这种方式通常不用联络信号(或不使用固定的联络信号),不使用中断。在这种工作方式下,3个通道中的每一个都可以由程序选定作为输入输出。作无条件传送方式工作,3个数据通道可以实现三路数据(共24位)传输。作查询方式工作,通道A和通道B作数据通道,通道C的高4位和低4位分别作控制线和状态查询线。8255A方式0应用示例用按键控制LED显示。A口读按键,B口驱动LED+5VPB0PB7+5VPA7PA0 MOVAL,91H OUTCTR,ALLOP: INAL,PORTA OUTPORTB,AL JMPLOP2方式1方式1输入方式1也叫作选通的输入/输出方式。8255A工作于方式1时,通道A、B仍作为数据的输入输出通道,同时通道C的某些位被固定作为通道A、B的控制位或状态信息位。每工作于方式1一个通道,将占用C口3位作控制位或状态位。C口余下的位可程序设定作为输入或输出口用。
PC4PC5PC3IBFAINTRAINTEPA7~PA0PC2PC1PC0IBFBINTRBINTEPB7~PB0PC4PC5PC3IBFAINTRAINTEPA7~PA0①(Strobe):选通输入,低电平有效。这是由外设产生的数据选通信号。有效时,外设使通道A或B上的数据选通并进入相应的输入锁存器中。②(InputBufferFull):输入缓冲器满,高电平有效。该信号由8255A产生,以作为的应答。IBF为高电平表明此时输入缓冲区中已存了一个新的数据,可备CPU读取。该电平由CUP的有效释放。③(InterruptRequest):中断请求信号,高电平有效。当8255A的和IBF信号均变为高电平时,在对应的INTE信号有效的情况下,该信号有效。该信号可作为向CPU发出中断请求或查询使用。CPU从8255A读入数据时,其的后沿使INTR信号无效。④(InterruptEnable):中断允许信号,高电平有效。方式1输出INTRA①(OutputBufferFull):输出缓冲器满,低电平有效。该信号由8255A送给外设。有效,表明CPU已将待输出的数据写入指定通道的数据寄存器中,通知外设应从中读取数据。由的后沿置成有效的低电平,而由有效恢复为高。②(Acknowledge):响应输入,低电平有效。该信号由外设送入以作为的响应。当外设从8255A中读取数据后,变为有效低电平。③INTR(InterruptRequest):中断请求信号,高电平有效。当=1(输出缓冲器空),在对应的INTE信号有效的情况下,产生INTR信号。该信号可作为向CPU发出中断请求或查询使用。CPU的下降沿使INTR复位。PC7PC6PC3INTEPA7~PA0INTRBPC1PC2PC0INTEPB7~PB0*INTE是由软件通过对PC4和PC2的置位/复位操作实现控制的,是8255A的内部操作,对PC4、PC2引脚的逻辑状态完全没有影响。上述信号在8255A引脚上的分配是:通道A通道BPC4
PC2数据输入选通
IBFPC5
PC1输入缓冲器满INTEPC4*PC2*中断允许PC7 PC1输出缓冲器满PC6 PC2外设应答INTEPC6*PC2*中断允许
INTR
PC3PC0中断请求3方式2(双向传输)只适用于通道A。通道A工作于方式2时,通道C的PC7~PC3自动配合通道A提供控制信号。方式2下为通道A提供的控制信号PC4IBFPC5INTRPC3INTEPC4PC7* PC6INTRPC3INTEPC6*方式2下的信号具有开放数据到外部数据线的作用输入输出INTEBIBFBI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度战略合作协议:两家企业之间的战略合作协议
- 04版购物中心商户租赁协议
- 汽车分期赠与合同范例
- 文创制作合同范例
- 求购变质肉类合同模板
- 燃气公司收购合同模板
- 盘扣出租合同模板
- 活动设备出租合同范例
- 活羊销售合同范例
- 毛坯房拆墙合同范例
- 管理的本质:企业管理的6个关键方法论
- 车辆采购服务投标方案(技术方案)
- 人教版六年级上册数学课本课后习题答案
- 2024至2030年中国沥青搅拌站行业市场现状调研及市场需求潜力报告
- 大班绘本阅读《小老鼠的探险日记》教案含反思
- 高等教育自学考试《13683管理学原理(中级)》考前模拟试卷一
- 第4章 代数式 单元测试卷 2024-2025学年浙教版七年级数学上册
- 中国骨关节炎诊疗指南(2024版)
- 小学一年级数学连加连减练习题(100道)
- 2025届河北省新高考全国统考预测密卷生物试卷含解析
- JBT 10554.2-2015 无损检测 轴类球墨铸铁超声检测 第2部分:球墨铸铁曲轴的检测
评论
0/150
提交评论