贵州大学微机原理及复习7典型可编程接口芯片及应用

上传人:宝路 文档编号:47588298 上传时间:2018-07-03 格式:PPT 页数:83 大小:4.07MB
返回 下载 相关 举报
贵州大学微机原理及复习7典型可编程接口芯片及应用_第1页
第1页 / 共83页
贵州大学微机原理及复习7典型可编程接口芯片及应用_第2页
第2页 / 共83页
贵州大学微机原理及复习7典型可编程接口芯片及应用_第3页
第3页 / 共83页
贵州大学微机原理及复习7典型可编程接口芯片及应用_第4页
第4页 / 共83页
贵州大学微机原理及复习7典型可编程接口芯片及应用_第5页
第5页 / 共83页
点击查看更多>>
资源描述

《贵州大学微机原理及复习7典型可编程接口芯片及应用》由会员分享,可在线阅读,更多相关《贵州大学微机原理及复习7典型可编程接口芯片及应用(83页珍藏版)》请在金锄头文库上搜索。

1、第7章 典型可编程接口芯片及应用7.1 中断系统及可编程中断控制器 8259中断是微机系统中非常重要的一种技术,是对微处理中断是微机系统中非常重要的一种技术,是对微处理器功能的有效扩展。器功能的有效扩展。利用外部中断,微机系统可以实时响利用外部中断,微机系统可以实时响应外部设备的数据传送请求,能够及时处理外部随机出现应外部设备的数据传送请求,能够及时处理外部随机出现的意外或是紧急事件的意外或是紧急事件。利用内部中断,微处理器为用户提利用内部中断,微处理器为用户提供了发现、调试并解决程序执行异常情况的有效途径供了发现、调试并解决程序执行异常情况的有效途径。因。因此,中断是用以提高计算机工作效率的

2、一种重要技术。如此,中断是用以提高计算机工作效率的一种重要技术。如何建立准确的中断概念和灵活掌握中断技术是学好本门课何建立准确的中断概念和灵活掌握中断技术是学好本门课程的关键问题之一。程的关键问题之一。一、什么是中断?一、什么是中断?7.1.1 7.1.1 中断的基本概念中断的基本概念中断是由一不可知的事件引起的,中断是由一不可知的事件引起的,CPUCPU响应中断后,响应中断后, 将暂时停止正在运行的程序流程,而转去执行预定的处理将暂时停止正在运行的程序流程,而转去执行预定的处理 ,当这些不可预知的事件的程序,执行完毕,再返回被中,当这些不可预知的事件的程序,执行完毕,再返回被中 断的程序的一

3、个过程。因此,断的程序的一个过程。因此,所谓中断,是指所谓中断,是指CPUCPU在正常在正常 执行程序的过程中,由于内部执行程序的过程中,由于内部/ /外部事件或由程序的预先外部事件或由程序的预先 安排,引起安排,引起CPUCPU暂时中断当前程序的运行而转去执行为内暂时中断当前程序的运行而转去执行为内 部部/ /外部事件或预先安排的事件服务的子程序,待中断服外部事件或预先安排的事件服务的子程序,待中断服 务子程序执行完毕后,务子程序执行完毕后,CPUCPU再返回到暂停处(断点)继续再返回到暂停处(断点)继续 执行原来的程序,这一过程称为中断。执行原来的程序,这一过程称为中断。或者说,中断就是或

4、者说,中断就是 CPUCPU在执行当前程序的过程中因意外事件插入了另一段程在执行当前程序的过程中因意外事件插入了另一段程 序的运行。利用中断可以大大提高序的运行。利用中断可以大大提高CPUCPU的工作效率。实现的工作效率。实现 中断功能的控制逻辑称为中断机构或中断系统。中断功能的控制逻辑称为中断机构或中断系统。中断服务程序1中断服务程序 2非预料事件1非预料事件 2CPU执行流程中断的用途 CPUCPU的中断功能的实现带来了以下好处:的中断功能的实现带来了以下好处:1、同步处理2、实现了实时处理3、多道程序或多重任务的运行4、突发事件处理有关中断的基本概念(续)二、中断源能够引起中断的原因,或

5、能够发出中断请求信号的 外设。可屏蔽中断 (INTR) 不可屏蔽中断 (NMI)外部中断 (硬中断)内部中断 (软中断)(因执行指令而引起)1000:150H、 MOV AH, 01 INT 21H CMP AL, 0DH 、 、 、 、 、 PUSH AX、 IRET用指令调用中断程序软件中断断点:通常指被中断的主程序中,下一条待运行的指令的地址 。它是中断返回时的指令指针之值。由于是指CPU执行的现行 程序被中断时的下一条指令的地址,又称断点地址。 现场:指中断发生前程序的运行状态,即标志寄存器(程序状 态字)。为了保证中断返回后能继续正确地执行原来的程序, 中断系统必须能在中断发生时自动

6、保存现场,并在中断返回时 自动恢复现场。(是指CPU转去执行中断服务程序前的运行状 态,包括CPU内部各寄存器、断点地址等。)三、中断的断点和现场1000:150H、 MOV AX, 0 ADD AX, DX MOV DI , AX 、 、 、 、 、 PUSH AX、 IRETCPU在执行此指令时, 某中断源发申请中断; CPU在执行完该指令后, 转去执行中断子程地址1000:150H为断点断点概念系统中的多个中断源可能同时提出中断请求,此时需要按中断事件的轻重缓急为每个中断源指定一个处理的优先 级别,即中断优先级。当多个中断源同时提出中断请求时,中断系统按照优先级对中断源进行排队,总是优先

7、处理优先权高的中断。 四、中断优先级 当前CPU正在进行某一优先权级别的中断源的处理; 有更高级别的中断源发出请求,且新中断源满足响应条件 ; CPU中止当前的中断服务程序,保护断点和现场,转而响应高级中断这种多级中断的处理方式即为“嵌套”。某些中断系统对中断嵌套的层数有一定限制。五、中断嵌套 高级中断源能中断低级的中断处理当CPU正在处理某个中断时,如果外部又有一个优先 级别比本优先级别更高的中断请求,则可以实现中断嵌套中断嵌套。中断嵌套中断嵌套当当CPUCPU正在进行某一级别中断源的中断处理时,正在进行某一级别中断源的中断处理时, 若有若有更高级别的新中断源更高级别的新中断源发出请求,且新

8、中断源发出请求,且新中断源满足满足 响应条件响应条件,则,则CPUCPU应中止当前的中断服务程序,保护应中止当前的中断服务程序,保护 此程序的断点和现场,转而响应高级中断。这种多级此程序的断点和现场,转而响应高级中断。这种多级 (重)中断的处理方式称为(重)中断的处理方式称为“嵌套嵌套”。CPU正常执行中断服务程序1非预料事件1中断服务程序2非预料事件2中断嵌套示意图中断嵌套示意图中断嵌套必须具备的几个条件1)第一级中断(已处于响应状态的原中断)的服务程序中 ,应在保护现场执行完毕后加上开放总中断(IF位置1)的 指令; 2)新到来的中断应具有比原中断高的优先级,同级或低级 均不能嵌套; 3)

9、为保护各级中断服务程序的数据不被破坏,所有服务程 序中均应有保护现场、恢复现场的指令; 4)每个中断服务程序末尾必须有IRET指令以示结束,从而 返回被中断的程序地址处某些情况下CPU可能不对已发出的中断请求作出响应 或处理,称为该中断请求被“屏蔽” 。中断屏蔽可能在两种情况下发生: 中断系统设置了中断屏蔽标志(或中断允许标志),以 屏蔽某些中断源的请求; 当系统在处理优先级别较高的中断请求时,不会理睬新 来的级别较低的中断请求中断系统自动屏蔽优先级低的 中断。六、中断屏蔽 子程序的执行由程序员安排(由调用子程序的指令转入) ,断点是确知的;而中断服务程序的执行一般由随机的中断 事件引发,断点

10、不确定。 子程序的执行受到主程序或上层子程序的控制;而中断服 务子程序一般与被中断的现行程序无关。 不存在同时调用多个子程序的情况,因此子程序不需要进 行优先级排队;而不同的中断源则可能同时提出服务请求。七、中断服务程序与子程序的区别八、中断系统的功能 实现中断及返回中断源发出中断请求,CPU决定是否响应:若响应,则 保护断点和现场,转入相应中断服务程序,中断服务结束后 ,恢复现场和断点,继续执行原程序。 CPU执行中断服务程序1非预料事件1非预料事件是指事件发生的时间无法预知,即中 断源何时产生中断不确定,是随机的。中断源产生中断的随机性,使中断服务程序的执行 也具有随机性,即何时执行中断服

11、务程序不是在程序 中安排好的。 实现优先权排队 按各中断请求的重要程度排列CPU响应的次序称为中断优先级。 即同时有多个中断请求到来时,CPU会首先响应和处理优先级 别最高的中断请求。 中断优先级的实现可以用软件或硬件的办法。中断系统的功能(续)软件查询法判优流程软件查询法判优流程读中断请求寄存器外设1有请求?外设1中断服务程序外设2有请求?外设2中断服务程序外设8有请求?外设8中断服务程序后续处理YNNNNYY硬件实现的中断优先权排队电路1 2 3 4 5 6 7 81 2 3 4 5 6 7 8可由程序设置的中断允许寄存器由外设设置的中断请求寄存器编 码 器A2A1A0B2B1B0优先 权

12、寄 存器比较器AB12CPU的INTR优先权失效中断请求+CPU写入80868086的中断处理过程的中断处理过程中断检测及优先级判断中断响应保存CPU内部各寄存器内容,以便在中断服务子程序中 使用这些寄存器而不致破坏原信息开总中断(IF =1),以便在该中断服务期间仍然能响应 更高级的中断请求,即允许中断嵌套用户中断服务的具体处理过程恢复CPU内部各寄存器内容执行IRET语句,中断返回自动保存 现场、断 点CPU响应外中断的条件 1具备中断请求触发器 2具备中断屏蔽触发器 3开放总中断 4在现行指令结束后响应中断7.1.2 8086的中断系统一、中断源二、中断类型码、中断向量表和中断向量 中断

13、类型码:8086可以处理256个中断请求,每个中断请 求均对应于惟一固定的类型码。被0除类型码是0,单步为1 ;NMI为2;断点中断为3,溢出中断为4 等。 中断向量:即中断服务程序的入口地址,包括段地址(高 字单元)和偏移地址(低字单元)。 中断向量表:存放中断向量的表,位于内存空间的最低地 址单元,长1KB。共可容纳256个中断向量(25641024 )。中断类型码1、中断类型码:8086可以处理256个中断请求。每个中断 请求均对应于唯一固定的类型码。被0除类型码是0,单步为 1; NMI为2;断点中断为3,溢出中断为4;等。类型 码中断源类型 码中断源类型 码中断源00H 被0除0FH

14、 并口1(打印 机)中断1EH 磁盘参数01H 单步中断10H 显示器驱动程 序1FH 图形字符 集 02H NMI11H 设备检测20H 程序结束 03H 断点中断12H 存储器检测21H DOS系统调 用IBM PC/XT中断源的功能类型码中断源类型码中断源类型码中断源 00H被0除0FH并口1(打印机)中断1EH磁盘参数01H单步中断10H显示器驱动 程序1FH图形字符集02HNMI11H设备检测20H程序结束03H断点中断12H存储器检测21HDOS系统调 用04H溢出中断13H软盘驱动 程序22H结束地址05H打印屏幕14H通信驱动 程序23HCtrl-Break夭折键处 理06H(

15、保留)15H盒式磁带机驱动 程序24H关键性错误处 理07H(保留)16H硬盘驱动 程序25H磁盘顺 序读08H定时中断17H打印机驱动 程序26H磁盘顺 序写09H键盘 中断18HBASIC程序27H程序结束且驻留内存0AH保留的硬件中断19H引导(BOOT)程序28HDOS内部使用0BH异步串口2中断1AH年月日定时中断292EHDOS保留使用0CH异步串口1中断1BH用户键盘2FHDOS内部使用0DH并口2(硬磁盘)中断1CH用户定时器时标303FHDOS保留使用0EH软盘 中断1DHCRT初始化参数40FFH用户自定义INTRINTRBIOSBIOS 可调用可调用DOSDOS 可调用可

16、调用内部中断的种类(1 1)除法出错中断)除法出错中断 类型号为类型号为00H00H除法出错中断既不是外部硬件产生,也不是用软件指令除法出错中断既不是外部硬件产生,也不是用软件指令 产生,而是产生,而是CPUCPU自身产生的,因此自身产生的,因此0 0型中断没有对应的中断型中断没有对应的中断 指令,即指令系统中没有指令,即指令系统中没有INT 0INT 0这条指令。这条指令。(2 2)单步中断(陷阱中断)单步中断(陷阱中断) 类型号为类型号为01H01H对单步中断要注意三点:对单步中断要注意三点:一一是所有类型的中断在其处理过是所有类型的中断在其处理过 程中,程中,CPUCPU会自动地把标志寄存器会自动地把标志寄存器FLAGSFLAGS压入堆栈,然后压入堆栈,然后清除清除 TFTF和和IFIF。因此

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

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