中断系统
合集下载
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中中断系统的应用
单片机教程 第6章-中断系统

TCON位功能:
TF0/TF1:定时器溢出中断申请标志位: =0:定时器未溢出; =1:定时器溢出申请中断,进中断后自动清零。
③ IE1 —— 外中断中断请求标志 当P3.3引脚信号有效时,IE1=1 ④ IE0 —— 外中断中断请求标志 当P3.2引脚信号有效时,IE0=1
IE0/IE1:外部中断申请标志位: =0:没有外部中断申请; =1:有外部中断申请。
=1:在INT0/INT1端申请中断的信号负跳变有效.
6.2
51单片机的中断系统
3、串行口中断设定
串行控制寄存器SCON控制字,字节地址:98H
SCON 位名称 位地址 功能 D7 D6 — — — — — — D5 — — — D4 — — — D3 — — — D2 — — — D1 TI 99H 串行发送 中断标志 D0 RI 98H 串行接收 中断标志
6.1
中断的概念
6.1.3 中断的分类 可分为三类: * 可屏蔽中断:由CPU的可屏蔽中断引脚INT引起的 中断。 * 非屏蔽中断:由CPU的非屏蔽中断引脚NMI引起的 中断(8086CPU)。 * 软件中断:由中断指令引起的中断(8086CPU)。 • 51单片机的中断可以分为:
①外部中断,由外部可屏蔽中断和外部计数器中断组成; ②内部中断,由内部定时器、串口传输中断等组成。
输入引脚。允许用户设定外部中断源以低电平或 者是负跳变方式触发。
6.2
51单片机的中断系统
②定时器溢出中断源:内部中断,51内部有两
个16位定时/计数器,它们由内部定时脉冲(主脉 冲12分频)或外部引脚T0、T1输入的外部计数脉 冲计数。当计数值溢出时,产生中断请求。这两 个16位定时/计数器的初值可由用户设定。
微机原理与接口技术——中断系统

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)
第5章 中断系统

5.1 中断的概念 5.2 8051的中断源和中断控制寄存器 5.3 中断处理的过程 5.4 中断响应等待时间 5.5 C51中断服务函数 5.6 中断系统的应用 5.7 实践训练—键控彩灯 5.8 习题
计算机与外设交换信息时,慢速工作的外设与快速工作的CPU之间形成一个很大的矛盾。 例如:计算机与打印机相连接,CPU处理和传送字符的速度是微秒级的,而打印机打印字符 的速度远比CPU慢。CPU不得不花大量时间等待和查询打印机打印字符。中断就是为解决这 类问题而提出的。
02
02
Hale Waihona Puke 023.中断允许控制寄存器IE CPU对中断系统的所有中断以及某个中断源的开放和屏蔽是由中断允许控制寄存器IE控制 的。IE的状态可通过程序由软件设定。某位设定为1,相应的中断源中断允许;某位设定为0, 相应的中断源中断屏蔽。CPU复位时,IE各位清0,禁止所有中断。IE的结构、位名称和位地址 见表5-3。
03
4.中断返回 中断服务程序的最后一条指令必须是中断返回指令RETI。RETI指令能使CPU结束中断服务程序的执 行,返回到曾经被中断过的程序处,继续执行主程序。RETI指令的具体功能如下。 (1)恢复断点地址 将中断响应时压入堆栈保存的断点地址从栈顶弹出送回PC,CPU从原来中断的地方继续执行程序。 注意,不能用RET指令代替RETI指令,因为用RET指令虽然也能控制PC返回到原来中断的地方,但 RET指令没有清0中断优先级状态触发器的功能,中断控制系统会认为中断仍在进行,其后果是与此同级 的中断请求将不被响应。 若用户在中断服务程序中进行了入栈操作,则在RETI指令执行前应进行相应的出栈操作,使栈顶指 针SP与保护断点后的值相同,即在中断服务程序中PUSH指令与POP指令必须成对使用,否则不能正确 返回断点。 (2)开放同级和低级中断 上述中断响应过程大部分操作是CPU自动完成的,用户只需要了解来龙去脉。而用户需要做的事情是 编制中断服务程序,并在此之前完成中断初始化,即设置堆栈,定义外中断触发方式,定义中断优先级, 开放中断等。
计算机与外设交换信息时,慢速工作的外设与快速工作的CPU之间形成一个很大的矛盾。 例如:计算机与打印机相连接,CPU处理和传送字符的速度是微秒级的,而打印机打印字符 的速度远比CPU慢。CPU不得不花大量时间等待和查询打印机打印字符。中断就是为解决这 类问题而提出的。
02
02
Hale Waihona Puke 023.中断允许控制寄存器IE CPU对中断系统的所有中断以及某个中断源的开放和屏蔽是由中断允许控制寄存器IE控制 的。IE的状态可通过程序由软件设定。某位设定为1,相应的中断源中断允许;某位设定为0, 相应的中断源中断屏蔽。CPU复位时,IE各位清0,禁止所有中断。IE的结构、位名称和位地址 见表5-3。
03
4.中断返回 中断服务程序的最后一条指令必须是中断返回指令RETI。RETI指令能使CPU结束中断服务程序的执 行,返回到曾经被中断过的程序处,继续执行主程序。RETI指令的具体功能如下。 (1)恢复断点地址 将中断响应时压入堆栈保存的断点地址从栈顶弹出送回PC,CPU从原来中断的地方继续执行程序。 注意,不能用RET指令代替RETI指令,因为用RET指令虽然也能控制PC返回到原来中断的地方,但 RET指令没有清0中断优先级状态触发器的功能,中断控制系统会认为中断仍在进行,其后果是与此同级 的中断请求将不被响应。 若用户在中断服务程序中进行了入栈操作,则在RETI指令执行前应进行相应的出栈操作,使栈顶指 针SP与保护断点后的值相同,即在中断服务程序中PUSH指令与POP指令必须成对使用,否则不能正确 返回断点。 (2)开放同级和低级中断 上述中断响应过程大部分操作是CPU自动完成的,用户只需要了解来龙去脉。而用户需要做的事情是 编制中断服务程序,并在此之前完成中断初始化,即设置堆栈,定义外中断触发方式,定义中断优先级, 开放中断等。
中断系统

2)中断服务程序 保护现场。 若为电平触发的外部中断,应有中断信号撤 除操作 中断服务操作 恢复现场
PX 0
INT0
0 1
1
IT0
IE0
≥1
EX 0
EA
1 0
高级中断 请求
ET0
PT0
1 0 中断源
T0
0 1
TF0
1
IT1
≥1
IE1
EX 1
PX 1
1 0
中断入口
INT1
ET1
TF1
PT1
1 0
低级中断 请求
T1
TI RI
≥1
ES
RI/TI
PS
1 0
中断源
中断入口
图5.1 MCS-51单片机中断系统结构 MCS-51单片机中断系统结构
中断系统应用要解决的问题包括电路连接 和应用程序设计两部分。 和应用程序设计两部分。
对于外部中断, 对于外部中断,要合理设计外设发生的中 断请求信号与引脚之间的连接电路, 断请求信号与引脚之间的连接电路,使其电平 高低和持续时间符合要求
程序设计
1)主程序部分 如为外部中断,定义触发方式 定义中断优先级(给IP赋值) 给IE赋值,开放中断 安排好等待中断过程中主程序应做的操作
中断系统的功能
计算机系统中,用于实现中断功能的硬件和 软件的集合,称为中断系统。 中断系统应解决如下问题: 中断系统应解决如下问题:
1. 中断请求信号的产生; 2. CPU如何响应? 3. 中断优先权问题; 4. 中断的具体服务; 5. 中断服务完毕,如何返回原程序?
5.1.2 MCS-51单片机的中断系统
IP
PS PT1 PX1
中断系统中断概念一中断的概念中断是指在计算机执行

中断源
入口地址
INT0
0003H
T0
000BH
INT1
0013H
T1
001BH
串行口
0023H
(5)中断返回
S(E串ETM串串5(1.FEXSO)1行行行用10T:)V串:B口 口 口字EI行定自PEX节,T口#1时然00操:外中8/优计作HR断部先数指X允中级D器令00许断00:(T22控0133),中外HH制T断部位X标D中志(断位1)中断允许控制位
5.5 中断优先级控制 1、中断优先级寄存器
IP
BCH BCH BBH BAH B9H B8H
B8H X X X PS PT1 PX1 PT0 PX0
高优先级
MCS-51系列单片机有两级中断级
低优先级
PX0,PT0,PX1,PT1,PS分别为INT0,T0,INT1,T1 串行口中断优先级控制位,当相应位为0时为低优先级,相应 为1时为高优先级。
例5 .2 要将T1定时器定义为最高优先级,其他中断定义为低 优先级,如何设置IP?
(1M M)用OO字VV 节AIE操8,H作,##指88E令EHH E串串 例串P中IT串(TCTRRTUP0行行:行断行1000US:)::口 口口 源 口HE响外置TI定定应N1部相PT时时,中ES_中应//TWT断计计断2R的0:后数数:X定0优D触,器器00入0时先000(发于TT口222计级00333)方中地运 运数HHH触式断T址行行器发X选返控控TD器0择回制制(,状T前位位1)态,,T为2应中1该断撤控销制中位断请求。 (2S)E用T位B E操A作 P中生S…ITUE1断的…TS:B是 事 .H外E指件部TP在,1S中W计待断算处0机理触执完发行毕方程后式序,选的再择过返程回当来中执,行当原外来部被设中备断发的生程某序一。事件时,请求CPU处时,CPU暂时中断当前程序的执行,转去处理所发 SSSEEETTTBBB EEETTX010 EI(P先为ST中S1中生N0EXES假4级了断断的T0TT:)1串设,BB。 使 处 是 事转行允PEE这理指件T入TA口许些过在,00相中,打单程计待应断P开0元可算处X0的允0I的分机理01N0中B许,1T值为执完H31断控PH在三行毕及T服制1中个程后定,务位断阶序,时P程程段的再器S序分序:过返T入0别中中程回,T口为不断当来1,I禁被响中执NT止冲应,行0其,掉,当原他T,中外来0中在断部被,断进处设中IN,入理备断T试1中,发的设,断中生程置T1服断某序IE串务返一。. 行程回事口序。件中前时断,,优要请先将求级有C控P关U制寄处位存时,器,当保C相P护U应起暂位来时为。中0断时当为前低程优序先的级执,行相,应转为去1时处为理高所优发
第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章 中断系统

中断执行示意图如下:
第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
一、引言
中断系统
第五章 中断系统

四、中断系统的功能 一般来说,一个中断系统具有以下功能: (一)实现中断及返回 当某中断源发出中断请求后,CPU应决定是否响应这个中断请求,如当前正 在执行更重要的工作可暂时不响应中断,若响应这个中断请求,CPU在当前指令 执行完后,就要保护断点地址和现场(即下条指令地址和相关寄存器内容),以便 执行完中断服务程序后能正确返回原处执行,然后转到需要处理的中断服务程序 的人口地址,去执行中断服务程序,当中断服务程序执行完毕再恢复现场和断点 ,去继续执行主程序。 (二)实现优先级排队 当计算机带有多个中断源时,可能会出现两个或两个以上中断源同时向CPU提 出中断请求的情况。这时CPU应能够根据事先确定的中断源的优先级别来先响应 高优先级的中断 并为它服务,然后再响应较低优先级的中断请求。 (三)实现中断嵌套 当CPU正在响应某一中断源的中断请求时,又有新的中断源发出请求,如果 新的请求的优先级别高于正在执行的中断源的优先级,则CPU暂停现行的服务程 序,转去执行更高级别的中断源的服务程序,执行完毕后再回到被中断的较低中 断源的服务程序继续执行,即实现了中断嵌套。若新的中断源的优先级别低于或 是等于正执行的中断源,则CPU不响应这个请求,直到正在处理的中断服务程序 执行完毕后,才去处理新的中断请求。
三、中断的分类 按中断产生的位置,中断可分为: (1)外部中断,或称外部硬件实时中断,它是由外部送到CPU的某一特定引脚 上产生的。 (2)内部中断,或称软件指令中断,是为了处理程序运行过程中发生的一些意 外情况或调试程序方便而提供的中断。 按接受中断的方式,中断可分为: (1)可屏蔽中断,可以通过指令使CPU根据具体情况决定是否接受中断请求。 (2)非屏蔽中断,只要中断源提出请求,CPU就必须响应,主要用于一些紧急 情况的处理,如掉电等。 以上从不同的角度对中断进行了分类,对于某一种类型的计算机可能只具备 其中的某几种方式,例如MCS—51就不具备非屏蔽中断方式。
第6章 中断系统

中断系统的功能
CPU响应中断时,会停止当前执行程序,转去执行中断处 理程序,原程序被打断的地方称为“断点”。
断点地址是指中断处理程序结束后,返回原程序恢复执 行的第一条指令的地址,又称“返回地址”。
现场是指进入中断服务程序之前CPU各个寄存器的状态。
正常程序 CS : IP 断点 CS : IP+1 继续执行 中断服务程序
中断系统的功能
2. 链式优先权排队电路(应答方式)
外设1
+5V D7 ~ D0 INTA INTR IOR IOW
外设2
IEI 接口2 IEO
SEL1 SEL2
外设3
IEI 接口3 IEO
SEL3
IEI 接口1 IEO
※ 电路说明
① 每个接口有一个中断允许输入IEI和中断允许输出IEO, 只有IEI为高电平时才允许该接口芯片发中断请求; ② IEO=IEI•INT INT表示该设备有中断请求; ③ 每个接口芯片的中断请求输出为OC门,具有负逻辑的 “线或”关系; ④ 响应中断时由INTA从接口读取中断矢量。 计算机原理讲义
中断 处理
返回断点
3. 中断服务完成时将中断申请信号撤销 4. 中断服务完成后恢复现场和断点,返回原程序 计算机原理讲义
中断系统的功能
(二)对中断进行控制
1. 对中断申请进行控制 例1 一个输入设备的中断接口电路
三 态 缓冲器 D7~D0 INTR IOW A15 ~ A0 IOR INTA 地址 译码 器 三 态 缓冲器 B Q R C D 中断类型 码(0FH) D7~D0
中断系统
第六章 中断系统
计算机原理讲义
中断的作用
第6.1节 计算机中断系统
单片机-05-中断系统

单片机原理及接口 技术
中断系统
一、中断系统
1. 中断的概念 举例:某同学正在教室写作业,忽然被人叫出去, 回来后,继续写作业。这就是生活中中断的例子。
与上对比,单片机中也有同样的问题。CPU正
在执行原程序,突然,被意外事情打断,转去执行
新程序。CPU执行新程序结束后,又回到原程序中
继续执行。这样的过程就叫
Here: SJMP Here
ORG 0200H PINT0:CPL P1.0
RETI
;返回主程序
例5-4、出租车计程:设车轮每转产生一个负脉冲,从外部中断INT0 (P3.2)引脚输入,行驶里程为轮胎周长×运转圈数,设轮胎周长2m,试通 过编程实时计算出租车行驶里程(m),数据存入32H, 31H, 30H中。
ORG 0000H LJMP START ORG 0200H ADDC A, POP PSW 30H POP ACC RETI 32H
ORG 0003H
LJMP INT0 ORG 0100H
INT0: PUSH ACC
PUSH PSW MOV A,
MOV 32H, A
START: MOV SP, #60H
ORG 0000H LJMP MAIN ORG 000BH LJMP INSE1 ORG 1000H MAIN: MOV SP,#60H MOV TL0,#0CH MOV TH0,#0F0H MOV TMOD,#00H SETB TR0 SETB ET0
INSE1: MOV TL0,#0CH MOV TH0,#0F0H
该位是“1”时,为高级优先级
该位是“ 0”时,为低级优先级
同一级中的5个中断源的优先顺序是: /INT0中断 T0溢出中断 /INT1中断 T1溢出中断 出厂前已由厂家固化顺序 ——事先约定 高
中断系统
一、中断系统
1. 中断的概念 举例:某同学正在教室写作业,忽然被人叫出去, 回来后,继续写作业。这就是生活中中断的例子。
与上对比,单片机中也有同样的问题。CPU正
在执行原程序,突然,被意外事情打断,转去执行
新程序。CPU执行新程序结束后,又回到原程序中
继续执行。这样的过程就叫
Here: SJMP Here
ORG 0200H PINT0:CPL P1.0
RETI
;返回主程序
例5-4、出租车计程:设车轮每转产生一个负脉冲,从外部中断INT0 (P3.2)引脚输入,行驶里程为轮胎周长×运转圈数,设轮胎周长2m,试通 过编程实时计算出租车行驶里程(m),数据存入32H, 31H, 30H中。
ORG 0000H LJMP START ORG 0200H ADDC A, POP PSW 30H POP ACC RETI 32H
ORG 0003H
LJMP INT0 ORG 0100H
INT0: PUSH ACC
PUSH PSW MOV A,
MOV 32H, A
START: MOV SP, #60H
ORG 0000H LJMP MAIN ORG 000BH LJMP INSE1 ORG 1000H MAIN: MOV SP,#60H MOV TL0,#0CH MOV TH0,#0F0H MOV TMOD,#00H SETB TR0 SETB ET0
INSE1: MOV TL0,#0CH MOV TH0,#0F0H
该位是“1”时,为高级优先级
该位是“ 0”时,为低级优先级
同一级中的5个中断源的优先顺序是: /INT0中断 T0溢出中断 /INT1中断 T1溢出中断 出厂前已由厂家固化顺序 ——事先约定 高
中断系统

第7章 中断系统
7.1 概述 7.2 可编程中断控制器8259A 7.3 PCI中断 7.4 串行中断
7.1
7.1 中断系统概述
7.1.1 中断的基本概念 7.1.2 现代微机中的中断类型 7.1.3 现代微机中的中断处理 7.1.4 中断向量的修改与设置
7.1.1
7.1.1 中断的基本概念
2、外部硬件不可屏蔽中断
NMI往往用于处理必须立即响应的外部事 件或重要的外部事件,比如电源故障和存储器 读数据出现奇偶错等。
这种中断不受 IF标志位影响,它是不可 屏蔽的
3、软件中断
软件中断指令如INT 3,INT n,INTO和 BOUND等引起的中断。
这些软件中断指令在执行时,不需要中断 识别总线周期,它们的中断类型号是固定的,可 以立即启动相应的中断处理程序。
✓ 向量中断: – 是由中断向量来指示中断服务程序的入口地址。例 如,对可屏蔽中断是在CPU响应中断后,发出中断 应答INTA时,由中断控制器通过数据总线返回到 CPU的中断类型号来确定中断源的。
✓ 查询中断: – 是采用软件或硬件(串行顺序链电路)查询技术来 确定发出中断请求的中断源。
7.1.3现代微机中的中断处理
CPU在执行完每条指令后去检查“中断请求” 输入线,看是否有外部发来的“中断请求”。
中断判优
✓ A)可屏蔽中断请求由接口电路向8259A发中断请 求,经8259A处理之后通过INTR引脚向CPU发请求 信号,并且还要提供中断类型号。
– 对外部的中断申请有权决定是否予以响应: » 若允许申请,中断程序开始处用STI指令打 开中断; » 若不允许,则用CLI指令关闭中断。
4.端口地址选择
➢ 4. 端口地址选择信号引脚: ✓ (1)#CS:片选信号,该引脚为低电平时, 8259A才被选中。 ✓ (2)A0:选内部端口,直接接地址总线中的 某一位。 – A0有两个状态(0、1),因此它将 8259A的编程地址分为两种: »A0=1为奇地址, »A0=0为偶地址
7.1 概述 7.2 可编程中断控制器8259A 7.3 PCI中断 7.4 串行中断
7.1
7.1 中断系统概述
7.1.1 中断的基本概念 7.1.2 现代微机中的中断类型 7.1.3 现代微机中的中断处理 7.1.4 中断向量的修改与设置
7.1.1
7.1.1 中断的基本概念
2、外部硬件不可屏蔽中断
NMI往往用于处理必须立即响应的外部事 件或重要的外部事件,比如电源故障和存储器 读数据出现奇偶错等。
这种中断不受 IF标志位影响,它是不可 屏蔽的
3、软件中断
软件中断指令如INT 3,INT n,INTO和 BOUND等引起的中断。
这些软件中断指令在执行时,不需要中断 识别总线周期,它们的中断类型号是固定的,可 以立即启动相应的中断处理程序。
✓ 向量中断: – 是由中断向量来指示中断服务程序的入口地址。例 如,对可屏蔽中断是在CPU响应中断后,发出中断 应答INTA时,由中断控制器通过数据总线返回到 CPU的中断类型号来确定中断源的。
✓ 查询中断: – 是采用软件或硬件(串行顺序链电路)查询技术来 确定发出中断请求的中断源。
7.1.3现代微机中的中断处理
CPU在执行完每条指令后去检查“中断请求” 输入线,看是否有外部发来的“中断请求”。
中断判优
✓ A)可屏蔽中断请求由接口电路向8259A发中断请 求,经8259A处理之后通过INTR引脚向CPU发请求 信号,并且还要提供中断类型号。
– 对外部的中断申请有权决定是否予以响应: » 若允许申请,中断程序开始处用STI指令打 开中断; » 若不允许,则用CLI指令关闭中断。
4.端口地址选择
➢ 4. 端口地址选择信号引脚: ✓ (1)#CS:片选信号,该引脚为低电平时, 8259A才被选中。 ✓ (2)A0:选内部端口,直接接地址总线中的 某一位。 – A0有两个状态(0、1),因此它将 8259A的编程地址分为两种: »A0=1为奇地址, »A0=0为偶地址
中断系统及中断控制器

感谢您的观看
详细描述
根据来源不同,中断可分为硬件中断和软件中断。硬件 中断是由硬件设备产生的,如键盘输入、时钟中断等; 软件中断则是由程序中的特定指令或异常条件触发的。 根据是否可屏蔽,中断可分为可屏蔽中断和不可屏蔽中 断。可屏蔽中断可以被允许或禁止,而不可屏蔽中断则 无法被禁止。根据优先级是否可变,中断可分为优先级 可变中断和优先级固定中断。优先级可变中断的优先级 可以在运行时动态改变,而优先级固定中断的优先级是 固定的。
中断优先级通常由硬件设备或操作系统进行设置和管理,以确保系统的正 常运行。
中断优先级的管理对于系统的性能和稳定性至关重要,不当的设置可能导 致系统崩溃或性能下降。
中断向量表
中断向量表是计算机系统中用于映射中断信号和处理 程序的表格,它包含了不同中断的地址信息,以便在
中断发生时快速找到相应的处理程序。
流量控制
中断在网络通信和可靠性。
05 中断技术的发展趋势
可编程中断控制器的发展
早期中断控制器
采用硬件连线方式实现中断优先级分配,功能较为简单。
可编程中断控制器
允许通过软件编程实现中断优先级、向量表等配置,提高了中断控制器的灵活性和可扩展 性。
资源管理
中断用于实时系统中的资源管理,如内存分配、设备驱动等,确 保资源的高效利用和合理分配。
中断在网络通信中的应用
数据传输
中断在网络通信中用于数据传输控制,如 TCP/IP协议中的数据包接收和发送,确保数 据的可靠传输。
事件处理
中断用于处理网络通信中的事件,如连接建立、数 据包丢失等,实现快速响应和恢复。
可编程中断控制器的发展趋势
随着技术的进步,可编程中断控制器将进一步集成更多的功能,如中断共享、中断嵌套等 ,以满足复杂系统的需求。
详细描述
根据来源不同,中断可分为硬件中断和软件中断。硬件 中断是由硬件设备产生的,如键盘输入、时钟中断等; 软件中断则是由程序中的特定指令或异常条件触发的。 根据是否可屏蔽,中断可分为可屏蔽中断和不可屏蔽中 断。可屏蔽中断可以被允许或禁止,而不可屏蔽中断则 无法被禁止。根据优先级是否可变,中断可分为优先级 可变中断和优先级固定中断。优先级可变中断的优先级 可以在运行时动态改变,而优先级固定中断的优先级是 固定的。
中断优先级通常由硬件设备或操作系统进行设置和管理,以确保系统的正 常运行。
中断优先级的管理对于系统的性能和稳定性至关重要,不当的设置可能导 致系统崩溃或性能下降。
中断向量表
中断向量表是计算机系统中用于映射中断信号和处理 程序的表格,它包含了不同中断的地址信息,以便在
中断发生时快速找到相应的处理程序。
流量控制
中断在网络通信和可靠性。
05 中断技术的发展趋势
可编程中断控制器的发展
早期中断控制器
采用硬件连线方式实现中断优先级分配,功能较为简单。
可编程中断控制器
允许通过软件编程实现中断优先级、向量表等配置,提高了中断控制器的灵活性和可扩展 性。
资源管理
中断用于实时系统中的资源管理,如内存分配、设备驱动等,确 保资源的高效利用和合理分配。
中断在网络通信中的应用
数据传输
中断在网络通信中用于数据传输控制,如 TCP/IP协议中的数据包接收和发送,确保数 据的可靠传输。
事件处理
中断用于处理网络通信中的事件,如连接建立、数 据包丢失等,实现快速响应和恢复。
可编程中断控制器的发展趋势
随着技术的进步,可编程中断控制器将进一步集成更多的功能,如中断共享、中断嵌套等 ,以满足复杂系统的需求。
微机原理--第八章-中断系统

裁决器
0
IR6
0
IR7
选 CS 译 码
RD
WR
INTA INT
ICW1 芯片控制 A0
A0
1 × I3 I4 0 1 0 0 1 0 1 0 0 1
ICW2 中断类型号 1
ICW3 主从片连接关系
1 ICW4 方式控制
1
OCW1 中断屏蔽寄存器 IMR
00
0
SP/EN
CA0
OCW2 优先级设置、发EOI
上有中断申请,则将IRR相应位置1;
总线
D0 ~ D7 A0
A5 ~ A9
IOR IOW INTA INTR
数据线 D0 ~ D7
A0
ISR 0
当前 0
中断 服务
• 非屏蔽中断 – 由NMI引脚引起的中断,称非屏蔽中断。 – 当NMI引脚上产生上升沿信号,CPU必响应此中断请 求,即NMI引脚上的中断请求不受IF标志的控制, – IF不能屏蔽NMI引脚上的中断请求。
8086/8088CPU的中断分类图
中断源
外部中断 内部中断
非屏蔽中断 可屏蔽中断 内部硬件中断
SP/EN CA0 CA1 CA2
GND
+ 5V
电子钟时间基准
键盘 保留 串 口2 串 口1 硬盘 软盘 打印机
用于多片 8259A
级连情况
7.3.4 8259A的控制字
8259A中断控制器
处理部分
0
ISR 0
当前 0
中断 0
服务 0
寄存器
0 0
0
IRR
中断申请
0 0
寄存器 0
0
PR
0
优先级
中断系统

在另外的新型号中,PIC16F870单片机的芯片内部集成了10个外围 设备模块, PIC16F871单片机的芯片内部集成了13个外围设备模 块, PIC16F872单片机的芯片内部也集成了10个外围设备模块(比 PIC16F870多了1个USART模块,少了一个SSP模块)。而该公司早 期生产的PIC12CXX和PIC16C5X系列不具备中断功能。 这些外围设备模块在投入工作时以及在工作过程中,都或多 或少的需要CPU参与控制、协调或交换数据等各种服务工作。外 围设备模块的数量和种类如此的多,而CPU只有一个;各个外围 设备模块不仅工作速度不同,而且对于时间上轻重缓急程度要求 也不同,他们在工作过程中需要CPU参与的程度也不同。那么, 一个CPU如何“照顾”得过来这样多的外围设备模块呢?怎样才 能保障单片机内部的各个部分运行得协调和高效呢?在实际工作 中这两个问题都得到了很好的解决。解决这些问题基于2个条件: 一个是CPU的运行速度非常高,而各个外围设备模块的工作速度 却非常低,况且这些外围设备模块也不都是频繁的要求CPU对其 服务;二是采取一种让众多外围设备模块分享一个CPU,并且能 够及时得到CPU服务的调速方法——中断。
CCPIF CCPIE
TMR2IF TMR2IE TMR1IF TMR1IE GIE
中断源第二梯队 (d) PIC16F871中断逻辑
中断源第一梯队
EEIF EEIE
ADIF ADIE RCIF RCIE TXIF TXIE T0IF T0IE INTF INTE RBIF RBIE PEIE CCPIF CCPIE TMR2IF TMR2IE TMR1IF TMR1IE GIE 中断CPU当 前的程序 唤醒CPU(如果 处于模式)
在上述的9个阶段中,第1、2、3和9阶段是由硬件自动实现的, 而第4、5、6、7、8阶段则是用户软件完成的。 CPU相应中断后转入中断服务子程序的处理方法,欲“CPU 汇编语言程序设计基础”部分中讲道德子程序条用的处理过程有 类似之处,都需要在跳转时保护现场和返回时恢复现场。但是, 应该说中断转子程序的情况更为复杂一些。原因分析如下,调用 子程序的指令是程序设计者预先安排的,也就是说,主程序执行 到何处发生到子程序的跳转是可以预知的。于是,保护现场和恢 复现场的工作,既可以安排在主程序内,也可以放到子程序中去 完成。并且需要保护的寄存器的数量也可以视跳转到子程序的时 机而进行适当的减少。而在出程序执行过程中何时发生中断,或 者说,主程序执行到何处会发生到中断服务子程序的跳转完全是 随机的。于是,保护现场和恢复现场的任务,只能是放到中断服 务子程序中去实现。并且由于跳转到子程序的时机不可预料,因 此凡是主程序中用到过的和子程序中也将会用到(或影响到)的寄 存器,原则上都需要保护。
第四章中断系统

中断源 中断标志 中断允许 中断优先级 MCS-51中断系统结构 中断寄存器
一、中断源和中断请求标志
8051单片机有5个中断请求源:
▪ 外部输入中断源INT0(P3.2) 或
▪ 外部输入中断源INT1(P3.3)
或
▪ 片内定时器T0的溢出
▪ 片内定时器T1的溢出 ▪ 片内串行口发送或接收中断源
(2)中断服务程序入口地址(也称为中断向量)由硬件 决定,与CPU类型有关,不能更改。而子程序入口地 址由用户安排。
(3) 子程序中可以任意调用另一子程序,但中断有优先 级,同级或低级中断不能打断正在执行的同级或更高优 先级中断服务程序。
(4) 尽管子程序返回指令RET和中断返回指令RETI均会 将栈顶两个字节信息装入PC,恢复断点,但RETI还清 除相应中断优先级触发器,因此中断返回指令不可用子 程序返回指令RET代替。
INT0 INT1
单片机 T0 T1
串行口
MCS-51的中断系统——中断标 志
中断源
中断标志位
CPU
INT0
IE0
T0
TF0
主
INT1
IE1
程 序பைடு நூலகம்
T1
TF1
串口
TI
RI
▪ 每一个中断源都有相应的中断标志位;
▪ 某一个中断源申请中断,相应中断标志位置1。
MCS-51的中断系统——中断允许
中断源
中断标志位 中断允许
• IE0:外部中断0中断标志。其操作功能与IE1 相同。
• IT0:外中断0触发方式控制位。其操作功能与 IT1相同。
SCON寄存器——串行口控制寄存 器
SCON
76 5 4
3
一、中断源和中断请求标志
8051单片机有5个中断请求源:
▪ 外部输入中断源INT0(P3.2) 或
▪ 外部输入中断源INT1(P3.3)
或
▪ 片内定时器T0的溢出
▪ 片内定时器T1的溢出 ▪ 片内串行口发送或接收中断源
(2)中断服务程序入口地址(也称为中断向量)由硬件 决定,与CPU类型有关,不能更改。而子程序入口地 址由用户安排。
(3) 子程序中可以任意调用另一子程序,但中断有优先 级,同级或低级中断不能打断正在执行的同级或更高优 先级中断服务程序。
(4) 尽管子程序返回指令RET和中断返回指令RETI均会 将栈顶两个字节信息装入PC,恢复断点,但RETI还清 除相应中断优先级触发器,因此中断返回指令不可用子 程序返回指令RET代替。
INT0 INT1
单片机 T0 T1
串行口
MCS-51的中断系统——中断标 志
中断源
中断标志位
CPU
INT0
IE0
T0
TF0
主
INT1
IE1
程 序பைடு நூலகம்
T1
TF1
串口
TI
RI
▪ 每一个中断源都有相应的中断标志位;
▪ 某一个中断源申请中断,相应中断标志位置1。
MCS-51的中断系统——中断允许
中断源
中断标志位 中断允许
• IE0:外部中断0中断标志。其操作功能与IE1 相同。
• IT0:外中断0触发方式控制位。其操作功能与 IT1相同。
SCON寄存器——串行口控制寄存 器
SCON
76 5 4
3
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
返回
20:56
单片机原理及接口技术
§5.1.4 中断传送方式
• 当CPU正在处理某事件的时候,外部发生的 某一事件请求CPU迅速去处理,于是CPU暂 时中止当前的工作,转去处理所发生的事件。 中断服务处理完该事件后,再返回到原来被 中止的地方继续原来的工作,这样的过程称 为中断。
中断流程如图5-2所示。
PX0
中断优先级寄存器IP各控制位的含义
返回
单片机原理及接口技术
各控制位的含义 1、TF1:定时器/计数器T1溢出中断请求标志位。
当启动T1计数后,T1从初值开始加1计数,计数器最高位产生
溢出时,由硬件使TF1置1,向CPU发出中断请求。当CPU响应
中断时,硬件自动对TF1清0。
2、TF0:定时器/计数器T0溢出中断请求标志位。含义与TF1同。 3、IE1:外部中断1的中断请求标志。 INT1(P3.3)。 当检测到外部中断引脚1 上存在有效的中断请求信号时,由硬 件使IE1置1。
返回
20:56
单片机原理及接口技术
§5.3.2
89C51中断源
• 一、89C51中断系统的五个中断源 • 二、通常情况的中断源
返回
20:56
单片机原理及接口技术
一、89C51中断系统的五个中断源
1、INT0——外部中断0请求,低电平有效。通过P3.2引脚 输入。 2、INT1——外部中断1请求,低电平有效。通过P3.3引脚 输入。
第五章
• • • • • • • §5.1 §5.2 §5.3 §5.4 §5.5 §5.6 §5.7
中断系统
微机的输入/输出方式 中断的概念 89C51中断系统结构及中断控制 中断处理过程 外部中断扩展方法 中断程序举例 思考题与习题
返回
20:56
单片机原理及接口技术
§5.1 微机的输入/输出方式
返回
•
20:56
单片机原理及接口技术
图5-2 中断流程
主 程 序 中断请求 断点 继 续 执 行 主 程 序
20:56
中 断 服 务 程 序
返回
单片机原理及接口技术
§5.2 中断的概念
一、中断系统
二、中断源
三、中断请求
四、中断响应过程
五、中断服务 六、中断返回 七、中断方式的特点
返回
20:56
单片机原理及接口技术
20:56
单片机原理及接口技术
例5-1:假设允许片内定时器/计数器中断,禁止其他 中断。试根据假设条件设置IE的相应值。
解:(IE)=10001010B=8AH
(a)用字节操作指令
MOV SETB SETB IE,#8AH;或 MOV A8H,#8AH;
(b)用位操作指令
ET0;定时器/计数器0允许中断 ET1;定时器/计数器1允许中断
• CPU暂时中止自身的事物,转去处理 事件的过程,称为CPU的中断响应过
程。
返回
20:56
单片机原理及接口技术
五、中断服务
•
对事件的整个处理过程,称为中断 服务(或中断处理)。
返回
20:56
单片机原理及接口技术
六、中断返回
• 中断处理完毕,在返回到原来被中止的
地方,称为中断返回
返回
20:56
单片机原理及接口技术
20:56
单片机原理及接口技术
2、串行口控制寄存器SCON中的中断标志位
• SCON为串行口控制寄存器,其低2位锁存串行口的接收中断和发 送中断标志RI和TI。 • SCON中TI和RI的格式如图所示。
9FH 9EH 9DH SCON (98H) •其控制位的含义
9CH 9BH 9AH
99H 98H TI RI
返回
20:56
单片机原理及接口技术
二、中断允许控制
1、中断允许寄存器IE的格式。 AFH AEH ADH ACH ABH AAH A9H A8H IE EA (A8H) ES ET1 EX1 ET0 EX0
2、中断允许寄存器IE中各位的含义。 3、例5-1
返回
20:56
单片机原理及接口技术
2、中断允许寄存器IE中各位的含义。
七、中断方式的特点
• 1、中断方式消除了CPU在查询方式中的等待现象, 断方式及时传送给 CPU,经过处理后可立即作出反应,实现现场控制。 采用查询方式很难做到及时采集,实时控制。
返回
20:56
单片机原理及接口技术
§5.3
89C51中断系统结构及中断控制
• §5.3.1 89C51中断系统结构 • §5.3.2 89C51中断源 • §5.3.3 中断控制
返回
20:56
单片机原理及接口技术
§5.3.1 89C51中断系统结构 • 一、中断系统结构 • 二、中断技术实现的功能
返回
20:56
单片机原理及接口技术
一、中断系统结构
• 89C51的中断系统的结构如 图5-3所示。
返回
20:56
单片机原理及接口技术
§5.1.2 查询传送方式(条件传送)
一、什么是查询传送方式 二、查询方式程序流程图 三、查询方式的过程
四、查询方式的特点
返回
20:56
单片机原理及接口技术
一、什么是查询传送方式
在输入时,需要查询外设的输入数据是否准备好; 在输出时,需要查询外设是否把上一次CPU输出
返回 20:56
单片机原理及接口技术
2、实时处理
• 当计算机用于实时控制时,请求CPU提 供服务时随机发生的。有了中断系统, CPU就可以立即响应并加以处理。
返回
20:56
单片机原理及接口技术
3、故障处理
• 计算机在运行时往往会出现一些故障,如断电、 存储器奇偶校验出错、运算溢出等。 • 有了中断系统,当出现上述情况时,CPU可及 时转去执行故障处理程序,自行处理故障而不 必停机。
④EX1—外部中断1的溢出中断允许位。 EX1=0,禁止外部中断1中断; EX1=1,允许外部中断1中断。 ⑤ET0—定时器/计数器T0的溢出中断允许位。 ET0=0,禁止T0中断; ET0=1,允许T0中断。 ⑥EX0—外部中断0的溢出中断允许位。 EX0=0,禁止外部中断0中断; EX0=1,允许外部中断0中断。 返回
启动外设设备
查询方式的过程:
查询——等待——数据传送,待到
延迟
下一次数据传送时则重复上述过程。
传送数据
返回
20:56
单片机原理及接口技术
四、查询方式的特点
优点:通用性好,可以用于各类外设和CPU 间的数据传送。 • 缺点:CPU在完成一次数据传送后要等待很
长时间才能进行下一次的传送。在等待过程
• 中断系统中有两个不可寻址的“优先级生效”触发器,分 别指出CPU正在执行的高、低优先级的中断服务程序。当
其为1时则分别屏蔽所有的中断请求。
返回
20:56
单片机原理及接口技术
2、中断优先级寄存器IP
中断优先级寄存器IP的格式
BCH BBH BAH B9H B8H
IP (B8H)
PS
PT1
PX1
PT0
返回
20:56
单片机原理及接口技术
SCON中控制位的含义
1、TI:串行口发送中断请求标志。 CPU将一个数据写入发送缓冲器SBUF时,就启动发 送。每发送完一帧串行数据后,硬件置位TI。但CPU响应 中断时,并不清除TI,必须在中断服务程序中由软件对TI 清0。 2、RI:串行口接收中断请求标志。 在串行口允许接收时,每接收完一个串行帧,硬件置 位RI。同样,CPU响应中断时不会清除RI,必须在中断服 务程序中由软件对RI清0。
一、中断系统
• 实现中断功能的部件称为中断系统,
又称中断机构。
返回
20:56
单片机原理及接口技术
二、中断源
• 产生中断的请求源称为中断源。
返回
20:56
单片机原理及接口技术
三、中断请求
•
中断源向CPU提出的处理请求,称为中断 请求或中断申请。
返回
20:56
单片机原理及接口技术
四、中断响应过程
①EA—中断允许总控制位。 EA=0,屏蔽所有的中断请求; EA=1,CPU开放中断。对各中断源的中断请求是否允许,还要取决于各中断源的 中断允许控制位的状态。这就是所谓的两级控制。 ②ES—串行口中断允许位。 ES=0,禁止串行口中断; ES=1,允许串行口中断。 ③ET1—定时器/计数器T1的溢出中断允许位。 ET1=0,禁止T1中断; ET1=1,允许T1中断。
返回
20:56
单片机原理及接口技术
§5.3.3
中断控制
• 一、中断请求标志
• 二、中断允许控制
• 三、中断优先级控制
返回
20:56
单片机原理及接口技术
一、中断请求标志
1、定时器控制寄存器TCON中的中断标志位
2、串行口控制寄存器SCON中的中断标志位
返回
20:56
单片机原理及接口技术
1、TCON中的中断标志位
3、T0——定时器/计数器0溢出中断请求。
4、T1——定时器/计数器1溢出中断请求。 5、TX/RX——串行口中断请求。当串行口完成一帧数据 的发送或接收时,便请求中断。
返回
20:56
单片机原理及接口技术
二、通常情况的中断源
• 1、I/O外设 • 2、硬件故障 • 3、实时时钟
• 4、为调试程序而设定的中断源
中,CPU不能进行其他操作,所以效率比较 低。
返回
20:56
单片机原理及接口技术
§5.1.3 直接存储器存取(DMA)方式