第七章中断

合集下载

51单片机学习教程第7章 中断PPT课件

51单片机学习教程第7章 中断PPT课件

2020/8/20
单片机C语言程序设计
19
中断的优先原则
8051单片机中断优先级遵循以下原则:
中断 Interrupt
1
标题添加
点击此处输入相 关文本内容
标题添加
点击此处输入相 关文本内容
总体概述
点击此处输入 相关文本内容
Байду номын сангаас
点击此处输入 相关文本内容
2
中断的事例
日常生活中有很多计划任务要完成 或突发事件要处理,常用的是查询法, 但更好的处理办法是中断。
如烧开水时,水烧开后应及时切断 加热源。
RI/TI=1
10
单片机中断系统的结构
中断服务程序入口地址和中断号:
中断源
中断标志
中断服务程序入 口地址
优先级顺序
外部中断(INT0) IE0
0003H

定时/计数器0(T0) TF0
000BH

外部中断(INT1) IE1
0013H

定时/计数器1(T1) TF1
001BH

串行口
RI和TI
0023H
1. 查询法:不断地检查水是否烧开 2. 中断法:在烧水的壶上装哨子,利用水
烧开后的蒸汽吹响哨子
2020/8/20
单片机C语言程序设计
3
中断的概念
计算机处理的任务按实时性要求分 为两类:
1. 非实时性任务:显示刷新、声音鸣响 2. 实时性任务:系统错误处理、实时监控
对于实时性要求高的任务,出现后 要求立即处理,采用轮询的方式容易实 现,但实时性不高,浪费CPU时间,采 用中断的方式较为适宜。
9
单片机中断系统的结构

第七章 中断系统

第七章 中断系统

的中断请求从INT输出,CPU的INTR引脚。 若CPU处于开中断状态,在当前指令结束后,连续发2 个中断响应信号,8259A收到第一个中断响应信号,ISR 相应位置1,将IRR的相应位复位。
8259A在收到第二个中断响应信号后,把中断类型号
送到数据总线。 中断响应后,如8259A工作在自动结束中断方式,8259A 会在第二个中断响应结束后,把ISR相应位成0;如工作在普 通EOI方式,则必须由CPU发EOI命令。
CPU响应单级中断的条件
有中断请求信号 中断是开放的
单级中断的处理过程
中断请求 中断响应 中断处理 中断返回
发中断响应信号 关中断 保护处理器的现行状态 转去中断服务程序首地址 保护现场 中断服务 恢复现场 开中断 中断返回
第三节 多级中断
多级中断 优先权判别及中断源的识别
MOV AL, 1BH ;单片,电平触发,要ICW4 OUT 60H,AL
MOV AL, 1BH OUT 60H,AL MOV AL, 38H OUT 61H, AL MOV AL,09H OUT 61H,AL MOV AL, 22H OUT 61H, AL
;单片,电平触发,要ICW4
; IRR0的中断类型码为38H ;普通的全嵌套方式,缓冲方式, ;正常EOI ; 屏蔽IRR1和IRR5
2. OCW2
3. OCW3
3.8259A编程应用
1.初始化
例1:设IBM PC机接有一片8259A(两个端口地址为60H、61H),管理8个 中断源,采用普通完全嵌套方式,普通EOI方式,中断请求高电平有效, 优先级固定,IRR0最高,IRR7最低,IRR0的中断类型号为38H。IRR1、 IRR5需要被屏蔽。

微机原理第7章 8086中断系统和中断控制器

微机原理第7章 8086中断系统和中断控制器

3)高级中断源能中断低级的中断处理
中断嵌套 当CPU正在响应某一中断源的请求,执行为其服务的中断服务程序时, 如果有优先级更高的中断源发出请求,CPU将中止正在执行的中断服务程 序而转入为新的中断源服务,等新的中断服务程序执行完后,再返回到被 1 中止的中断服务程序,这一过程称为中断嵌套。 • 中断嵌套可以有多级,具体级数原则上不限,只取决于堆栈深度。
外部中断 非屏蔽中断 可屏蔽中断
可屏蔽中断源
CPU 中断逻辑
INTR
8259A 中断 INTA 控制器
INT N 指令
INTO 指令
除法 错误
单步 中断
IR0 IR1 IR2 IR3 IR4 IR5 IR6 IR7
外 设 中 断 源
内部中断: 除法错中断 指令中断 溢出中断 单步中断
硬件(外部)中断 非屏蔽中断请求 INT 2 NMI(17号引脚) 中 断 逻 辑 可屏蔽中断请求 中断类型号32~255 INTR(18号引脚)
中断指令 INT n N=32~255
溢出中断 INTO INT 4
断点 中断 INT 3
单步中断 (TF=1) INT 1
除法 错误 INT 0
软件(内部)中断
8086/8088中断源
1.软件中断(内部中断) 8086/8088的软件中断主要有三类共五种。 (1) 处理运算过程中某些错误的中断 执行程序时,为及时处理运算中的某些错误 ,CPU以中断方式中止正在运行的程序,提醒程 序员改错。 ① 除法错中断(中断类型号为0)。在8086 /8088 CPU执行除法指令(DIV/IDIV)时,若发现 除数为0,或所得的商超过了CPU中有关寄存器所 能表示的最大值,则立即产生一个类型号为0的 内部中断,CPU转去执行除法错中断处理程序。

第7章 中断系统

第7章 中断系统

可 屏 蔽 中 断 请 求
软件中断
硬件中断
小结: 中断分类及中ຫໍສະໝຸດ 类型码8086/8088系统最多可处理256级不同类型的中断。
可屏蔽中断(INTR) 外部中断(硬件中断) 非屏蔽中断(NMI,中断类型码2) 中断分类 单步中断(中断类型码1) 内部中断(软件中断) 断点中断(中断类型码3) 溢出中断(中断类型码4) Int n 中断
器退出暂停状态,响应中断,进入中断处理程序。
若现行指令为WAIT指令,且 TEST 引脚加入低电平信号, 则中断请求信号INTR产生后,便使处理器脱离等待状态,响 应中断,进入中断处理程序。
HLT: 暂停指令
(4) 8259A连续两次接收(2个总线周期) INTA = 0的中断 响应信号后,便通过总线将中断矢量号送CPU。 (5) 保护断点。将标志寄存器内容、当前CS内容及当前IP 内容压入堆栈: (SP)←(SP)-2
((SP)+1:(SP))←(PSW)
(SP)←(SP)-2 ((SP+l:(SP))←(CS) (SP)←(SP)-2 ((SP)+1:(SP))←(IP)
(6) 清除IF及TF(IF←0,TF←0),以便禁止其它可屏蔽中 断或单步中断发生。 (7) 求中断程序的入口地址 :根据8259A向CPU送的中断 矢量号n求得矢量地址,再查中断矢量表,得相应中断处理程 序首地址(段内偏移地址和段地址),并将 位首地址置入CS及
7.1 概述
中断和异常是处理器处理突发事件时所采取的两种不同 的处理方法,具体来说,中断指的是处理器暂停当前的程序, 转而去处理中断事件;而异常虽然也会对异常事件作出反应, 但不一定会暂停当前的程序。 在8086/8088处理器时代,中断主要包括外部中断 和 内 部中断两种。 在386/486等32位处理器时代,内部中断的数量和功能被 扩充,习惯上,称内部中断为异常,而中断则主要指外部中 断。

微型计算机原理与接口技术第七章课后答案

微型计算机原理与接口技术第七章课后答案

第七章1. 什么叫中断?什么叫可屏蔽中断和不可屏蔽中断?答:当CPU正常运行程序时,由于微处理器内部事件或外设请求,引起CPU中断正在运行的程序,转去执行请求中断的外设(或内部事件)的中断服务子程序,中断服务程序执行完毕,再返回被中止的程序,这一过程称为中断。

可屏蔽中断由引脚INTR引入,采用电平触发,高电平有效,INTR信号的高电平必须维持到CPU响应中断才结束。

可以通过软件设置来屏蔽外部中断,即使外部设备有中断请求,CPU可以不予响应。

当外设有中断申请时,在当前指令执行完后,CPU首先查询IF位,若IF=0,CPU就禁止响应任何外设中断;若IF=1,CPU就允许响应外设的中断请求。

不可屏蔽中断由引脚NMI引入,边沿触发,上升沿之后维持两个时钟周期高电平有效。

不能用软件来屏蔽的,一旦有不可屏蔽中断请求,如电源掉电等紧急情况,CPU必须予以响应。

2. 列出微处理器上的中断引脚和与中断有关的指令。

答:INTR:可屏蔽中断请求输入引脚。

NMI:不可屏蔽中断请求输入引脚INTA:可屏蔽中断响应引脚INT n :软件中断指令,其中n为中断类型号INTO:溢出中断,运算后若产生溢出,可由此指令引起中断。

CLI:中断标志位IF清0STI:置位中断标志位为13. 8086/8088系统中可以引入哪些中断?答:(1)外部中断两种外部中断:不可屏蔽中断NMI和可屏蔽中断INTR(2)内部中断内部中断又称软件中断,有三种情况引起:①INT n :中断指令引起的中断②CPU的某些运算错误引起的中断:包括除法错中断和溢出中断③由调试程序debug设置的中断:单步中断和断点中断。

4. CPU响应中断的条件是什么?简述中断处理过程。

答:CPU响应中断要有三个条件:外设提出中断申请;本中断位未被屏蔽;中断允许。

可屏蔽中断处理的过程一般分成如下几步:中断请求;中断响应;保护现场;转入执行中断服务子程序;恢复现场和中断返回。

CPU在响应外部中断,并转入相应中断服务子程序的过程中,要依次做以下工作:⑴从数据总线上读取中断类型号,将其存入内部暂存器。

单片机讲义第七章

单片机讲义第七章

一、中断的起因
什么可以引起中断? 生活中很多事件可以引起中断:有人 按了门铃了,电话铃响了,你的闹钟闹响 了,你烧的水开了….等等诸如此类的事件, 我们把可以引起中断的称之为中断源,单 片机中也有一些可以引起中断的事件, 8051中一共有5个:两个外部中断,两个 计数/定时器中断,一个串行口中断。
三、中断的响应过程
当有事件产生,进入中断之前我们必须先记住现 在看书的第几页了,或拿一个书签放在当前页的位置, 然后去处理不同的事情(因为处理完了,我们还要回 来继续看书):电话铃响我们要到放电话的地方去, 门铃响我们要到门那边去,也说是不同的中断,我们 要在不同的地点处理,而这个地点通常还是固定的。 89C51中也是采用的这种方法,五个中断源,每个 中断产生后都到一个固定的地方去找处理这个中断的 程序,当然在去之前首先要保存下面将执行的指令的 地址,以便处理完中断后回到原来的地方继续往下执 行程序。
二、中断的嵌套与优先级处理
设想一下,我们正在看书,电话铃响了,同时又 有人按了门铃,你该先做那样呢?如果你正是在等一 个很重要的电话,你一般不会去理会门铃的,而反之, 你正在等一个重要的客人,则可能就不会去理会电话 了。如果不是这两者(即不等电话,也不是等人上 门),你可能会按你通常的习惯去处理。总之这里存 在一个优先级的问题, 单片机中也是如此,也有优先级的问题。优先级 的问题不仅仅发生在两个中断同时产生的情况,也发 生在一个中断已产生,又有一个中断产生的情况,比 如你正接电话,有人按门铃的情况,或你正开门与人 交谈,又有电话响了情况。考虑一下我们会怎么办吧。
电平触发的外部中断的清除
对于电平触发的外部中断,CPU响应中断后, 虽然也是由硬件清除了相应的标志位,但是不 能对外部引脚上的电平进行处理,也就是说, 这时如果外部引脚上的低电平依然存在,会造 成重复中断,因此我们应该在电路上增加对外 部引起中断的信号进行处理。P148图7-5是一 个可行的方案之一。通过I/O口输出一个信号, 使得外部引脚上的中断请求信号变为高电平。

第7章 中断处理

第7章 中断处理
•打印机的打印事务; 打印机的打印事务; 打印机的打印事务 •数据采集中的 数据采集中的A/D转换等。 转换等。 数据采集中的 转换等
多道程序或多重任务的运行:分时中断处理。 多道程序或多重任务的运行:分时中断处理。
4. 中断源 任何能够引发CPU中断的事件都称为中 中断的事件都称为中 任何能够引发 中断的事件 断源。 断源。
二、多中断源情况下的特殊问题
1. 中断源的识别
对于软件中断而言,CPU对中断源的识别靠 对于软件中断而言, 对中断源的识别靠 软件中断指令( 来识别, 软件中断指令(INT n)中的中断号 来识别,并 )中的中断号n来识别 转到响应中断服务程序去执行。 转到响应中断服务程序去执行。 对于硬件中断,CPU只有一个 只有一个NMI和INTR引 对于硬件中断,CPU只有一个NMI和INTR引 当有多个外设要申请中断时, 脚,当有多个外设要申请中断时,就必须通过中 断接口电路来连接, 断接口电路来连接,同时给每个中断外设编排一 个中断号( 系统称为中断类型码)。 个中断号(8086系统称为中断类型码)。当任一 系统称为中断类型码)。当任一 外设有中断申请时, 外设有中断申请时,通过中断接口电路将外设中 断信号转发给CPU,然后再由 断信号转发给 ,然后再由CPU从中断接口电 从中断接口电 路读取该中断源的编号。 路读取该中断源的编号。
中 断 控 制 器
IRQ0 IRQ1
外设0 外设1
IRQn
外设n
软硬件结合的简易中断控制器
≥1
2. 中断优先级 对于多中断源而言, 对于多中断源而言,存在各中断源的优先级别 问题。当两个及以上的中断源同时申请中断时, 问题。当两个及以上的中断源同时申请中断时,最 先响应哪个中断源的中断请求, 先响应哪个中断源的中断请求,则由它们的优先级 别决定。 别决定。 可屏蔽中断源的优先级别由中断控制器决定。 可屏蔽中断源的优先级别由中断控制器决定。 8086系统中各类中断的优先级别如下: 系统中各类中断的优先级别如下: 系统中各类中断的优先级别如下

微型计算机原理与接口技术第七章课后答案全文

微型计算机原理与接口技术第七章课后答案全文

第七章1. 什么叫中断?什么叫可屏蔽中断和不可屏蔽中断?答:当CPU正常运行程序时,由于微处理器内部事件或外设请求,引起CPU中断正在运行的程序,转去执行请求中断的外设(或内部事件)的中断服务子程序,中断服务程序执行完毕,再返回被中止的程序,这一过程称为中断。

可屏蔽中断由引脚INTR引入,采用电平触发,高电平有效,INTR信号的高电平必须维持到CPU响应中断才结束。

可以通过软件设置来屏蔽外部中断,即使外部设备有中断请求,CPU可以不予响应。

当外设有中断申请时,在当前指令执行完后,CPU首先查询IF位,若IF=0,CPU就禁止响应任何外设中断;若IF=1,CPU就允许响应外设的中断请求。

不可屏蔽中断由引脚NMI引入,边沿触发,上升沿之后维持两个时钟周期高电平有效。

不能用软件来屏蔽的,一旦有不可屏蔽中断请求,如电源掉电等紧急情况,CPU必须予以响应。

2. 列出微处理器上的中断引脚和与中断有关的指令。

答:INTR:可屏蔽中断请求输入引脚。

NMI:不可屏蔽中断请求输入引脚INTA:可屏蔽中断响应引脚INT n :软件中断指令,其中n为中断类型号INTO:溢出中断,运算后若产生溢出,可由此指令引起中断。

CLI:中断标志位IF清0STI:置位中断标志位为13. 8086/8088系统中可以引入哪些中断?答:(1)外部中断两种外部中断:不可屏蔽中断NMI和可屏蔽中断INTR(2)内部中断内部中断又称软件中断,有三种情况引起:①INT n :中断指令引起的中断②CPU的某些运算错误引起的中断:包括除法错中断和溢出中断③由调试程序debug设置的中断:单步中断和断点中断。

4. CPU响应中断的条件是什么?简述中断处理过程。

答:CPU响应中断要有三个条件:外设提出中断申请;本中断位未被屏蔽;中断允许。

可屏蔽中断处理的过程一般分成如下几步:中断请求;中断响应;保护现场;转入执行中断服务子程序;恢复现场和中断返回。

CPU在响应外部中断,并转入相应中断服务子程序的过程中,要依次做以下工作:⑴从数据总线上读取中断类型号,将其存入内部暂存器。

硬件技术基础第七章中断系统

硬件技术基础第七章中断系统

CPU响应中断的条件和过程 CPU响应中断的条件和过程
恢复现场 把所保存的各个内部寄存器的内容和标志位的状态从 堆栈弹出,送回CPU中的原来位置。这个操作在8088 CPU中的原来位置 8088中也 堆栈弹出,送回 CPU中的原来位置。这个操作在8088 中也 是由服务程序中用POP指令来完成的。 POP指令来完成的 是由服务程序中用POP指令来完成的。 开中断与返回 在中断服务程序的最后,要开中断(以便CPU CPU能响应 在中断服务程序的最后,要开中断(以便 CPU能响应 新的中断请求)和安排一条返回指令,将堆栈内保存的IP 新的中断请求)和安排一条返回指令,将堆栈内保存的IP CS值弹出 程序就恢复到主程序中运行。 值弹出, 和CS值弹出,程序就恢复到主程序中运行。
中断系统
教学目的和要求
本章主要介绍中断的基本概念 , 中断响应过程 , 8088的中断方式 的中断方式, PC/XT的中断方式 的中断方式, 8088的中断方式,IBM PC/XT的中断方式,之后又介绍了 中断控制器8259 重点掌握中断概念、中断响应过程、 8259, 中断控制器 8259 , 重点掌握中断概念 、 中断响应过程 、 8088中断方式 中断方式。 8088中断方式。
中断系统
中断的屏蔽:有些中断源产生的中断,可以用编程的方法, 中断的屏蔽:有些中断源产生的中断,可以用编程的方法, CPU不予理睬 不予理睬。 使CPU不予理睬。 CPU响应中断转去执行中断服务程序前, CPU响应中断转去执行中断服务程序前,需要把被中 响应中断转去执行中断服务程序前 断程序的现场信息保存起来,以便执行完中断服务程序后, 断程序的现场信息保存起来,以便执行完中断服务程序后, 接着从被中断程序的断点处继续往下执行,这些现场信息 接着从被中断程序的断点处继续往下执行, 包括程序计数器的内容、CPU的状态信息 的状态信息、 包括程序计数器的内容、CPU的状态信息、执行指令后的 结果特征和一些通用寄存器的内容。 结果特征和一些通用寄存器的内容。 中断处理的隐操作: 中断处理的隐操作:有些信息的保存如程序计数器的内容 等由机器硬件预先安排完成。 等由机器硬件预先安排完成。 中断向量: 中断向量:有些信息的保存是在中断服务程序中预先安排 CPU响应中断 由中断源提供地址信息, 响应中断, 的。CPU响应中断,由中断源提供地址信息,

《单片机原理与技术》课件第7章-中断

《单片机原理与技术》课件第7章-中断

1.定时器/计数器控制寄存器TCON
位7
位6
位5
位4
位3
位2
位1
位0
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0
IT0:外部中断INT0触发方式选择 位。可由用户用软件选择。 • IT0=1:设定外部中断引脚信号为下降 沿触发方式。 •
IT1:外部中断INT1触发方式选择 位,其功能类似于IT0。 • IE0:外部中断INT0触发有效标志 位。 • IE1:外部中断INT1触发有效标志 位,其功能类似于IE0。 •

定时器0与定时器1标志为TF0与TF1, 在定时器溢出周期的S5P2设置。然后其值 在下一周期由电路查询。然而,定时器2标 志TF2是在S2P2设置且在定时器溢出的同 一周期内被查询。 Nhomakorabea•
若请求有效且响应的条件正确,至请 求的服务例程的硬件子例程调用将是下一 条要执行的指令。CALL自己需要两个周期。 因此,在外部中断请求的激活与服务例程 的第一条指令的执行开始之间,至少需要3 个完整的机器周期。图7-9所示为中断响应 时序。
图7-4 中断响应、服务及返回流程图
7.3 80C51中的中断结构
7.3.1 中断启用
图7-5 MCS-51中断源
图7-6 80C51中的IE(中断启用)寄存器
7.3.2
中断优先权
图7-7 80C51中的IP(中断优先级)寄存器
7.3.3

中断如何处理
在操作中,所有中断标志在每个机器 周期的S5P2期间被采样。在下一个机器周 期期间查询采样。若找到一启用的中断的 标志已设置,中断系统生成一LCALL至在 程序存储器中的适当单元,至中断服务例 程的LCALL的生成,由以下3个条件中的任 一个阻断:

单片机原理及接口技术 第七章

单片机原理及接口技术 第七章

7.6.2 中断返回
在中断服务子程序的最后要安排 一条中断返回指令IRET,执行该指令, 系统自动将堆栈内保存的 IP/EIP和CS 值弹出,从而恢复主程序断点处的地 址值,同时还自动恢复标志寄存器FR 或EFR的内容,使CPU转到被中断的程 序中继续执行。
7.6.4 中断请求的撤除
①若ITO (ITl) =0,外中断为电平触发方式。单片机在每一个机器周期的S5P2期间采样中断输入信号INTO (INT1)的状态,若为低电平,即可使TCON寄存器中的中断请求标志位IEO (IEl)置位,若满足响应条件就能得 以及时响应。由于外中断源在每个机器周期被采样一次,所以输入的低电平至少必须保持12个振荡周期,以保 证能被采样到。而一旦CPU响应中断,进入中断服务程序时,IEO (IEl)会被CPU自动删除,但由于中断系统没有 对外的中断应答信号,即中断响应后没有信号输出去通知外设结束中断申请,所以,设计人员如果没有措施来 撤除低电平信号,则在下一个机器周期CPU检测外中断申请时又会发现有低电平信号而将IEO (IEl)重新置位。
外部中断是由外部原因引起的,共有两个中断源,及外部中断0和外部中断1,相应的中断 请求信号输入端是INT0和INT1。 外部中断INT0和INT1有两种触发方式,即电触发方式和脉冲触发方式。
7.4.2 定时中断类
定时中断发生在单片机的内部,也有两个中断源,即为定时/计数器0溢出中断和定时/计 数器1溢出中断。
7.4 中断源类型
中断源,中断是指由于某种事件的发生(硬件或者软件的),计算机暂停执行当前的程序, 转而执行另一程序,以处理发生的事件,处理完毕后又返回原程序继续作业的过程。中断是 处理器一种工作状态的描述。我们把引起中断的原因,或者能够发出中断请求信号的来源统 称为中断源。

武汉理工通信原理课件第七章 中断和异常

武汉理工通信原理课件第七章  中断和异常
① 被零除操作或OF=1时执行INTO指令引起 被零除操作或OF=1时执行INTO指令引起 ② 使用DEBUG中的单步或断点设置操作引起 使用DEBUG中的单步或断点设置操作引起 ③ 执行INT n 指令引起 执行INT
外部中断(硬中断) 2,外部中断(硬中断) 指外部芯片通过 CPU的INTR引脚或NMI引脚 CPU的INTR引脚或NMI引脚 发出中断申请引起的中断. 发出中断申请引起的中断.
CPU执行流程 执行流程
中断事件1 中断事件 中断服务程序1 中断服务程序
中断事件 2 中断服务程序 2
二,中断源和中断优先权
引起中断的因素很多, 引起中断的因素很多, 将发出中断申请的外设或内部的原因, 将发出中断申请的外设或内部的原因,称为中断源 给每个中断源指定一个优先权, 给每个中断源指定一个优先权,称为中断优先权 当多个中断源同时发出中断请求时, 当多个中断源同时发出中断请求时, CPU按照中断优先权的高低顺序,依次响应. CPU按照中断优先权的高低顺序,依次响应.
当INTR上有高电平信号 INTR上有高电平信号 当NMI上有上升沿信号 NMI上有上升沿信号
8 0 8 8
可屏蔽中断
由INTR引脚引起的中断,称可屏蔽中断. INTR引脚引起的中断, 可屏蔽中断. CPU是否响应INTR引脚上的中断请求取决于IF标志: CPU是否响应INTR引脚上的中断请求取决于IF标志: IF=1 CPU响应INTR引脚上的中断请求 IF=1,CPU响应INTR引脚上的中断请求 IF=0 CPU不响应INTR引脚上的中断请求 IF=0,CPU不响应INTR引脚上的中断请求 即当IF=0 即当IF=0时,将INTR引脚上的中断申请屏蔽. INTR引脚上的中断申请屏蔽.
最大组态(最小组态) 最大组态(最小组态) GND A14 A13 A12 A11 A10 A9 A8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 NMI INTR CLK GND VCC A15 A16/S3 A17/S4 A18/S5 A19/S6 (HIGH)(SSO) MN/MX RD RQ/GT0(HOLD) RQ/GT1(HLDA) LOCK(WR) S2(IO/M) S1(DT/R) S0(DEN) QS0(ALE) QS1(INTA) TEST READY RESET

第七章AT89s52单片机中断系统

第七章AT89s52单片机中断系统

高 优 先 级
低 优 先 级
7
3.中断触发方式
①.电平触发方式 ②.下降沿触发方式
第七章 AT89S52单片机中断系统
8
7.2.2 中断标志与控制
单片机设置了5个专用寄存器用于中 断控制,用户通过设置其状态来管理中 断系统。5个专用寄存器包括:
定时器/计数器0,1控制寄存器TCON; 定时器2控制寄存器T2CON; 串行口控制寄存器SCON; 中断允许控制寄存器IE; 中断优先级控制寄存器IP。
第七章 AT89S52单片机中断系统
9
1.定时器/计数器0,1控制寄存器TCON
D7 D6 D5 D4 D3 D2 D1 D0
TCON TF1
TF0
IE1 IT1 IE0 IT0 字节地址:88H
位地址 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H 可位寻址
TF1(TCON.7)—T1计数溢出,由硬件置位,响应中断
2
(2)中断源
中断源通常可分为以下几种: 设备中断 定时中断 故障源中断 程序性中断源
第七章 AT89S52单片机中断系统
3
(4) 中断识别方式
一般设有两种识别方式: 查询中断 矢量中断。
第七章 AT89S52单片机中断系统
4
(5) 中断的其它概念
中断请求、中断标志、中断允许、 中断入口地址(中断矢量)、中断 嵌套、中断保护、中断服务程序、 中断源清除、中断屏蔽、中断返回、 中断等待 。
当EA=1时,允许所有中断开放,总允许后,各中断的允许 或禁止由各中断源的中断允许控制位进行设置;
当EA=0时,屏蔽所有中断。
第七章 AT89S52单片机中断系统
14

计算机原理第七章8259

计算机原理第七章8259

8259的初始化命令字ICW2
ICW2是中断类型码初始化命令字,A0=1,跟在ICW1后表示对 ICW2编程。
ICW2设置中断类型码; 中断类型码高5位来自ICW2高5位,低3位对应IR0~IR7。
17
8259的初始化命令字ICW3
ICW3是标志主片/从片的初始化命令字,只有当SNGL=0时,跟 在ICW2后面出现,对其设置应使A0=1;
连接系统总线方式
缓冲方式 在多片8259级连的大系统中,8259通过总线驱动器和数据总线相 连; 使用8259的SP#/EN#作为总线驱动器的使能信号;
非缓冲方式 8259的SP#/EN#作为输入; 单片使用时, SP#/EN#接高电平;多片时,主片SP#/EN#接高电 平,从片SP#/EN#接低电平;
操作命令字可在任何时候写入8259A ,且无顺序。
OCW1为中断屏蔽操作命令字; A0=1 表示设置OCW1; Mi=1 表示屏蔽IRi输入中断请求;
28
8259的操作命令字OCW2
ቤተ መጻሕፍቲ ባይዱ
OCW2用来设置优先级循环方式和中断结束方式; A0=0,且D4D3 = 00,表示对OCW2编程; R,优先级循环状态 R=1优先级自动循环;R=0优先级不循环; EOI 中断结束命令位,非自动结束方式时清ISn; SL 设定标志。 SL=1,由L2、L1、L0指明中断号或最低优先权; SL=0,则L2、L1、L0无效;
29
设置优先级方式
优先级自动循环方式 一般用在系统中多个中断源优先级相等的场合; 优先级是变化的,一个设备收到中断服务后,它的优先级自 动降为最低; 初始优先级为IR0-IR7;
优先级特殊循环方式 最低优先级由初始编程设置;
30

08 中断

08 中断

0 1 INTR
单步中断 8086/8088CPU内部逻辑 8086/8088CPU内部逻辑 CPU
1、8088系统采用中断类型 向量 码来识别不 、 系统采用中断类型(向量 系统采用中断类型 向量)码来识别不 同的中断源, 同的中断源,每个中断源都有一个与它相对 应的中断类型码 。
(1)溢出、断点、除法溢出、单步、非屏蔽中 )溢出、断点、除法溢出、单步、 断的类型码为固定值 (2)软件中断的类型码由指令给出 ) (3)可屏蔽中断的类型码由 )可屏蔽中断的类型码由PIC给出 给出
(5)中断返回 )
执行中断返回指令IRET 执行中断返回指令
IRET指令将使 指令将使CPU把堆栈内保存的断点信息弹 指令将使 把堆栈内保存的断点信息弹 出到IP、 和 出到 、CS和FLAG中,保证被中断的程序从断 中 点处能够继续往下执行。 点处能够继续往下执行。
IPL IPH CSL CSH FLAGL FLAGH IP
外部中断
非屏蔽中断NMI:类型号2,不可用软件屏蔽,CPU必须 :类型号 ,不可用软件屏蔽, 非屏蔽中断 必须 响应它。 响应它。 可屏蔽中断INTR:类型号由 提供。 可屏蔽中断 :类型号由PIC提供。IF=1时CPU才能响 提供 时 才能响 应。
8086/8088中断源类型 中断源类型
软件中断指令 n 溢出中断 断点中断 除法错 4 3 中断逻辑 中断控 制器 8259A PIC 2 NMI 非屏蔽中断请求
• 在有些情况下,即使中断允许标志位IF=1, CPU也不能立即响应外部的可屏蔽中断请 求,而是要再执行完下一条指令才响应外 部中断。例如,发出中断请求时,CPU正 在执行封锁指令。如果执行向段寄存器传 送数据的指令,如MOV和POP指令,也要 等下一条指令执行完后,才允许中断。当 遇到等待指令或串操作指令时,允许在指 令执行过程发中断请求,但在一个基本操 作完成后响应中断。

汇编语言第7章 中断和DOS功能调用

汇编语言第7章 中断和DOS功能调用

例7.3:输入字符串
buffer db 81
;定义缓冲区 ;第1个字节填入可能输入的最大字符数 db 0 ;存放实际输入的字符 数 db 81 dup(0) ;存放输入的字符串 ... mov dx,seg buffer ;伪指令seg取得buffer的段地址 mov ds,dx ;设置数据段DS mov dx,offset buffer mov ah,0ah int 21h
⒉ 字符串的输出
从键盘输入数据
⒊ 字符的输入 ⒋ 字符串的输入
1. 字符输入的功能调用
DOS功能调用INT 21H 功能号:AH=01H 出口参数:AL=字符的ASCII码 功能:获得按键的ASCII代码值
调用此功能时,若无键按下,则会一直
等待,直到按键后才读取该键值
例7.1:
IRET
;中断返回指令:实现中断返回
7.3 系统功能调用
21H 号中断是 DOS 提供给用户的用于调
用系统功能的中断,它有近百个功能供用 户选择使用,主要包括设备管理、目录管 理和文件管理三个方面的功能 ROM-BIOS 也以中断服务程序的形式, 向程序员提供系统的基本输入输出程序 汇编语言程序设计需要采用系统的各种 功能程序 充分利用操作系统提供的资源是程序设 计的一个重要方面,需要掌握
实现中断返回73系统功能调用?21h号中断是dos提供给用户的用于调用系统功能的中断它有近百个功能供用户选择使用主要包括设备管理目录管理和文件管理三个方面的功能提供给用户的用于调用系统功能的中断它有近百个功能供用户选择使用主要包括设备管理目录管理和文件管理三个方面的功能?rombios也以中断服务程序的形式向程序员提供系统的也以中断服务程序的形式向程序员提供系统的基本输入输出程序?汇编语言程序设计需要采用系统的各种功能程序汇编语言程序设计需要采用系统的各种功能程序?充分利用操作系统提供的资源是程序设计的一个重要方面需要掌握充分利用操作系统提供的资源是程序设计的一个重要方面需要掌握功能调用的步骤通常按照如下4个步骤进行

第7章单片机的中断系统答案

第7章单片机的中断系统答案

一、选择题1、若要求最大定时时间为216×机器周期,则应使定时器工作于 B 。

A.工作方式0B.工作方式lC.工作方式2D.工作方式32、若要求最大定时时间为213×机器周期,则应使定时器工作于 A 。

A.工作方式0B.工作方式lC.工作方式2D.工作方式33、若要求最大定时时间为28×机器周期,则应使定时器工作于 C ,D 。

A.工作方式0B.工作方式1C.工作方式2D.工作方式34、定时器方式控制寄存器TMOD中MlM0为l l时,则设置定时器工作于 D 。

A.工作方式0B.工作方式lC.工作方式2D.工作方式35、6MHz晶振的单片机在定时工作方式下,定时器可能实现的最小定时时间是 B .A.1 u sB.2 u sC.4 u sD.8 u s ’6、12MHz晶振的单片机在定时工作方式下,定时器可能实现的最小定时时间是 A .A.1 u sB.2 u sC.4 u sD.8 u s7、12MHz晶振的单片机在定时工作方式下,定时器可能实现的最大定时时间是 B .A.4096 u sB.8192 u SC.1638 u sD.32768 u s8、定时器/计时器0的初始化程序如下:MOV TMOD,#06HMOV TH0.#0FFHMOV TLO,#0FFHSETB EASETB ET0执行该程序段后,把定时器/计时器0的工作状态设置为 D 。

A. 工作方式0,定时应用,定时时间2 u s,中断禁止B.工作方式l,计数应用,计数值255,中断允许C.工作方式2,定时应用,定时时间510 u s,中断禁止D.工作方式2,计数应用,计数值1,中断允许9、设串行口工作于方式l,晶振频率为6MHz,波特率为1200位/秒,SMOD=0,则定时器l的计数初值为 C 。

A.FlHB.F4HC.F3HD.FOH10、以下所列特点,不属于串行工作方式0的是 D 。

A.波特率是固定的,为时钟频率的十二分之一B.8位移位寄存器C.TI和RI都须用软件清零D.在通信时,须对定时器l的溢出率进行设置11、通过串行口发送或接收数据时,在程序中应使用 A 。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
不存在同时调用多个子程序的情况,因此 子程序不需要进行优先级排队;而不同中 断源则可能同时向CPU提出服务请求,因 此需要中断仲裁及优先级排队。
中断系统的功能
一、实现中断及返回
中断源发出中断请求,CPU决定是否响应,若响 应,则保护断点和现场,转入相应中断服务程序, 中断服务结束后,恢复现场和断点,继续执行原 程序。
7.1中断概述
中断,是指CPU在执行正常程序时,为处理一些 紧急发生的情况,暂时中止当前程序,转而对该 紧急事件进行处理,并在处理完后返回正常程序 的过程
CPU执行流程
非预料事件1
中断服务程序1
非预料事件 2
中断服务程序 2
非预料事件
◆非预料事件是指事件发生的时间无法预知,即中断源何时产生中断不确定,是随 机的。
每个中断服务程序末尾必须有IRET指令以示 结束,从而返回被中断的程序地址处
中断屏蔽:在中某断些系情统况下相,关CP概U念可能不对中断请
求信号作出响应或处理,这就是中断屏蔽。
屏蔽情况
➢ 中断屏蔽标志IF
➢ 接口电路中的中断屏蔽寄存器
➢ 系统在处理优先级别较高的中断请求时,不会 理睬后来的级别较低的中断请求 。
NMI、 2、软件中断(包括自动产生中断)
CPU内部
NMI CPU内的中断逻辑
软件中断 INT n INTO
自动产生的中断 除法错
单步(TF=1)
INTR 8259A
IRQ0 系统定时器 IRQ1 键盘 IRQ2 彩色/图形接口 IRQ3 保留(串口) IRQ4 串口 IRQ5 保留(LPT)
IRQ6 软盘
中断优先级:在系统中多个中断源可能同时提出
中断请求时,需要按中断的轻重缓急给每个中断 源指定一个优先级别
中断系统相关概念
断点:是指CPU执行的现行程序被中断时的 下一条指令的地址,又称断点地址
、、
、、
断点概念
、、 、、
、、
MOV AX, 0
ADD AX, DX
1000:150H
MOV [ DI ], AX
外部中断 (硬件中断)
可屏蔽中断 (INTR) 不可屏蔽中断 (NMI)
内部中断
(软件中断) (执行指令所引起的)
中断系统相关概念
中断向量:中断向量即中断服务子程序的入口地 址,也就是中断服务子程序的第一条指令的地址 在存储器中的存放位置
中断向量表:中断向量构成的表格,位于存储器 的最低地址单元
类型 中断源


00H 被0除 0FH 并口1(打印机) 1EH 磁盘参数
中断
01H 单步中断 10H 显示器驱动程序 1FH 图形字符集
02H NMI
11H 设备检测
20H 程序结束
03H 断点中断 12H 存储器检测
21H DOS系统
调用
IBM-PC/XT中断类型号的功能分配
类型码
中断源
类型码
中断源
类型码
中断源
04H 溢出中断 05H 屏幕打印中断
06H (保留)
07H (保留)
13H 软盘驱动程序
22H 结束地址
14H 通信驱动程序
23H Ctrl-Break夭折键
处理
15H 盒式磁带机驱动程 24H 关键性错误处理

16H 硬盘驱动程序
25H 磁盘顺序读
08H 定时电路中断
17H 打印机驱动程序 26H 磁盘顺序写
CPU执行流程
非预料事件1
中断服务程序1
中断系统的功能
二、能实现优先权排队
按各中断请求的重要程度排列CPU响应的 次序称为中断优先级。
即同时有多个中断请求到来时,CPU会首 先响应和处理优先级别最高的中断请求。
中断优先级的实现可以用软件或硬件设置
7.2 8086的中断系统
8086的中断源(8086微型机有两类中断): 1、可屏蔽硬件中断INTR、不可屏蔽硬件中断
◆中断源产生中断的随机性,使中断服务程序的执行也具有随机性,即何时执行中 断服务程序不是在程序中安排好的。
中断系统
中断系统是微机中实现中断功能的各种软、 硬件的总称
中断系统一般包括CPU内部相应的中断逻辑、 接口中的中断控制电路及各类中断服务子程 序
中断系统相关概念
中断源:引起中断的原因,或能够发出中断请求信 号的外设 中断类型号:处理器对各类中断的中断源进行的统 一编号N,N的取值范围是0~255
IRQ7 LPT
中断源的优先级顺序为:被0除中断→软件中断→INTO → NMI → INTR →单步中 断。
中断类型码
一、中断类型码:8086可以处理256个中断请求。每 个中断请求均对应于唯一固定的类型码。被0除 类型码是0,单步为1; NMI为2;断点中断为3, 溢出中断为4
类型 中断源 类型码 中断源
、、 、、 、、 、、
、、
PUSH AX
、、
、、
IRET
CPU在执行此指令时, 某中断源发申请中断; CPU在执行完该指令后, 转去执行中断子程
地址1000:150H为断点
中断系统相关概念
中断现场:是指CPU转去执行中断服务程序前的运行 状态,包括CPU内部各寄存器、断点地址等。
中断嵌套:当CPU正在进行某一级别中断源的中断 处理时,若有更高级别的新中断源发出请求,且新中 断源满足响应条件,则CPU应中止当前的中断服务程 序,保护此程序的断点和现场,转而响应高级中断。 这种多级(重)中断的处理方式称为“嵌套”。
中断嵌套过程示意图Leabharlann CPU执行流程非预料事件1
中断服务程序1
中断服务程序2
非预料事件2
中断嵌套必须具备的几个条件
正处于响应状态的中断服务程序中,应开放 总中断(IF位置1)
新中断应具有比原中断有高的优先级;同级 或低级均不能嵌套
为保护各级中断服务程序的数据不被破坏, 所有服务程序中均应有保护现场、恢复现场 的指令
09H 键盘中断
18H BASIC程序
27H 程序结束且驻留内

0AH 保留的硬件(级联)中 19H 引导(BOOT)程 28H DOS内部使用


0BH 异步串口2中断
中断处理过程
中断检测
✓ CPU内部硬件自动完成
中断响应
✓ CPU内部硬件自动完成
中断服务
✓ 中断服务是根据用户自行编制的指令顺序完 成各项操作的。
程序中断与子程序调用的区别
子程序的执行是程序员事先安排好的(由 调用子程序的指令转入);中断服务子程 序的执行一般由随机的中断事件引发。
子程序的执行受到主程序或上层子程序的 控制;中断服务子程序一般与被中断的现 行程序无关。
相关文档
最新文档