第5章第三讲中断系统
第05章S7200中断系统

LBL n • 不能从主程序跳到子程序或中断程序,同样 不能从子程序或中断程序跳出。
• 可以在SCR程序段中使用跳转指令,但相应 的标号指令必须也在同一个SCR段中。
Jump to Label Example
Network 14 SM0.2
.....
4 ( JMP )
If the retentive data has not been lost, jump to LBL 4.
*I
+5, VW100
中断子程序1
LD
SM0.0
MOVW T96, VW102
*I
+8, VW102
程序控制指令
• 条件结束
• 条件结束指令(END)根据前面的逻辑关系终止 当前扫描周期。可以在主程序中使用条件结束指 令,但不能在子程序或中断服务程序中使用该命 令。
• 停止
• 停止指令(STOP)导致CPU从RUN到STOP模 式从而可以立即终止程序的执行。
I/O中断
• I/O 中断包含了上升沿或下降沿中断、高速计数器中断和 脉冲串输出(PTO) 中断。 – S7-200 CPU 可用输入I0.0 至I0.3 的上升沿或下降沿产 生中断,这些输入点捕获的上升沿或下降沿事件可被 用来指示当某个事件发生时必须引起注意的错误条件。 – 高速计数器中断允许响应诸如当前值等于预置值、相 应于轴转动方向变化的计数方向改变和计数器外部复 位等事件而产生中断,每种高速计数器可对高速事件 实时响应,而PLC 扫描速率对这些高速事件是不能控 制的。 – 脉冲串输出中断给出了已完成指定脉冲数输出的指示, 脉冲串输出的一个典型应用是步进电机,可以通过将 一个中断程序连接到相应的I/O 事件上来允许上述的每 一个中断。
单片机原理及实用技术第5章中断系统及应用课件

第5章 中断系统及应用
5. 时基信号中断
SPCE061A单片机提供了多组时基信号能作为中断源。 时基信号来自实时时钟32 768 Hz,输出有通过选频逻辑的 TMB1、TMB2信号和直接从时基计数器溢出的各种实时时基 信号,在开启时基信号中断的情况下,有时基信号时,便发 出 时 基 信 号 中 断 申 请 , CPU 查 询 到 有 中 断 请 求 后 , 置 位 P_INT_Ctrl中相应的中断请求标志位,在中断服务程序中通 过测试P_INT_Ctrl来确定是哪个频率的时基信号产生的中断 请求。
第5章 中断系统及应用
3. 事件中断
事件中断简称中断,以下提到的中断均为事件中断,一般 产生于片内某部件或由外设中断输入引脚引入的某个事件,这 种中断的开放/屏蔽由对应位和相应的IRQ或FIQ总使能控制, 由软件设置。
事件中断可采用两种方式:快速中断请求(FIQ)和中断请 求(IRQ),这两种中断都由相应的总使能来控制。
保留字 _FIQ/_IRQ0 _FIQ/_IRQ1 _FIQ/_IRQ2
FFFBH
_IRQ3
第5章 中断系统及应用
4096Hz 时基信号 2048Hz 时基信号 1024Hz 时基信号
4Hz 时基信号 2Hz 时基信号 频选信号TMB1 频选信号TMB2 UART 串行通信中断
IRQ4
IRQ5 IRQ6 IRQ7
第5章 中断系统及应用
中断系统
1
EXT1
EXT2 (下 降 沿 )
运算放大器
IOB2 ( I O B3 )
R
IOB4 C ( I O B5 )
图5.3 IOB2、IOB4或IOB3、IOB5之间的反馈结构
第5章 中断系统及应用
第5章-MCS-51单片机中断系统-PPT

5、2、2 MCS-51单片机得中断源
IT1=1,外中断1为下降沿触发 采样:CPU在每一个机器周期得S5P2期间 对P3、3引脚采样,若上一个机器周期检测为 高电平,紧挨着得下一个机器周期为低电平,则 使IE1置1。 IT0:外中断0触发方式控制位。
CPU主要就是通过标志寄存器、控制 寄存器、优先级寄存器对中断源进行管
5、2、2 MCS-51单片机得中断源
(1)与中断标志相关得SFR
主要有:定时器/计数器T0、T1控制寄 存器TCON
串行口控制寄存器SCON 定时器/计数器2控制寄存器T2CON(第 6章介绍) (2)中断控制寄存器:TCON、IE (3)中断优先级寄存器:IP
DMA释放总线:当一批数据传送后, DMA控制器再向CPU发出“结束总线请 求”,CPU响应请求,收回总线使用权。
DMA方式速度高、效率高,可以与CPU 并行工作。
5、1、2 中断得相关概念
1、中断得概念
CPU在正常运行得时候, 外部或者内部发生了请求 CPU迅速去处理得事件,CPU 暂时中断当前得程序,去处理 所发生得事件,处理完事件后, 再返回到原来被中断得程序 继续运行。此过程称为中断。
图5-3 定时器得控制寄存器
TCON可位寻址。复位后TCON=00H。 TF1(TCON、7):T1溢出标志位
当T1计满溢出时,由内部硬件置位; 中断响应后自动清 0。
5、2、2 MCS-51单片机得中断源
TF0:T0溢出标志位 功能同TF1。
IT1:外中断1触发方式设置位 IT1=0,外中断1为低电平触发
5、1、1 微机得输入/输出方式
单片机中断系统

单片机中断系统一、单片机中断系统的概念单片机中断系统是指在程序运行过程中,由于出现特殊情况(如外部设备的输入信号、定时器溢出等),使得单片机暂时停止当前任务的执行,转而执行相应的中断服务程序(ISR),以处理中断事件。
中断处理完毕后,再返回到中断点继续执行原来的任务。
这种特殊的中断机制,使得单片机能够同时处理多个任务,实现了实时性较高的应用程序设计。
二、单片机中断系统的结构单片机中断系统主要由以下几个部分组成:1、中断源:产生中断的外部设备或内部定时器。
2、中断请求寄存器:用于存储各个中断源的中断请求状态。
3、中断优先级寄存器:用于确定多个中断源的优先级。
4、中断服务程序(ISR):用于处理中断事件,执行相应的操作。
5、中断返回:中断处理完毕后,返回原程序继续执行。
三、单片机中断系统的处理过程当单片机检测到某个中断源发出中断请求时,会暂停当前任务的执行,按照优先级顺序执行相应的中断服务程序(ISR)。
在ISR中,程序会读取中断源的中断请求状态,并对相应的中断源进行处理。
处理完毕后,程序会返回原程序继续执行。
如果此时还有其他的中断源发出中断请求,则根据优先级顺序再次执行相应的ISR。
四、单片机中断系统的应用单片机中断系统在实时控制、数据采集、通信等领域有着广泛的应用。
例如,在工业控制中,当某个传感器发出中断请求时,单片机可以暂停当前任务的执行,转而执行相应的中断服务程序(ISR),对传感器数据进行采集和处理。
处理完毕后,再返回原程序继续执行。
这样,单片机可以在不丢失任何数据的情况下,实时地响应外部设备的请求。
五、总结单片机中断系统是实现实时控制和数据处理的重要手段之一。
通过合理的配置和使用中断系统,可以提高单片机的实时性能和数据处理能力。
在实际应用中,需要根据具体的需求和硬件条件选择合适的单片机型号和中断系统配置方案,以满足系统的实时性和稳定性要求。
单片机的中断系统在嵌入式系统设计中,单片机因其体积小、性价比高、可靠性强等特性被广泛应用。
第5章 中断系统

计算机与外设交换信息时,慢速工作的外设与快速工作的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自动完成的,用户只需要了解来龙去脉。而用户需要做的事情是 编制中断服务程序,并在此之前完成中断初始化,即设置堆栈,定义外中断触发方式,定义中断优先级, 开放中断等。
微机原理5-中断

的。 JC
RCL
PROG7
AL,1
(2) 缺点:不管外设是否有中 断请求都需要按次序逐一询问,因
JC
PROG6
而效率较低。特别是在中断源较多
的情况下,转至中断服务程序的时 间较长。
• 硬件优先权排队电路 使用硬件进行中断优先权排队主要有以下两种方式: 比较器方式 在图中优先权寄存器中存放的是当前
软件判优法软件查询法p68图52图53硬件判优法硬件排队法简单硬件方式串行菊花链p70图54并行优先级编码器p70图55专用硬件方式可编程中断控制器8259实现软件查询的接口电路保护现场中断0申请中断1申请中断2申请外设0中断服务程序恢复现场中断返回外设1中断服务程序外设2中断服务程序yyynn用软件查询确定中断优先权软件查询的方法是
1) 中断请求
当外设需要CPU提供服务时,便通过自身的中断请求触发
器发出中断请求信号,将它加至CPU的中断请求输入引脚 (INTR),形成对CPU的中断请求。这个信号一直保持到CPU响 应中断后才被清除,如图1所示。
AB 15~0 DB 7~0 CPU INTR WR RD
译码 数据端口 控制端口 &
参考图5.3(pp69)。
如果设定该接口的端口号为20H,程序查询可采用两种方法。 1) 屏蔽法
IN TEST JNE TEST JNE AL,20H AL,80H PROG7 AL,40H PROG6 ;读取中断请求触发器的状态 ;检查“设备7”是否有请求 ;是,则转至“设备7”的处理程序PROG7 ;否,检查“设备6”是否有请求 ;是,则转至“设备6”的处理程序PROG6
当 前 中断响应 中断 服务 程序断点 程 序 程序 中断返回
中 断 源
单片机第中断系统 ppt课件

2.中断恳求标志 (1)TCON的中断标志
TCON是公用存放器,字节地址为88H,它锁存了外部和的中断恳求标志 及T0和T1的溢出中断恳求标志
D7 D6 D5 D4 D3 D2 D1 D0 TCON
88H TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
1)IT0:选择外部中断0〔INT0〕触发方式控制位。 IT0=0 INT0为电平触发方式。 2)IE0:外部中断0恳求标志位。IE0=1,外部中断0向CPU恳求中断。 3)IT1:选择外部中断1〔INT1〕触发方式控制位。 4)1E1:外部中断1恳求标志位。IE1=1时,外部中断1向CPU恳求中断。 5)TF0:片内定时器T0溢出中断恳求标志。T0被启动后,从初始值开场进展加1计 数,当最高位产生溢出时置TF0=1,向CPU恳求中断,直到CPU呼应该中断时,才由 硬件自动将TF0清0,也可由软件查询该标志,并用软件清0。 6)TF1:片内定时器T1溢出中断恳求标志,其操作功能与TF0类同。
CLR PT1
〔2〕用字节操作指令
MOV IP,#05H
或:
MOV 0B8H,#05H ;B8H为IP存放器的字节地址
两级中断嵌套概念
当CPU正在处置一个中断恳求时,又出 现了另一个优先级比它高的中断恳求, 这时,CPU就暂时中止执行对原来优先 级较低的中断源的效力程序,维护当前 断点,转去呼应优先级更高的中断恳求, 并为它效力。待效力终了,再继续执行 原来较低级的中断效力程序。该过程称 为中断嵌套。该中断系统称为多级中断 系统。
ET0 TF0
EX1 IE1
ET1 TF1
TI
ES
1
RI/TI
RI
ET2
TF2
TF2
中断系统(3).ppt

qiu
17
中断指令
STI——开中断指令
将标志寄存器中的中断标志位IF置1,允许CPU响应来自INTR引脚 的中断请求
CLI——关中断指令
将标志寄存器中的中断标志位IF清0,使CPU不响应来自INTR引脚 的中断请求
INT n——软件中断指令 IRET——中断返回指令
中断服务程序的出口指令
qiu
18
CPU按照中断优先权的高低顺序,依次响应。
qiu
11
对同时产生的中断: 首先处理优先级别较高的中断;若优先级别相同,则按 先来先服务的原则
对非同时产生的中断:(中断嵌套) 低优先级的中断程序允许被高优先级的中断源所中断
主程序
响应1
响应2
服务 器
返回
返回
qiu
12
中断优先级解决办法
软件判优
这种方式借助于简单的硬件电路。 顺序查询中断请求,先查询的先服务
qiu
8
2. 中断源识别及中断判优
中断源识别
软件查询法:通过查询各设备的中断状态标志,确认 是哪个设备发中断,并为之服务。
– 特点:
查询顺序决定优先权 硬件简单 占用CPU较多的时间 中断嵌套不方便
中断矢量法: 由中断源提供中断类型号,CPU根据类 型确定中断源。
中断识别的目的:形成该中断服务程序的入口地址。
qiu
15
中断响应的过程
1)发出中断响应信号。 2)同时自动关中断,即置中断允许触发器IF为“0”。 3)保存断点。 4)保护现场。 5)转到中断服务程序逻辑的入口地址。
qiu
16
4.中断处理
执行中断服务子程序
中断服务子程序完成的工作
保护现场 开中断(STI) 中断处理 关中断(CLI) 恢复现场
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
保护断点和现场后即可执行中断服务程序,执行完毕, CPU由中断服务程序返回主程序。
16
断点 主程序A
……
响应
实现中断响应和中断返回
返回
中断返回过程如下: 中断服务程序B
RETI
首先恢复原保留寄存器的内容和标志位的状态,这称为 恢复现场,由用户编程完成。
然后,再加返回指令RETI,RETI指令的功能是恢复PC值, 使CPU返回断点,这称为恢复断点。
串行接收 中断标志
位
主目录 上一页 下一页 结 束
单片机原理及其接口技术
如果我们要设置允许外中断1,定时器1 中断允许, 其它不允许,则IE 可以是
位编码 位名称 位地址 功能
IE.7 EA AFH
1
IE.6 IE.5 IE.4
— ET2 ES
— ADH ACH
00
0
IE.3
ET1 ABH
1
IE.2
中断源
0
自 然 优
低 级
先
级 中断入口
中断源
5
外部中断源(2 个):
INT0——由P3.2 端口线引入,低电 平或下降沿引起。
INT1——由P3.3 端口线引入,低电 平或下降沿引起。
这两个外部中断
源标志和它们的触 发方式控制位由特 殊功能寄存器 TCON的低4位控 制。
内部中断源(3个): T0——定时器/计数器0中断,由T0溢出引起。 T1——定时器/计数器1中断,由T1溢出引起。 TI/RI——串行I/O中断,串行端口完成一帧
20
单片机原理及其接口技术
4. 中断请求的撤除
中断源发出中断请求后,相应的中断 请求标志位自动置“1”,而CPU响应中断 后,必须及时清除中断请求“1”标志。否 则中断响应返回后,将再次进入该中断, 引起死循环出错。
主目录 上一页 下一页 结 束
单片机原理及其接口技术
中断请求的撤除
• (1)CPU响应中断后,TF0(T0中断标志位)和TF1由 硬件自动清0。 (2)CPU响应中断后,在边沿触发方式下,IE0(外部中 断INT0请求标志位)和IE1由硬件自动清零;在电平触发 方式下,不能自动自动清零IE0和IE1。所以在中断返回前 必须撤出INT0和INT1引脚的低电平,否则就会出现一次 中断被CPU多次响应。
第5章 中断系统
1
本章主要内容
中断的概念和应用 AT89S51中断系统结构 与中断相关的SFR及中断控制 C51中断函数编程举例
2
中断概念类比
实际生活
计算机
看电视
主程序
电话铃响
事件发生
接听电话
事件处理
看电视
主程序
图5.1 中断概念示意图
中断请求 中断处理 中断返回
中断源与中断向量
具有 5 个中断源(52子系 列为6个,多一个定时器中 断)
24
using m? CPU正在处理某个事件,突然另外一个事件需要处理,于是进
入中断后,而你不想将现在执行的程序的各寄存器状态入栈 ,那么可以把这个中断程序放入另一个寄存器组,如切换到1 组,然后退出中断时,再切回到0组(原来的程序在0组)。
25
单片机原理及其接口技术
5.9 C51编程举例
在中断服务程序编程时,首先要对中断系统进行 初始化,也就是对几个特殊功能寄存器的有关控制位进
位编码 IP.7 IP.0
位名称 位地址 功能
— —
保留位
— —
保留位
— —
保留位
PS BCH 0
PT1 BBH 0
PX1 PT0 PX0
BAH B9H B8H
1
1
0
IP 的值就是06H。
主目录 上一页 下一页 结 束
例:在上例中,如果5 个中断请求同时发生,求中断 响应的次序。 响应次序为:定时器0->外中断1->外中断0-> 定时器1->串行中断。
主目录
ORG 0013H LJMP WBZD1
上一页 下一页
结束
单片机原理及其接口技术
中断服务流程
(1)关中断 (2)保存断点 (3)保护现场 (4)转入相应的中断服务程序 (5)恢复现场 (6)开中断 (7)中断返回
主目录 上一页 下一页 结 束
3. 中断响应时间 中断响应时间:用从外部中断请求有效(标志位置
PX0 =1 ;外中断0定为高优先级
IT0 =0
;电平触发
EX0 =0 ;允许外中断0中断
EA =1 ;开中断
TCON TF1 × TF0 SCON
IE1 IT1 IE0 IT0 TI RI
IE EA × ET2 ES ET1 EX1 ET0 EX0
IP
PS PT1 PX1 PT0 PX0
主目录 上一页 下一页 结 束
TR1 TF0 TR0 IE1 8EH 8DH 8CH 8BH
IT1 8AH
IE0 IT0 89H 88H
T1中断标T1志启位停控T0制中位断标T志0启位停控制/位INT1中断/INT1触发/INT0中/断INT0触发 标志位 方式位 标志位 方式位
主目录 上一页 下一页 结 束
单片机原理及其接口技术
注意: (1)不能用RET指令代替RETI指令。 (2)中断服务程序中PUSH与POP须成对使用。
主目录 上一页 下一页 结 束
函数类型 函数名(形式参数表)interrupt n[using m]
关键字interrupt后面的n是中断号,n的取值范围为 0 ~ 4。编 译器从 8*n+3处产生中断向量。执行该程序时,这个地址会传 个程序计数器PC m为单片机工作寄存器组(又称通用寄存器组)编号, 共四组,取值为0,1,2,3
88H 98H A8H B8H
【例5-1】在51单片机的P1口上接有8只LED。在外部中断0输 入引脚P3.2(INT0*)引脚接有一只按钮开关K1。程序要求 将外部中断0设置为负跳沿触发。在程序启动时,P1口上的 8只LED亮。按一次按钮开关K1,使引脚接地,产生一个负 跳沿触发的外中断0中断请求,在中断服务程序中,让低4 位的LED和高4位的LED交替闪烁。具体电路如图5-9所示。
28
图5-9 控制8只LED交替闪烁的电路
29
参考程序如下:
#include <reg51.h>
void Delay(unsigned int i) 能赋初值*/
/*延时函数Delay( ),i为形式参数,不
{ unsigned int j;
for(;i > 0;i--)
for(j=0;j<333;j++)
“1”)到转向中断区入口地址所需的机器周期数来计算。 最短响应时间为3个机器周期。 第一机器周期:查询中断标志状态; 第二、三机器周期:保护断点及跳转。 最长响应时间为8个机器周期。 若正在执行RETI等指令需1个机器周期。 下一条指令最长需4个机器周期(如乘法指令)。 响应中断需3个机器周期。
2.中断响应----条件 同时满足以下4个条件时,才可能响应中断。
(1)有中断请求; (2) 对应中断允许位为1; (3) 开中断(即EA=1)。 (4) 当前一条指令执行完。
TCON TF1 × TF0 SCON
IE1 IT1
IE EA × ET2 ES ET1 EX1
IP
PS PT1 PX1
主目录 上一页 下一页
嵌套 。
TCON
IE
IP
硬件查询
INT0 IT0 1
01
T0 INT1 IT1 1
01
T1
RX TX
IE0
EX0 1 EA 1
ET0 1 TF0
EX1 1 IE1
ET1 1 TF1
RI
TI
≥1
SCON
ES 1
PX0 1
0 PT0 1
0 PX1 1
0 PT1 1
0 PS 1
0
自
高
然
级
1
优
先
级 中断入口
/*晶振为12MHz,j的选择与晶振频率有关*/
{;}
/*空函数*/
}
void main( ) { EA=1; EX0=1; IT0=1;
/*主函数*/ /*总中断允许*/ /*允许外部中断0中断*/ /*选择外部中断0为跳沿触发方式*/
While(1) { P1=0;}
/* P1口的8只LED全亮*/
11
单片机中断优先级原则:
➢ (1) 先高后低; ➢ (2) 事先规定; ➢ (3) 停低转高; ➢ (4) 高不理低。
单片机原理及其接口技术
中断处理过程
中断请求
主程序 执行主 程序
断点
继续执行 主程序
中断响应
执行 中断 处理 程序
中断返回
主目录
上一成于页大气 信达天下下一页
结束
单片机原理及其接口技术
字符发送/接收后引起。 这3个内部中断源的控制位分别锁存在特殊
功能寄存器TCON和SCON中
6
单片机原理及其接口技术
表5.1 TCON的结构、位名称、位地址和功能
TCON.7 TCON.6TCON.5TCON.4TCON.3 TCON.2TCON.T1CON.0
位编码 位名称 TF1 位地址 8FH 功能
行赋值。具体来说, 就是要完成下列工作:
(1)开中断和允许中断源中断; (2)确定各中断源的优先级; (3)若是外部中断,则应规定是电平触发还是边沿触发。
主目录 上一页 下一页 结 束
例1:若单规片定机外原理部及中其断接0口为技电术平触发方式,高优先级,试 写出有关的初始化程序。
解:一般可采用位来实现: