8051单片机5中断系统精选

合集下载

MCS-51系列单片机的中断系统

MCS-51系列单片机的中断系统
单片机原理与接口技术
大连理工大学出版社
第5章 中断
当断不断必受其乱
第5章 中断系统
5.1 概述 MCS-51系列单片机的中断系统 5.2 MCS-51系列单片机的中断系统 5.3 中断程序设计方法
第5 章
中断系统
中断控制是单片机最重要的技术之一, 实时控制及人机交互等应用都是通过中 断实现的。 本章主要介绍中断的基本概念、MCS-51 系列单片机单片机的中断机制及其简单 应用。
5.2.2中断控制 5.2.2中断控制
1.中断允许 MCS-51系列单片机中断系统通过中断允许控制 寄存器IE实现开中断和关中断的功能。 (1)IE寄存器 IE寄存器由一个中断允许总控制位和各中断源 的中断允许控制位构成,从而进行两级中断允 许控制。IE寄存器的各位定义如下:
5.2.2中断控制 IE寄存器
5.2.2中断控制 IE寄存器
EX1(IE.2)——外中断1的中断允许控 制位。中断总允许时,EX1=0,禁止外中 断1中断;EX1=1,允许外中断1中断。 ET1(IE.3)——定时器T1的中断允许控 制位。中断总允许时,EX1=0,禁止T1中 断;ET1=1,允许T1中断。
5.2.2中断控制 5.2.2中断控制 IE寄存器
5.2.1中断源和中断标志
当MCS-51系列单片机的外中断源以脉冲方式触 发时,负脉冲有效。CPU在一个机器周期采样到 INT0(或者 INT1 )引脚上为高电平,在接下 来的一个机器周期采样到INT0(或者INT1)引 脚上是低电平,即出现了下降沿的跳变(负脉 冲)时,就认为是外中断0(或者外中断1)的 一个有效的中断请求信号。因为两次检测的间 隔时间为一个机器周期,负脉冲对应的高低电 平持续时间都应至少维持一个机器周期,从而 保证CPU能够检测到电平的跳变。

第5章 MCS-51单片机的中断系统

第5章 MCS-51单片机的中断系统
系统
(2)实现实时处理
在实时控制中,现场的参数、信息是不断变化的。 有了中断功能,外界的这些变化量可随时向CPU 发出中断请求,CPU可以马上响应加以处理。
(3)故障处理
单片机运行过程中,出现一些故障时(如掉电、 存储出错、运算溢出等),有了中断功能,单片 机就能自行处理而不必停机。 外界的中断请求是随机的,单片机响应请求后要 转到中断服务程序,与调用子程序相类似,需要 注意对现场进行保护。
ORG 0100H
MAIN: …;
第五章 MCS-51单片机的中断系统
ORG 1000H INT1:PUSH ACC PUSH DPH PUSH DPL PUSH R0 PUSH R1 … POP R1 POP R0 POP DPL POP DPH POP ACC RETI
第五章 MCS-51单片机的中断系统
5.3 中断处理过程
中断响应
中断处理
中断返回
第五章 MCS-51单片机的中断系统
5.3.1 中断响应
1. CPU响应中断的基本条件 (1)有中断源提出中断请求; (2)中断没有被禁止; (3)没有正在响应的同级或更高优先级的中断; (4)当前的指令周期已经结束;(也就是说,中 断申请时,正在执行的这条指令完成后,才会响 应中断请求) (5)若当前指令为RETI或访问IE、IP指令, CPU在执行完当前指令后,要再执行一条指令才 会响应中断请求。
第五章 MCS-51单片机的中断系统
2.中断响应过程 (1)根据响应的中断源的中断优先级,使相应的优 先级状态触发器置1; (2)清除相应的中断请求标志位(串行口中断请求 标志RI和TI除外);
(3)把当前程序计数器PC的内容压入堆栈;
(4)把被响应的中断源所对应的中断服务程序的入 口地址送入PC,从而转入相应的中断服务程序。 CPU响应中断请求后,在中断返回(执行RETI)前, 中断请求必须被清除,即中断标志位=0,否则会再 一次引起中断响应。

第5章 中断系统

第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自动完成的,用户只需要了解来龙去脉。而用户需要做的事情是 编制中断服务程序,并在此之前完成中断初始化,即设置堆栈,定义外中断触发方式,定义中断优先级, 开放中断等。

第4章8051单片机的中断系统

第4章8051单片机的中断系统
7
第四章 8051单片机的中断系统
例3-3 双字节数取补子程序。将(R4R5)中的双字节数取补,结果 送R4R5。 低8位送入A CMPT: MOV A,R5 低8位取反 CPL A ADD A, #1 低8位最低位加1 MOV R5, A MOV A, R4 CPL A 与前面相似 ADDC A, #0 MOV R4,A 无需SETB ACC.7 RET 对于二进制数,左移一位相当于乘以2,右移一位相当于除以2。 由于一般带符号数的最高位为符号位,故在执行算术移位操作时, 必须保持符号位不变。 原码表示的负数:由于负数的符号位为1,故移位时符号位不参 加移位; 8
第四章 8051单片机的中断系统
具体
14
第四章 8051单片机的中断系统 例3-10无符号二进制乘法程序。将(R2R3)和(R6R7)两个双字节 无符号数相乘,结果送R4R5R6R7。
NMUL: MOV R4, #0 MOV R5, #0 MOV R0, #16 ; 16位二进制数 CLR C NMLP: MOV A, R4 ;右移一位 RRC A MOV R4, A MOV A, R5 RRC A R4 R5 MOV R5, A MOV A, R6 RRC A MOV R6, A MOV A, R7 RRC A MOV R7, A JNC NMLN ;C为移出的乘数最低位, 若为0,则不执行加法 MOV A, R5 ;执行加法 15 ADD A, R3 MOV R5, A MOV A, R4 ADDC A, R2 MOV R4, A NMLN: DJNZ R0, NMLP ;循环16次 MOV A, R4 ;最后再右移一位 RRC A MOV R4, A R6 R7 MOV A, R5 RRC A MOV R5, A MOV A, R6 RRC A MOV R6, A MOV A, R7 RRC A MOV R7, A RET

8051单片机的中断系统

8051单片机的中断系统

8051单片机的中断系统在单片机的世界里,8051 单片机的中断系统就像是一个有条不紊的交通指挥中心,能够让单片机在应对各种复杂任务时做到有条不紊、高效快捷。

什么是中断呢?打个比方,你正在家里专心致志地看书,突然门铃响了,这时候你就得放下手中的书去开门,处理完开门这件事之后再回来继续看书。

对于单片机来说,中断就像是这个突然响起的门铃,它会打断单片机正在进行的主程序,让单片机先去处理更紧急、更重要的任务,处理完后再回到原来的主程序继续执行。

8051 单片机的中断系统有 5 个中断源,分别是外部中断 0(INT0)、外部中断 1(INT1)、定时/计数器 0 溢出中断(TF0)、定时/计数器1 溢出中断(TF1)和串行口中断(RI 或 TI)。

外部中断 0 和 1 通常是由外部信号触发的。

比如说,连接一个传感器,当传感器检测到特定的条件时,就会产生一个信号触发外部中断,让单片机去处理相应的操作。

定时/计数器 0 和 1 溢出中断则是在定时/计数器计满溢出时产生中断。

这就好比你设定了一个闹钟,时间到了闹钟就响,单片机就知道该去执行相应的任务了。

串行口中断是在串行通信过程中,当接收或发送完一帧数据时产生的中断。

每个中断源都有自己的中断标志位。

当相应的中断事件发生时,中断标志位就会被置位。

单片机通过查询这些中断标志位来判断是否有中断请求。

为了有效地管理这些中断,8051 单片机设置了中断允许寄存器 IE和中断优先级寄存器 IP。

中断允许寄存器 IE 就像是一个总开关,决定了哪些中断源可以被响应。

如果某个中断源对应的位被设置为 1,那么它就是被允许的;如果是 0,就会被禁止。

中断优先级寄存器 IP 则决定了多个中断同时请求时的响应顺序。

就像在一个拥挤的路口,警车、救护车等具有更高优先级的车辆会先通过。

在 8051 单片机中,默认的中断优先级顺序是:外部中断 0 >定时/计数器 0 溢出中断>外部中断 1 >定时/计数器 1 溢出中断>串行口中断。

51单片机中断系统程序实例

51单片机中断系统程序实例

51单片机中断系统程序实例(STC89C52RC)51单片机有了中断,在程序设计中就可以做到,在做某件事的过程中,停下来先去响应中断,做别的事情,做好别的事情再继续原来的事情。

中断优先级是可以给要做的事情排序。

单片机的学习不难,只要掌握学习方法,学起来并不难。

什么是好的学习方法呢,一定要掌握二个要点:1. 要知道寄存器的英文全拼,比如IE = interrupt中断不知道全拼,要去猜,去查。

这样就可以理解为什么是这个名称,理解了以后就不用记忆了。

2. 每个知识点要有形像的出处比如看到TF0,脑子里马上要形像地定位到TCON寄存器的某位看到ET0, 马上要形像地定位到IE寄存器的第2位hi.baidu./tuenhai/独家揭秘:形像是记忆的最大技巧。

当人眼看到某个图时,是把视觉信号转化成电信号,再转化成人能理解的形像。

当我们回忆形像时,就是在重新检索原先那个视觉信号,并放大。

在学习过程中,不断练习检索、放大信号,我们的学习能力就会越来越强。

写程序代码时,也要把尽量把每行代码形像化。

51单片机中断源8051有五个中断源,有两个优先级。

与中断系统有关的特殊功能寄存器有IE(中断允许寄存器)、IP(中断优先级控制寄存器)、中断源控制寄存器(如TCON、SCON的有关位)。

51单片机的中断系统结构如下图(注意,IF0应为TF0):8052有6个中断源,它比8051多一个定时器/计数器T2中断源。

8051五个中断源分别是:(1)51单片机外部中断源8051有两个外部中断源,分别是INT0和INT1,分别从P3.2和P3.3两个引脚引入中断请求信号,两个中断源的中断触发允许由TCON的低4位控制,TCON的高4位控制运行和溢出标志。

INT0也就是Interrupt 0。

在这里应该看一下你的51单片机开发板的电路原理图。

离开形像的记忆是没有意义的。

读到上面这句,你应该回忆起原理图上的连接。

任何记忆都转化为形像,这是学习的根本原理,我们通过学习单片机要学会这种学习方法,会让你一辈子受益无穷。

第5章MCS-51的中断系统

第5章MCS-51的中断系统

例:写出INT1为低电平触发的中断系统初始化程序
SETB EA; SETB EX1 SETB PX1 CLR IT1
二、 中断服务程序
1、编写中断程序应注意以下几点: ① 为了要跳到用户设计的中断服务程序,在相应入口 地址安排一条跳转指令; ② 在中断服务程序的末尾,安排一条返回指令RETI; ③ 由于在响应中断时,CPU只自动保护断点,所以 CPU的其他现场的保护和恢复也必须由用户在中断服 务程序中安排。
1、T0/T1中断撤除:自动清除TF0 TF1
2、TX/RX中断撤除:不能自动撤除,必须软件清“0” CLR RI CLR TI ANL SCON ,#0FCH
3、外部中断请求的撤除
对于负边沿触发的外部中断,CPU在响应中断后是 用硬件自动清除中断请求标志IE0或IE1。
电平触发时,虽然自动清除中断请求标志IE0或IE1。但 不及时撤除低电平的话会重复响应中断,必须采取措施。
中断允许寄存器IE的单元地址是A8H,各控制位也可 位寻址,故既可以用字节传送指令也可以用位操作指 令来对各个中断请求加以控制。 例:开放T/C1的溢出中断
MOV IE,#88H;
SETB EA SETB ET1
二、 对中断优先级的控制
MCS-51具有两个中断优先级,可由软件设置每个中断 源为高优先级中断或低优先级中断,可实现二级中断 嵌套。
可在中断服务程序开 头安排如下程序: INSVR:ANL P1 ,#0FEHORL Fra bibliotek1,#01H …
RETI END
§4 中断系统的初始化及应用
一、中断系统的初始化 中断初始化是指用户对TCON、SCON、IE等特殊功能 寄存器中的各控制位进行赋值。
中断系统的初始化步骤: 1、 CPU开中断或关中断 2、 某中断源中断请求的允许或禁止(屏蔽) 3、 设定所用中断的中断优先级 4、若为外部中断,则应规定低电平还是负边沿的中断 触发方式

单片机-05-中断系统

单片机-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溢出中断 出厂前已由厂家固化顺序 ——事先约定 高

8051单片机有5个中断源

8051单片机有5个中断源

一、填空题1、8051单片机有5个中断源,其自然优先级顺序为、、、和;其中断服务程序入口地址分别为、、、和。

2、定时器中断请求发生在_______。

3、8051单片机的六个中断请求标志位分别为、、、、和;在响应中断后,和标志必须由软件清零。

4、MCS-51单片机有5中断源, 2个优先级,上电复位时,中断源优先级级别最高。

5、通过CPU对I/O状态的测试,只有I/O已准备好时才能进行I/O传送,这种传送方式称为_______。

6、MCS-51单片机在同一优先级的中断源同时申请中断时,CPU首先响应_______。

7、如果某MCS-51单片机系统的定时/计数器0的中断服务程序放在程序存储区的3000H地址开始的一段空间内,此时跳转到定时/计数器0的中断服务程序的指令LJMP 3000H应放在开始的中断地址区。

8、通过指令可将外部中断1设置为边沿触发方式。

9、中断返回指令为。

10、在执行中断返回指令时,要从堆栈弹出断点地址,以便去执行被中断了的主程序,从堆栈弹出的断点地址被送入。

11、MCS—51单片机外部中断请求信号有电平方式和,在电平方式下,当采集到INT0、INT1的有效信号为时,激活外部中断。

二、简述题1、MCS-51单片机的中断控制原则是什么?2、MCS-51单片机的CPU是如何判别中断源是否有中断请求发生的?3、如果某一单片机系统有一外部中断1的中断服务程序INTPl放置在程序存储区的2000H地址开始的一段存储空间中。

请问,在编程时应该作何种设置,才能在CPU响应外部中断1时找到对应的中断服务程序INTPI?4、51系列单片机具有几个中断源,分别是如何定义的?其中哪些中断源可以被定义为高优先级中断,如何定义?5、各中断源对应的中断服务程序的入口地址是否能任意设定?三、程序设计题1、用8051输出控制8个LED从LED1到LED8、再到LED1…,每次一个LED 发光,并不断循环。

一个开关控制引起中断,电平触发,中断后8个LED一起闪5下,然后恢复前面的循环。

单片机讲义(第五章MCS-51的中断系统)

单片机讲义(第五章MCS-51的中断系统)


5.6.2 跳沿触发方式(下降沿触发方式)
如果相继连续两次采样,一个机器周期采样到外部中断输入为高, 下一个机器周期采样为低,则置1中断申请触发器,直到CPU响应此 中断时,该标志才清0。这样不会丢失中断,输入的负脉冲宽度至少保
持12个时钟周期(若晶振频率为6 MHZ,则为2μs),才能被CPU采样到。
(2)用字节操作指令
MOV IP,#05H ;000 00101 或者用: MOV 0B8H,#05H ;B8H为IP寄存器的字节地址
5.5 外部中断的响应时间


从外部中断请求有效(外部中断请求标志置1)到转 向中断入口地址所需要的响应时间。 外部中断的最短响应时间为3个机器周期。其中中断
请求标志位查询占1个机器周期,而这个机器周期恰好是处于指令 的最后一个机器周期,在这个机器周期结束后,中断即被响应, CPU接着执行1条硬件子程序调用指令 LCALL以转到相应的中断服 务程序入口,则需要2个机器周期。

外部中断响应的最长时间为8个机器周期。执行RETI或
是访问IE或IP的指令,最长需要2个机器周期。而接着再执行的1条 指令,按最长的指令(乘法指令MUL和除法指令DIV)来算,需4 个机器周期。再加上硬件子程序调用指令LCALL的执行,需要2个 机器周期,所以,外部中断响应最长时间为8个机器周期。
5.3.3中断允许寄存器IE

IE中各位的功能如下:
(l)EA——中断允许总控制位 EA=0,CPU屏蔽所有的中断请求(CPU关中 断); EA=1,CPU开放所有中断(CPU开中断)。 (2)ES——串行口中断允许位 ES=0,禁止串行口发送/接收中断; ES=1,允许串行口发送/接收中断。 (3) ET1——定时器/计数器T1的溢出中断允许 位 ET1= 0,禁止T1计数溢出中断; ET1= 1,允许T1计数溢出中断。

单片机的5个中断源

单片机的5个中断源

当几个中断源同时向CPU请求中断时,按所发生的实时事件的轻重缓急排队,优先处理最紧急事件的中断请求,于是单片机规定每个中断源的优先级别。

当CPU正在处理一个中断请求,又发生另一个优先级比它高的中断请求,CPU暂时中止对前一中断处理,转而去处理优先级更高的中断请求,待处理完后,再继续执行原来的中断处理程序,这样的过程称为中断嵌套,这样的中断系统称为多级中断系统。

由于外界异步事件中断CPU正在执行的程序时随机的,CPU转向去执行中断服务程序时,除了硬件会自动把断电地址,即16位PC程序计数器的值压入堆栈之外,用户还得注意保护有关工作寄存器,累加器,标志位等信息,这个过程通常称为保护现场。

以便在完成中断服务程序后,恢复原工作寄存器,累加器,标志位等的内容,这个过程称恢复现场;最后执行中断返回指令,自动弹出断电到PC,返回主程序,继续执行被中断的程序。

下面我们看看8051中断系统结构及中断控制:8051单片机有五个中断请求源,四个用于中断控制的寄存器IE.IP.TCON和SCON,用于控制中断的类型,中断允许,中断起停和各种中断源的优先级别。

五个中断源有两个优先级,每个中断源可以编程为高优先级或低优先级中断,可以实现二级中断服务程序嵌套。

8051的中断源包括:INT0,INT1引脚输入的外部中断源三个内部的中断源,即定时器T0的溢出中断源,定时器T1的溢出中断源和串行口的发送/接收中断源。

关于内部中断源我们以后再讲,今天我们先学习外部中断源。

从INT0,INT1引脚输入的两个外部中断源和它们的触发方式控制位锁存在特殊功能寄存器TCON的低四位,其格式如下:IE1,即TCON.3:外部中断INT1请求标志位。

当CPU检测到在INT1引脚上出现的外部中断信号时,由硬件置位IE1=1,请求中断。

CPU执行中断服务程序后,IE1位被硬件自动清0.IT1,即TCON.2:外部中断INT1请求类型,触发方式控制位,由软件来置1或清0,以控制外部中断1的触发类型。

第5章:中断系统2

第5章:中断系统2


• •
中断优先级的判定 中断源的优先级别分为高级和低级,通过由软件 设置中断优先级寄存器IP相关位来设定每个中断 源的级别。 如果几个同一优先级别的中断源同时向CPU请求 中断,CPU通过硬件查询电路首先响应自然优先 级较高的中断源的中断请求。 中断可实现两级中断嵌套。高优先级中断源可中 断正在执行的低优先级中断服务程序,除非执行 了低优先级中断服务程序的CPU关中断指令。同 级或低优先级的中断不能中断正在执行的中断服 务程序。
5.2 中断处理过程
• 中断处理流程 • 中断嵌套 • 中断的应用实例
中断处理流程
执行一条指令 取下一条指令

中断处理过程可分为 中断请求、中断响应、中 断处理和中断返回四个阶 段。不同的计算机因其中 断系统的硬件结构不同, 因此,中断响应的方式也 有所不同。这里仅以8051 单片机为例进行叙述。其 主要内容及一般顺序如图 5-3所示。
(4)中断请求的撤除
• 中断源发出中断请求,相应中断请求标志置“1”。CPU响应 中断后,必须清除中断请求“1”标志;否则中断响应返回后, 将再次进入该中断,引起死循环出错。如何撤除中断请求标 志的说明如下:
• 定时器溢出中断请求的撤除:
• 对于定时器0或1溢出中断,CPU在响应中断后即由硬件自动 清除其中断标志位TF0或TF1,用户无须采取其他措施。
编写中断服务程序时应注意
① 在中断矢量地址单元处放一条无条件转移指令(如
LJMP ××××H),使中断服务程序可灵活地安排
在64KB程序存储器的任何空间。
② 在中断服务程序中,用户应注意用软件保护现场,
以免中断返回后丢失原寄存器、累加器中的信息。
③ 若要在执行当前中断程序时禁止更高优先级中断,

51单片机中断系统

51单片机中断系统
计数初值由 C = (213-T0初值) 。
《测量与机电控制》核心课程
§5.5 中断系统
1、T0方式0 — 13位方式
振荡器 1/12
T0 TR0 GATE
INT0
+
计数脉冲输 入
定时 器
C/T=0
TL0 TH0 TF0
C/T=1 控制端 低5位 8

&
13位计数器
计数 器
《测量与机电控制》核心课程
在TMOD中,各有一个控制位(C/T),分别用于 控制定时/计数器T0和T1是工作在定时器方式还是计数器 方式。
《测量与机电控制》核心课程
§5. 0
TH TL
TH TL0
1

溢出
1
0
溢出

启动 / 停
理器μP
止 内部总线
工作方式 工作方式
TCON
TMOD
微处理器与T/C的关系
计数输入端P3.4/P3.5作为边沿触发的外部中断的输入, 这时C/T工作于计数方式,计数的初始值为FFH。 (2)利用逻辑电路实现外部中断:
5V
INT0
A
ORG
0003H
B
AJMP INT0
OC门
P1.0 P1.1 P1.2
C INT0:PUSH PSW PUSH A JB P1.2, EI1 JB P1.1, EI2 JB P1.0, EI3 《。测。量与。机电。控制》核心课程
单片机的中断为固定入口式中断,即一响应中断就转入固定入
口地址执行中断服务程序。这些单元中往往是一些跳转指令。
中断优先级(2个)
每个中断源都可由程序指定为高优先级或底优先《级测。量与机电控制》核心课程

第4章8051单片机的中断系统复习

第4章8051单片机的中断系统复习

串行口接收中断标志。接收完一帧,由硬件置位。 响应中断后,必须用软件清0。
Hale Waihona Puke 8第四章 8051单片机的中断系统
2. 中断允许控制
中断允许和禁止由中断允许寄存器 IE ( A8H )控制。 IE 中 各位设置:为0时,禁止中断;为 1时,允许中断。
中断允许位。当 EA=1,允许所有 中断开放;当EA =0时,屏蔽所有 中断。
1).由硬件自动使标志位复“0”(即撤除),它们是:定时器0或1, 外部中断0或1 2). 中断系统不予以自动撤除,是串行口的中断请求标志。 20
第四章 8051单片机的中断系统 实验三电路如下,用中断方法实现LED1和LED2闪亮。
B1 LED1
LED2
21
B2
第四章 8051单片机的中断系统 编程如下:
中断程序
INT1:
第四章 8051单片机的中断系统 中断响应的条件:
1.必须没有同级或更高级别的中断正在得到响应,如果有的话, 则必须等CPU为它们服务完毕,返回主程序并执行一条指令之后才 能响应新的中断申请。 2.必须要等当前正在执行的指令执行完毕以后,CPU才能响应 新的中断申请。 3.若正在执行的指令是RETI(中断返回),则必须要在执行完 该指令以及紧随其后的另外一条指令之后才可以响应新的中断申请。
10
第四章 8051单片机的中断系统 在同一优先级内有一个由内部查询序列确定的优先级结构。其 排列如下: 中断源 中断优先级 最高 ⒈ 外部中断0 ⒉ 定时器T0中断 ⒊ 外部中断1 ⒋ 定时器T1中断 ⒌ 串行口中断 最低 中断嵌套: 优先级高的事件可以中断 CPU 正在 处理的低级的中断服务程序,待完成了 高级中断服务程序之后,再继续被打断 的低级中断服务程序。这是中断嵌套问 题。 11

第四章中断系统

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

?IT0=1 时,INT0 为边沿触发方式(下降沿)。边沿触发方
式下,微处理器响应中断时,能由硬件自动清除 IE0 标志。
注意:为保证微处理器能检测到负跳变,INT0 的高、低电平
时间必须保持一个周期
12
5.2.3 中断标志位
TCON :定时器控制寄存器,字节地址为88H
IT0 (TCON.0) ,外部中断0触发方式控制位。 IE0 (TCON.1) ,外部中断0中断请求标志位。 IT1 (TCON.2) ,外部中断1触发方式控制位。 IE1 (TCON.3) ,外部中断1中断请求标志位。 TF0 (TCON.5) ,定时/计数器T0溢出中断请求标志位。当计 数器T0产生溢出时,由硬件置位TF0 ,向微处理器请求中断 TF1 (TCON.7) ,定时/计数器T1溢出中断请求标志位。 13
中断优先级越高, 则响应优先权就越高。当CPU 正在执
行中断服务程序时, 又有中断优先级更高的中断申请产
生, 这时CPU 就会暂停当前的中断服务转而处理高级中
断申请, 待高级中断处理程序完毕再返回原中断程序断
点处继续执行,这一过程称为中断嵌套。
6
5.1 中断概述
中断响应的过程:
(1) 在每条指令结束后, 系统都自动检测中断请求信号, 如果有 中断请求,且CPU处于开中断状态下, 则响应中断。
8
5.2 单片机的中断系统结构
查询电路
IT0=0 INT0
IT0=1
T0
IT1=0 INT1
IT1=1 T1
TXD RXD
中断标 志位
TCON
IE
IP
IE0
PX0
EX0
PT0
TF0 ET0
PX1
IE1 EX1
PT1
TF1 ET1
TI
PS
RI
ES EA
SCON
中断源 允许
总允许
中断优 先级
中断源 中断源
和软件
3
5.1 中断概述
大体说来 ,采用中断系统改善了计算机的性能 ,主要表 现在以下几个方面:
(1)有效地解决了快速 CPU 与慢速外设之间的矛盾 ,可 使微处理器 分时为多个外设 服务,大大提高了工作效 率。
(2) 可以及时处理控制系统中许多随机产生的参数与 信息 ,即计算机具有 实时处理 的能力 ,从而提高了控 制系统的性能。
4. T1 (P3.5) 当定时/计数器T1发生溢出时,置位 TF1 ,并向 CPU 申请中断。
5. RXD (P3.0) 和TXD (P3.1) 当串行口接收完一帧串行数据时置位 RI 或当串行口 发送完一帧串行数据时置位 TI ,向CPU 申请中断。
11
5.2.2 中断触发标志
IT0 (TCON.0) :外部中断 INT0 触发方式控制位
(3)使系统具备了处理故障的能力 ,提高了系统自身的 可靠性 。
4
5.1 中断概述
中断源的种类:
1. 硬件故障:例如电源掉电时会向主机请求中断,于是 CPU 就执行相应的服务程序,将一些重要的参数保存起 来并作出相关的处理。
2. 输入输出设备:例如主机要将处理的结果打印输出。 主机首先启动打印机,当打印机准备就绪后就向主机发 出中断请求,然后主机响应请求,输出相关的打印信息。
第五章 中断系统
5.1 中断概述 5.2 中断系统的结构 5.3 中断处理过程 5.4 中断系统应用实例
1
5.1 中断概述
中断的概念:
CPU 在处理某一事件 A时,发生了另一事件 B 请求CPU 去处理( 中断发生);
CPU 暂时中断当前的工作,转去处理事件 B (中断响应和中断服务 );
待CPU 将事件B处理完毕后,再回到原来事件 A被中断的地方继续处理事件 A(中断返回 ),这 一过程称为 中断。
3. 定时时钟:实现定时检测和控制 4. 内部软件设定:为调试程序而设置的中断源
5
5.1 中断概述
中断相应的优先权: 在微型机中常常有多个中断源。
当几个中断源同时向CPU 申请中断时,它必须确定首先 为那一个中断源服务,并为其他中断源服务次序排序, 把会造成严重后果的中断请求排在最先处理位置。把仅 要求在一定范围内处理的请求排在其次,把对处理时间 没有严格要求的中断请求排在最后,这种中断的相应次 序就是中断的优先权。
(2) 保护现场, 在保护现场前, 一般要关中断, 以防止现场被破 坏。保护现场一般是用堆栈指令将原程序中用到的寄存器推 入堆栈。
(3) 取中断号,中断服务, 即为相应的中断源服务。
(4) 恢复现场, 用堆栈指令将保护在堆栈中的数据弹出来, 在 恢复现场前要关中断, 以防止现场被破坏。在恢复现场后应 及时开中断。
2. INT1 (P3.3) 。可由IT1(TCON.2) 选择其为低电 平有效还是下降沿有效。当 CPU 检测到P3.3引脚 上出现有效的中断信号时,中断标志 IE1(TCON.3) 置1,向CPU 申请中断。
10
5.2.1 中断源
3. T0 (P3.4) 当定时/计数器T0发生溢出时,置位 TF0 ,并向 CPU 申请中断。
注:每个机器周期的S5P2为中断采样
?IT0=0 时,INT0 为电平触发方式 (低电平)。若微处理器在INT0 引脚 采样到低电平,置中断请求标志位 IE0=1 ;采样到高电平,置IE0=0.
边沿触发 电平触发
注意:1)低电平应保持到中断得到响应.
2)电平触发方式下,中断返回前必须撤除INT0 引脚的低电平
(5) 返回, 此时CPU 将推入到堆栈的断点地址(PC 值)弹回到
程序计数器, 从而使CPU 继续执行刚才被中断的程序。
7
5.2 单片机的中断系统结构
51单片机的中断系统共有5个中断源,2个中 断优先级,可以实现两级中断服务嵌套。通 过片内特殊功能寄存器中的中断允许寄存器 (IE) 来控制微处理器是否屏蔽中断请求;通 过中断优先级寄存器(IP) 来安排各中断源的 优先级。
高级 中断 请求
中断 入口 低级 中断 请求
中断9 入口Biblioteka 5.2.1 中断源51单片机共有五个中断源,分别是 外部中断两个、 定时中断两个和串行中断 一个
1. INT0 (P3.2) 。 可由IT0(TCON.0) 选择其为低 电平有效还是下降沿有效。当 CPU 检测到P3.2引 脚上出现有效的中断信号时,中断标志 IE0(TCON.1) 置1,向CPU 申请中断。
2
5.1 中断概述
中断源:引起中断的原因或触发中断请求的来源。
中断可以人为设定 , 也可以是为响应突发性随机事 件而设置。中断源向 CPU 提出的中断请求 , CPU 暂 时中断原来的事务 A,转去处理事件 B。对事件 B处 理完毕后,再回到原来被中断的地方(即 断点), 称为中断返回 。
中断系统:为实现上述中断功能而设置的各种硬件
相关文档
最新文档