典型可编程接口芯片及应用ppt培训课件

上传人:aa****6 文档编号:60162875 上传时间:2018-11-14 格式:PPT 页数:178 大小:3.82MB
返回 下载 相关 举报
典型可编程接口芯片及应用ppt培训课件_第1页
第1页 / 共178页
典型可编程接口芯片及应用ppt培训课件_第2页
第2页 / 共178页
典型可编程接口芯片及应用ppt培训课件_第3页
第3页 / 共178页
典型可编程接口芯片及应用ppt培训课件_第4页
第4页 / 共178页
典型可编程接口芯片及应用ppt培训课件_第5页
第5页 / 共178页
点击查看更多>>
资源描述

《典型可编程接口芯片及应用ppt培训课件》由会员分享,可在线阅读,更多相关《典型可编程接口芯片及应用ppt培训课件(178页珍藏版)》请在金锄头文库上搜索。

1、第七章 典型可编程接口芯片及应用,7.1 可编程中断控制器芯片8259 7.2 可编程定时器/计数器芯片8254 7.3 可编程并行接口芯片8255 7.4 可编程串行接口芯片INS 8250 7.5 可编程DMA控制器芯片8237,7-1,7.1 可编程中断控制器芯片8259,7.1.1 基本功能 7.1.2 内部结构与外部引脚 7.1.3 中断工作过程 7.1.4 端口寻址与读/写控制 7.1.5 命令字格式与编程 7.1.6 8259在PC系列机中断系统中的应用,7-2,7.1.1 基本功能,中断请求锁存 中断源优先级排队 中断源识别 中断源屏蔽 中断向量提供 ,8259是Intel公司

2、专为控制优先级中断而设计的NMOS芯片。内部集成了与中断控制有关的几乎所有基本功能,包括:,而且各种功能都可通过编程设定或变更。,7-3,7.1.1 基本功能,芯片的外部接口特性 内部工作原理 应用编程的方法,对可编程芯片的掌握,关键要从如下几个方面来掌握:,7-4,具体掌握如下内容: 掌握芯片的外部引线及其功能,以便将它连接到微机 系统中。 掌握芯片的工作方式及工作特点,以便选择适合于用 户要求的工作方式。 熟悉芯片内部的控制字和状态字,它将决定芯片的工 作方式及工作特点。 掌握芯片的寻址和内部各端口寄存器的读写控制方法。 掌握芯片的初始化编程。,7.1.1 基本功能,7-5,7.1.2 内

3、部结构与外部引脚,IRR用于寄存所有要求服务的中断请求,PR用于确定中断请求寄存器IRR中各位的优先等级,ISR用于寄存所有正在被服务的中断级,用于控制多片8259的级联,以实现将优先中断等级最多扩展到64级。,7-6,7.1.3 中断工作过程,8259在8086模式下,对外部中断请求的响应和处理过程如下:,当中断请求输入线IR0IR7中有一条或多条变高时,则中断请求寄存器IRR的相应位置“1“。,若中断请求线中至少有一条是中断允许的,则8259由INT引脚向CPU发出中断请求信号。,7-7,7.1.4 端口寻址与读/写控制, 这些命令的输入顺序由8259内部的时序逻辑通过适当的时序控制加以保

4、证。, 对IRR、ISR或中断级BCD码的选择,决定于在读出操作之前,CPU写入的操作命令字OCW3的内容。,7-8,7.1.5 命令字格式与应用编程,8259的编程是指用户通过写操作送一些命令字(也叫控制字)到8259内部的控制寄存器(命令字寄存器),用于设定或动态改变它的工作方式和控制模式。,初始化命令字与初始化编程,操作命令字与操作方式编程,可编程设置的工作方式,7-9,对初始化编程要注意两点:,写ICW的流程必须按规定 顺序写,不能颠倒。,各ICW的格式/功能。,1.初始化命令字与初始化编程,初始化编程是通过写初始化命令字ICW1ICW4来实现的, 写入流程如图所示。,7.1.5 命令

5、字格式与编程,7-10,格式:,设置中断请求触发方式。,清除中断屏蔽寄存器,设置中断优先级排 队,IRQ0IRQ7依次降低。,指明系统使用的8259是单片还是多片级联。,初始化命令字 ICW1 ICW2 ICW3 ICW4,ICW1的功能:,7.1.5 命令字格式与编程,7-11,ICW2的格式:,在8080/8085模式系统中,用于设定中断向量地址的高8位:A17A8;而在8086/8088模式系统中,则用于设定中断向量号的高7位:T7T3。,初始化命令字 ICW1 ICW2 ICW3 ICW4,ICW2的功能:,7.1.5 命令字格式与编程,7-12,ICW3是级联命令字。用于定义8259

6、 8根中断请求线上有无级联8259从片。,若系统只有一片8259,则不用ICW3,若有多片8259级联,则每一片8259都必须使用ICW3,且主、从片的ICW3格式不同。,初始化命令字 ICW1 ICW2 ICW3 ICW4,ICW3的功能:,7.1.5 命令字格式与编程,7-13,用于定义8259的工作模式,以及中断服务程序是否要送出EOI命令,以清除中断服务寄存器ISR,允许其他中断。,ICW4格式:,初始化命令字 ICW1 ICW2 ICW3 ICW4,ICW4的功能:,7.1.5 命令字格式与编程,7-14,再编写初始化程序段,例7.1 某80X86微机的中断系统有7个外部中断源,接在

7、8259的IR3IR7端, 中断类型码分别为7BH、7CH、7DH、7EH和7FH, 8259的端口地址为B0H、B1H。允许它们以全嵌套工作方式工作,中断请求采用电平触发方式。试编写8259的初始化程序。,解: 先确定初始化命令字ICW,ICW1:,00011011,ICW2:,01111000,ICW3:,不写,ICW4:,00000001,MOV DX,0B0H ;指向端口0 MOV AL,1BH ;ICW1 OUT DX,AL ;写ICW1 INC DX ;指向端口1 MOV AL,78H ;ICW2 OUT DX,AL ;写ICW2 MOV AL,01H ;ICW4 OUT DX,A

8、L ;写ICW4,7.1.5 命令字格式与编程,7-15,例7.2 某80X86系统的中断系统由二片8259级联而成,主、从8259的IR7上各接有一个外部中断源,其中断向量号分别为0DH,87H。假设它们的中断入口地址均在同一段中,段基址为4310H,偏移地址分别为1230H、2340H;所有中断都采用边沿触发方式、全嵌套方式、正常EOI结束方式。 写出主、从8259中断向量号范围; 假定主、从片端口地址分别为20H21H、26H27H,试画出电路连线图; 试编写全部初始化程序。,7.1.5 命令字格式与编程,7-16,有选择地写操作命令字OCW1OCW3到操作命令寄存器组。,这项工作可在8

9、259已经初始化后的任何时候进行,目的是对中断处理过程实现动态控制。,如果不写操作命令字,8259就按初始化编程所设置好的方式和模式工作,工作于IR0优先级最高,从IR0IR7优先级依次降低的固定优先级的全嵌套工作方式。,如需改变初始化时设置的中断控制方式,或屏蔽某些中断级,读出一些状态信息,就必须在8259进入工作之前或工作过程中酌情写入操作命令字OCW。,2.操作命令字与操作方式编程,7.1.5 命令字格式与编程,7-17,用来设置/清除对中断源的屏蔽,格式:,操作命令 字 OCW1 OCW2 OCW3,OCW1的功能:,7.1.5 命令字格式与编程,7-18,用于设置中断优先级是否循环,

10、循环的方式及中断结束的方式。,操作命令 字 OCW1 OCW2 OCW3,OCW2的功能:,7.1.5 命令字格式与编程,7-19,用于设置查询方式、特殊屏蔽方式、以及用来读8259的IRR、ISR、IMR的当前状态,格式:,操作命令 字 OCW1 OCW2 OCW3,OCW3的功能:,7.1.5 命令字格式与编程,7-20,把正在执行的高级中断屏蔽掉,而开放较低级中断的屏蔽方式。,先利用OCW1命令将正在执行的高级中断屏蔽掉;然后用OCW3命令(D6D7=11)设置特殊屏蔽方式,这样可使ISR相应位的功能中止,直到清除特殊屏蔽方式。,利用该功能,可使中断不受优先级限制,而人为地为某一较低优先

11、级中断服务,这就为用户提供了很大的灵活性。,实现方法:,操作命令 字 OCW1 OCW2 OCW3, 特殊屏蔽方式,7.1.5 命令字格式与编程,7-21,例如系统正在为IRQ4中断服务,服务过程中为了允许比它低的中断得到响应,可用特殊屏蔽命令字将IRQ4中断暂时屏蔽,当为较低级中断服务完后,再解除对IRQ4中断的屏蔽,以最后完成对它的中断服务。,. ;为IRQ4中断服务的程序 . ;屏蔽除准备允许响应的低级中断 . ;外的所有其它低级中断。 CLI ;为在IRQ4服务程序中开放低级中 ;断设置特殊命令字而关中断。 MOV AL,10H ;送屏蔽IRQ4的OCW1命令 MOV DX,PORT1

12、 ;送OCW1口地址DX OUT DX,AL ;OCW18259,A0=1 MOV AL,68H ;送特殊屏蔽方式字: ;OCW3AL,S1S2=11。,操作命令 字 OCW1 OCW2 OCW3,特殊屏蔽举例:,7.1.5 命令字格式与编程,7-22,MOV DX,PORT2 ;送OCW3口地址DX OUT DX,AL ;OCW38259,A0=0 STI ;开中断 . CLI ;为复位特殊屏蔽方式而关中断 MOV AL,48H ;OCW3AL,S1S2=10 MOV DX,PORT2 ;送OCW3口地址DX OUT DX,AL ;OCW38259,A0=0 MOV AL,0 ;解除对IRQ

13、4的屏蔽 MOV DX,PORT1 ;OCW1口地址DX OUT DX,AL ;OCW18259,A0=1 STI ;开中断 . ;包含EOI的中断结束命令 IRET ;中断结束返回,操作命令 字 OCW1 OCW2 OCW3,7.1.5 命令字格式与编程,7-23,CPU根据需要随时查询中断源,当查询到有中断请求时,就转入为相应中断源服务的程序中去。,系统关中断,写入查询命令字OCW3至0端口 查询命令字为: 00001100,实现方法:,读0口,可读到下列查询字: I X X X X W2 W1 W0,I=1 表示有中断请求,W2W1W0为中断请求源中优先级最高者的编码,程序执行转到W2W

14、1W0所对应的中断源服务程序去。,I=0 表示无中断请求,CPU继续执行原程序。,操作命令 字 OCW1 OCW2 OCW3, 查询方式,7.1.5 命令字格式与编程,7-24,读命令字格式为: 0 0 0 0 1 0 R1 R0,R1R0=10,读出的是中断请求寄存器IRR; R1R0=11,读出的是中断服务寄存器ISR。,操作命令 字 OCW1 OCW2 OCW3, 读IRR、ISR的方法: 先发读命令字OCW3到0端口,再读0端口。, 读IMR的方法: 直接对1端口进行读操作,即可读出IMR的内容。, 读8259状态,7.1.5 命令字格式与编程,7-25,3.可编程设置的工作方式,82

15、59具有十分灵活的中断管理方式:,1)中断嵌套方式 2)中断优先级循环方式 3)中断屏蔽方式 4)程序查询方式 5)中断结束方式 6)中断请求触发方式 7)读状态方式 8)数据缓冲方式 9)多片级联方式,7.1.5 命令字格式与编程,7-26,1)中断嵌套方式,8259支持两种中断嵌套方式:全嵌套方式和特殊全嵌套方式。, 全嵌套方式 一种最普通的工作方式,芯片写完初始化命令字ICW后,如不再写入操作命令字OCW,则自动进入并保持此方式。此时中断优先级固定为IRQ0最高,IRQ7最低,且高级中断源可中断低级中断源。,7.1.5 命令字格式与编程,7-27,全嵌套方式工作的条件:,主程序必须开中断。 每进入一个中断服务程序,系统都会自动关中断,故必须在中断服务程序中再次开中断,才有可能嵌套更高级的中断。 每次中断服务程序结束时,必须执行中断结束命令,清除ISR中对应的位,才能返回断点并响应再次到来的中断请求。,7.1.5 命令字格式与编程,7-28,全嵌套中断方式流程,7.1.5 命令字格式与编程,7-29,特殊全嵌套方式,适用于多片8259级联且响应的中断优先级保存在各从片中的大系统。与普通全嵌套方式相比,特殊全嵌套方式的特殊性表现

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

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