第章中断系统和中断控制器A详解

合集下载

4_中断系统

4_中断系统

3.1 TCON定时控制寄存器
TFl和TF0: 定时器1和定时器0的溢出标志。 当定时器计满产生溢出时,由硬件自动置 “1”,并可申请中断。进入中断服务程序后, 由硬件自动清0。 也可作为程序查询的标志位,在查询方式 下应由软件来清0。
3.1 TCON定时控制寄存器
TR1和TR0: 为定时器1和定时器0的启停控制位。 将TRx清0后,可停止定时器的工作。 将该位置“1”后,可启动定时器工作。
3.3 IE中断允许寄存器
D7 EA D6 D5 ET2 D4 ES D3 ET1 D2 EX1 D1 ET0 D0 EX0
EA:CPU中断总允许位。 ES :串行口中断允许位。 ET1:定时器1中断允许位。 EX1:外部中断1的中断允许位。 ET0:定时器0的中断允许位 EX0:外部中断0的中断允许位。 ET2:定时器2中断允许位
TCON定时控制寄存器ቤተ መጻሕፍቲ ባይዱSCON串行口控制寄存器 IE中断允许寄存器
IP中断优先级寄存器
3.1 TCON定时控制寄存器
作用: 控制定时器/计数器的启、停 外部中断源的触发方式 定时器的溢出中断标志 外部中断源的中断请求标志。 其地址为88H。
3.1 TCON定时控制寄存器
中断源的入口地址分别为: 外部中断0中断: 0003H 最高级 T0定时器0中断: 000BH 外部中断1中断: 0013H T1定时器l中断: 001BH 串行口输入/输出中断: 0023H 最低级 定时器2中断: 002BH 最低级(52系列单片 机中)
3 MCS-51单片机中断系统使用
MCS-51单片机中断控制部分由4个专用 寄存器组成:
中断系统
1 中断系统概述 2 MCS-51单片机的中断系统 3 MCS-51单片机中断系统使用 4 C51中中断系统的应用

微机原理第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转去执行除法错中断处理程序。

微机原理与接口技术——中断系统

微机原理与接口技术——中断系统

2、内部中断——软件中断
内部中断指由指令的执行或软件对标志寄存器中 某个标志的设置产生的中断
专用中断
指令中断
内部中断的种类
(1)除法出错中断 类型号为00H
除法出错中断既不是外部硬件产生,也不是用 软件指令产生,而是CPU自身产生的,因此0型中 断没有对应的中断指令,即指令系统中没有INT 0 这条指令。
30~3FH 40~FFH
DOS保留使用 DOS内部使用 DOS保留使用 用户自定义
DOS 可调用
1、外部中断——硬件中断
1、非屏蔽中断(NMI):不受中断标志位的控制,中断类型 号为2,所以中断向量放在0000:0008开始的4个单元中。NMI 中断一般用于紧急情况的处理,不受中断标志位IF影响 。 2、可屏蔽中断(INTR):受中断标志位的控制,IF=1, CPU才能响应INTR中断。CPU响应INTR中断时,往INTA引 脚上发两个负脉冲,外设接到第二个负脉冲后,立即往数据总 线上送出中断类型码,供CPU读取。
中断源
引起CPU中断的事件,发出中断请求的来源。
异常中断 内部中断
软件中断
异常事件引起 中断指令引起
可屏蔽中断 外部中断
非屏蔽中断
INTR中断 NMI中断
引入中断的原因
提高数据传输率; 避免了CPU不断检测外设状态的过程,提高了
CPU的利用率。 实现对特殊事件的实时响应。
中断系统
中断系统是指实现中断功能的软硬件的统称。功 能有: 正确识别中断请求,实现中断响应、中断处理
INTR
IRQ0 系统定时器 IRQ1 键盘 IRQ2 彩色/图形接口
8259A
IRQ3 保留(串口) IRQ4 串口
IRQ5 保留(LPT)

单片机中断系统详细教程

单片机中断系统详细教程

单片机中断系统详细教程一、中断系统的原理中断系统是一种异步事件响应机制,它允许设备在正常程序运行的过程中插入一个特殊事件,中断请求触发后,处理器即刻中断当前程序的执行,执行特定的中断服务程序,完成对事件的处理。

其流程如下:1.当外设需要处理器响应时,会向处理器发送中断请求信号,通常为一个引脚的高电平触发。

2.处理器在接收到中断请求信号后,暂停当前的程序执行,保存当前现场(保存中断发生时的CPU状态),并进入中断服务程序执行,执行完成后再返回到原来的程序继续执行。

二、中断系统的使用方法1.初始化中断控制器:对中断向量表进行初始化,设置中断优先级等。

2.配置外设的中断请求触发方式:设置外设的中断触发方式,包括电平触发和边沿触发。

3.编写中断服务程序:根据需要,编写中断服务程序来处理中断事件。

4.启动中断系统:启动中断系统,使处理器能够响应外设的中断请求。

三、中断系统的实例下面以8051单片机为例,演示如何使用中断系统。

1.初始化中断控制器使用8051单片机的中断系统,首先需要初始化中断控制器,设置中断向量表和中断优先级。

具体步骤如下:```cvoid init_interrup//设置中断向量表EA=1;//打开总中断使能ET0=1;//打开定时器0中断EX0=1;//打开外部中断0EX1=1;//打开外部中断1//设置中断优先级IP=0x10;//设置定时器0中断为高优先级P3=0x0F;//设置外部中断0和中断1为低优先级```2.配置外设的中断请求触发方式在8051单片机中,外部中断0和中断1的触发方式可由用户进行配置,可以选择为低电平触发或上升沿触发。

例如,将外部中断0配置为上升沿触发:```cvoid init_external_interrupIT0=1;//设置外部中断0为边沿触发方式(上升沿触发)EX0=1;//打开外部中断0使能```3.编写中断服务程序根据需要,编写相应的中断服务程序来处理中断事件。

第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位处理器时代,内部中断的数量和功能被 扩充,习惯上,称内部中断为异常,而中断则主要指外部中 断。

第8章 中断系统

第8章 中断系统

中断执行示意图如下:
第18页
2012年6月11日星期一
第8章
结束当前指令?
内部中断?
中断系统

关中断 标志寄存器入栈 TEMP=TF(暂存) 清除IF、TF标志 断点(CS,IP)入栈 取中断向量 进入中断服务程序 开中断 执行中断服务程序 Y
N
有NMI?

无 N

有INTR?

IF=1?
Y Y
TF= N 1? 取中断类型码
第8页 2012年6月11日星期一
第8章
8.2.2 中断处理
中断系统
1.中断的处理过程 ⑴关中断。目的:在现场保护过程中,CPU不应该 响应更高级的中断源申请。 ⑵保存断点和现场。即将现行状态字和断点地址相 继压入堆栈。目的:在中断处理完后返回主程序时, 恢复原程序运行状态。 ⑶开中断。目的:允许更高级中断请求能够及时得 到响应,实现中断嵌套。 ⑷转入中断服务程序。目的:完成的最终目的。 ⑸ 退出中断。返回到主程序的执行。
第20页 2012年6月11日星期一
第8章
8.3.4 软件中断
中断系统
软件中断有如下特点: 1.INT n 指令,中断类型码是 n。 2.不执行中断响应总线周期,不读取中断类型码。 3.软件中断不受IF的影响。 4.可进行中断嵌套,即可以响应非屏蔽中断;当被软 件中断调用的中断处理子程序使IF=1时,那么也可响 应屏蔽中断的高优先级请求。 5.软件中断没有随机性,这是因为软件中断是由程序 中的中断指令引起的,何时执行,是事先知道的,所 以软件中断失去了随机性。
第21页 2012年6月11日星期一
第8章
8.4 中断控制器8259A
一、引言
中断系统

第八章中断系统第九章DMA控制器

第八章中断系统第九章DMA控制器
2. IBM PC/XT系统保留的中断 8086CPU最多能处理256种不同的中断,其中5个保留
为CPU专用;一部分是由磁盘操作系统DOS保留为 系统使用,用户可以使用200个左右中断。
§8.5 IBM PC/XT的中断方式
第九章 DMA控制器
DMA:direct memory access
直接存储器访问技术,适合高速的数据交换
2. 硬件优先权排队电路
(1)中断优先权编码电路
若有8个中断源,当任意一个有中断请求时,通过或门, 即可有一个中断请求信号产生,能否送至CPU的中断请 求线,还要受比较器的控制。
(2)雏菊花环(Daisy Chain)式或称为链式优先权排队电 路
§8.3 中断优先权及多重中断
中断响应(来自CPU)
§8.3 中断优先权及多重中断
8.3.1 中断优先权
(2)移位法 XOR AL,AL IN AL,[20H] RCL AL, 1 JC PWF RCL AL, 1 JC DISS ……
;输入中断请求触发器的状态 ;外设A中断服务程序 ;外设B中断服务程序
§8.3 中断优先权及多重中断
8.3.1 中断优先权
§8.4 8086/8088的中断方式
3.中断向量表 o 每一种中断类型对应一个中断向量; o 每个中断向量占4个字节,前两个字节存放中断处 理子程序入口地址的偏移量(IP),后两个字节存放 中断处理子程序入口地址的段地址(CS); o 256个中断中:0-4为专用中断,5-31为系统保留 (21个),32以上共224个为用户自定义中断。
内部中断
INT n指令—类型为n的中断指令
软件中断 INT 3指令—断点中断指令 INT0指令—溢出中断指令
IRET指令—中断返回

微机原理习题答案8章

微机原理习题答案8章

第8章中断系统与可编程中断控制器8259A1.什么叫中断?8086微机系统中有哪几种不同类型的中断?答:在CPU执行程序的过程中,由于某个事件的发生,CPU暂停当前正在执行的程序,转去执行处理该事件的一个中断服务程序,待中断服务程序执行完成后,CPU再返回到原被中断的程序继续执行。

这个过程称为中断。

8086微机系统中有3种中断:1)外部可屏蔽中断。

2)外部不可屏蔽中断。

3)内部中断2.什么是中断类型?它有什么用处?答:通常用若干位二进制编码来给中断源编号,该编号称为中断类型号。

8086微处理器用8位二进制码表示一个中断类型,有256个不同的中断。

这些中断可以划分为内部中断、外部不可屏蔽中断、外部可屏蔽中断三类。

用处:使CPU识别中断源,从而能正确地转向该中断源对应的中断服务程序入口。

3.什么是中断嵌套?使用中断嵌套有什么好处?对于可屏蔽中断,实现中断嵌套的条件是什么?答:微处理器在处理低级别中断的过程中,如果出现了级别高的中断请求,微处理器停止执行低级中断的处理程序而去优先处理高级中断,等高级中断处理完毕后,再接着执行低级的未处理完的程序,这种中断处理方式成为中断嵌套。

使用中断嵌套的好处是能够提高中断响应的实时性。

对于某些对实时性要求较高的操作,必须赋予较高的优先级和采取中断嵌套的方式,才能保证系统能够及时响应该中断请求。

对于可屏蔽中断,实现中断嵌套的条件有:(1)微处理器处于中断允许状态(IF=1)(2)中断请求的优先级高于正在执行的中断处理程序的优先级。

(3)中断请求未被8259屏蔽。

(4)没有不可屏蔽中断请求和总线请求。

4.什么是中断向量?中断类型号为1FH的中断向量为2345H:1234H,画图说明它在中断向量表中的存放位置。

答:中断向量为每个中断服务子程序的入口地址,为32位(16位的偏移地址和16位的段地址),在中断向量表中占用4个地址单元。

在8086CPU组成的计算机系统中,采用最低的1024个地址单元(称为0页)来存储中断向量。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

② 专用硬件方式——可编程的中断控制器。采用可编 程中断控制器,是当前微型计算机系统中解决中断优先 权管理的常用办法。
如8259A,它具有8个优先权控制,级联后可扩展至64 级优先权控制,且每级中断都可设置为允许或屏蔽。
7.2 8086/8088的中断系统
1.中断分类
● 8086/8088CPU可以处理256种类型的中断源,这些中断源可分为 外部(硬件)中断和内部(软件)中断两大类。 内部中断:由执行指令引起 外部中断:由CPU得引脚线INTR、NMI引起。
2.中断向量表
● 在8086系统中,允许引入256种类型中断源(类型码为0~255), 相应有256个中断服务程序首址。存放中断地址的一段内存空间称中 断向量表。
7.2.1 中断指令
1、中断指令 格式:INT n 或 INT
;n=0~255,为中断类型码分别为 ;双/单字节指令
指令的操作: (SP) ←(SP)-2,((SP+1),(SP)) ←(FR) (IF) ←0,(TF) ← 0 (SP) ←(SP)-2,((SP+1),(SP)) ←(CS) (SP) ←(SP)-2,((SP+1),(SP)) ←(IP) (IP) ←(n×4) (CS) ←(n×4+2)
第7章 中断系统和中断控制器8259A
7.1 中断的基本概念
•中断:是指CPU在正常运行程序时,由于内部或外部事件 引起CPU暂时中止执行现行程序,转去执行请求CPU为其 服务的那个外设或事件的服务程序,待该服务程序执行完 后又返回到被中止的程序这样一个过程。
•中断源:能发出中断申请的外设或引起中断的原因。
7.1.2 中断处理过程
1.中断过程
● 对于不同的微机系统,CPU中断处理的具体过程不尽相同,但是一 个完整的中断基本过程应包括五个基本过程:


保护现场







断 响
断 处
断 返
开中断





中断处理
产指断触生令接发中或口器断电和CP信路中U确 最号有断引定高。一屏脚有的来个蔽。中那至中触每断个于断发个请中中请器中C自关保形求断P断 求 。动中护成U且 源完 断 现 中响优 。成 ; 场 断应先下 保 服;进级列 护 务入中 中 中工 断 程中断 断作 点 序断服 服 服: ; 入周务 务 务口期就 程 程地,是 序 序弹址过 结C出P程 构断U。 如执点图行,返回主程恢中关序复断。中现返断场回
1.能实现中断响应、中断服务和中断返回
2.能实现中断优先级排队
3.能实现中断嵌套
•中断技术的优点: 并行操作:指CPU和多个外设并行操作。 分时操作:指CPU可分时执行多个用户程序和多道作业。 实现实时处理、 故障处理。 基本功能调用:通过软件中断可实现DOS功能调用和基本BIOS 调用。 提高了CPU的利用效率。
7.2.1 中断指令
2、溢出中断指令 格式:INTO ;单字节指令
操作同INT n,n=4. 用于代符号数加减后溢出产生的中断. 通常放在一条算术运算指令后面.
7.2.1 中断指令
3、中断返回指令 格式:IRET
指令的操作: (IP) ← ((SP+1),(SP) (SP) ←(SP)+2 (CS) ← ((SP+1),(SP) (SP) ←(SP)+2 (FR) ← ((SP+1),(SP) (SP) ←(SP)+2
注意入 栈和出 栈的顺
序!!
低 IP
CS
FR 高
7.2.2 中断分类
内部中断
●8086/8088中的各种中断的响应和处理过程是不相同的。主要 区别在于如何获取相应的中断类型码。
●对于专用中断,中断类型码是自动形成的。 几种类型码为:类型0、1、3、4
除法错误:单除步数中为断断:点T中F=断1:,与单步溢出中断:OF为
1.NMI
● CPU采样NMI引脚的中断请求时,自动提供中断类型号2,然 后根据中断类型号,查找中断向量表指针,其后的处理与内部中 断一样。NMI上的请求信号有效宽度要大于2个时钟周期.
2.INTR
● IF=1时,INTR引脚上由中断请求信号,CPU响应,从而进入中断响应 周期。 ● STI,开中断,CLI,关中断.
7.1.3 中断优先权
(1) 软件查询方式 ●软件查询优先方式是最简单的中断优先处理方式。图6.5显示 了采用软件查询方式的接口电路。
保留现场
A申请服务? N
B申请服务?
Y
外设A中断服务程序 Y
பைடு நூலகம்
N C申请服务?
外设B中断服务程序 Y
N
外设C中断服务程序
恢复现场 软件查询方式流程图
(2)硬件优先权排队电路
① 简单硬件方式——中断优先权编码链法或链式优先 权排队电路。
中断优先权编码电路主要由硬件编码器和比较器组成。 由编码器送出优先权最高的编码,由此编码获得相应 的中断服务程序入口地址。由比较器判别只有比当前 优先权高的中断请求才能送到CPU引脚。
链式优先权排队电路由硬件逻辑电路代替查询程序。 各中断源通过一个特定的信号串行连接成链。无中断 请求时,该信号可串行通过;链中某个中断源由中断 请求,CPU响应后,该信号在中断源出截止,只有该 中断源前的中断源可以打断CPU的服务程序。即:排 在最前面的中断源为优先权最高的,排在最后面的为 优先权最低。
中断源
● 引起中断的事件称为中断源,通常中断源有以下几种:
(1) 输入、输出设备: 如键盘、显示器和打印机等; (2) 数据通道: 如磁带等; (3) 实时控制过程中的各种参数; (4) 故障源: 如掉电保护等; (5) 控制系统的现场测试信号以及软件中断。
● 为了满足上述各种条件下的要求,中断系统应具有以下功能
0或商超过自寄动存产器生中单断步类中似断。。用在调1时,执行INTO
表达范一围般。用在调试试程程序序中中。。
进入。
●对于INT n指令,其类型码为指令中给定的n。
溢出中断:OF为1时,执行INTO进入。
外部中断——硬中断
● 8086/8088CPU为外部设备提供了两条硬件中断信号线, 即NMI和INTR中断请求信号。
8086系统内存地址的一些专用区域
● 0000~003FFH 1KB 空间用于存放中断向量表,可存放256个中断
服务程序的入口地址,每个地址占4字节。
相关文档
最新文档