第5章—单片机的中断系统
单片机-第五章 单片机中断系统
(1)CPU正在执行一个同级或高优先级的中断服务程序; (2)正在执行的指令尚未执行完; (3)正在执行中断返回指令RETI或者对寄存器IE、IP进 行读/写的指令。 CPU在执行完上述指令之后,要再执行一条指令,才 能响应中断请求。
二、中断响应过程 从中断请求发生直到被响应,准备去执行中断服务程 序,此过程即中断响应过程。中断响应过程一般包括如下几 个阶段: 1、中断采样并置位 中断采样过程:CPU在每个机器周期S5P2期间顺序对 中断源采样、置中断标志。 2、查询标志 在中断采样后的下一个周期的S6按优先级顺序查 询中断标志。
第5章 MCS-51单片机中断系统
5.1.1中断的概念
单片机系统中,CPU和外部设备之间不断进行信息的传 输。通常CPU和外设之间的信息传送方式有以下几种: 程序控制方式 中断方式 直接存储器存取(DMA)方式
1、 程序控制方式 可以分为以下两种方式。 (1)无条件传送方式 外设始终处于就绪状态,CPU不必查询外设的状 态,直接进行信息传输,称为无条件传送方式。 此种信息传送方式只适用于简单的外设。如开 关和数码段显示器等。
三、中断响应的时间
一般来说,中断的响应时间最短为3个机器周期,最长 为8个机器周期。 一般中断请求标志位查询占1个机器周期。而机器周期 又恰好是指令的最后一个机器周期。执行此指令后,CPU 将响应中断,产生硬件长调用指令。 长调用LCALL指令需要2个机器周期。这样,中断响应 时间为3个机器周期。
是不可寻址的
在同级的几个中断源中同时发生请求时, 内部对同级的各中断源的优先级别有一个规 定的查询顺序: 自然优先级
外部中断请求 INT0 最高 定时/计数器 T0 外部中断请求 INT1 定时/计数器 T1 串行口 UART 最低 定时/计数器 T2
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能够检测到电平的跳变。
单片机原理及应用教程(C语言版)-第5章 MCS-51单片机的中断系统
5.2.5 中断允许控制
例5-1 假设允许INT0、INT1、T0、T1中断,试 设置IE的值。 (2)汇编语言程序 按字节操作: MOV IE,#8FH 按位操作: SETB EX0 ;允许外部中断0中断 SETB ET0 ;允许定时器/计数器0中断 SETB EX1 ;允许外部中断1中断 SETB ET1 ;开定时器/计数器1中断 SETB EA ;开总中断控制位
IP (B8H)
D7 —
D6 D5 D4 D3 D2 D1 D0 — PT2 PS PT1 PX1 PT0 PX0
PT2:定时器/计数器T2的中断优先级控制位 PT2设置1则T2为高优先级,PT2设置0则T2为 低优先级。 后面各位均是如此,设置1为高优先级,设置0 为低优先级,不再一一赘述。 PS:串行口的中断优先级控制位。 PT1:定时器/计数器1的中断优先级控制位。 PX1:外部中断1的中断优先级控制位。 PT0:定时器/计数器0的中断优先级控制位。 PX0:外部中断0的中断优先级控制位。
5.2.4 中断请求标志
4.定时器/计数器T2中断请求标志
T2CON D7 D6 D5 (C8H) TF2 EXF2 D4 D3 D2 D1 D0
EXF2:定时器/计数器2的外部触发中断请求标志 位。T2以自动重装或外部捕获方式定时、计数,当 T2EX(P1.1)引脚出现负跳变时,TF2由硬件置1, 向CPU请求中断,CPU响应中断后,EXF2不会被硬 件清0,需要在程序中以软件方式清0。
5.2.3 外中断触发方式
TCON格式如下:
D7 D6 D5 D4 D3 D2 D1 D0
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
IT0=1,外中断0为下降沿触发 CPU在每一个机器周期的S5P2期间对P3.2引 脚采样,若上一个机器周期检测为高电平,紧挨着 的下一个机器周期为低电平,则使IE0置1。 IT1:外中断1触发方式控制位。功能同IT0
MCS51单片机第5章
中断优先级处理原则
同时发生多个中断申请时 多个中断申请时: 对同时发生多个中断申请时: 不同优先级的中断同时申请(很难遇到) ☞不同优先级的中断同时申请(很难遇到) ——先高后低 先高后低 相同优先级的中断同时申请(很难遇到) ☞相同优先级的中断同时申请(很难遇到) ——按序执行 按序执行 ☞正处理低优先级中断又接到高级别中断 ——高打断低 高打断低 ☞正处理高优先级中断又接到低级别中断 ——高不理低 高不理低
MCS-51单片机的中断系统 MCS-51单片机的中断系统 计算机与外设之间交换信息的方式: 计算机与外设之间交换信息的方式: 无条件传送方式:外设对计算机来说总是准备好的。 (1)无条件传送方式:外设对计算机来说总是准备好的。 (2)查询传送方式:传送前计算机先查询外设的状态, 查询传送方式:传送前计算机先查询外设的状态, 若已经准备好就传送,否则就继续查询/等待。 若已经准备好就传送,否则就继续查询/等待。 中断传送方式: (3)中断传送方式:外设通过申请中断的方式与计算 机进行数据传送。 机进行数据传送。 直接存储器存取方式(DMA) (DMA): (4)直接存储器存取方式(DMA):传送数据的双方直 接通过总线传送数据, 不经CPU中转。 CPU中转 接通过总线传送数据, 不经CPU中转。
中断请求的撤除
为了避免中断请求标志没有及时撤除而造成的重复响应同一中 断请求的错误, CPU在响应中断时必须及时将其中断请求标志 断请求的错误, CPU在响应中断时必须及时将其中断请求标志 位撤除。 位撤除。
申请标志 IE0 TF0 IE1 TF1 RI/TI TF2
中断矢量 0003H 000BH 0013H 001BH 0023H 002BH
中断优先级 最高优先级
最低优先级
第05章 MCS-51单片机的中断与定时(1-4)
2
1
TH0
;P1.0输出“0” ;P1.0输出“1”
5.2 MCS-51单片机的中断系统
五、外中断应用举例
1. 中断初始化程序
设置外中断源的触发方式 设置中断允许寄存器IE 设置中断优先级寄存器IP
2. 中断服务程序
保护现场 中断处理 恢复现场
23/65
5.2 MCS-51单片机的中断系统
【例5-3】 设外部中断0为下降沿触发方 式,高优先级,试编写中断初始化程序
5.2 MCS-51单片机的中断系统
【例5-4】 将单脉冲接到外中断0(INT0)引脚,利 用P1.0作为输出,经反相器接发光二极管。编写程 序,每按动一次按钮,产生一个外中断信号,使发 光二极管的状态发生变化,由亮变暗,或反之
P1.0 单脉冲 发生器 INT0
1
+5V
8031
26/65
5.2 MCS-51单片机的中断系统
串口:0023H
20/65
5.2 MCS-51单片机的中断系统
四、中断请求的撤除
1.定时/计数器中断请求标志TF0/TF1会自动撤除 2.串行口中断请求标志TI/RI要用指令撤除
CLR TI ;清TI标志位 CLR RI ;清RI标志位
3.负脉冲触发的外中断请求标志IE0/IE1会自动撤除 4.低电平触发的外中断请求信号需要外加电路撤除
下次课前请预习5.3节
30/65
5.3 51单片机的定时器/计数器
MCS-51单片机内部有两个16位定时/计数器 T0和T1,简称定时器0和定时器1
在特殊功能寄存器TMOD和TCON的控制下, 它们既可以设定成定时器使用,也可以设定 成计数器使用
定时/计数器有4种工作方式,具有中断功能, 可以完成定时、计数、脉冲输出等任务
单片机中断系统
单片机中断系统一、单片机中断系统的概念单片机中断系统是指在程序运行过程中,由于出现特殊情况(如外部设备的输入信号、定时器溢出等),使得单片机暂时停止当前任务的执行,转而执行相应的中断服务程序(ISR),以处理中断事件。
中断处理完毕后,再返回到中断点继续执行原来的任务。
这种特殊的中断机制,使得单片机能够同时处理多个任务,实现了实时性较高的应用程序设计。
二、单片机中断系统的结构单片机中断系统主要由以下几个部分组成:1、中断源:产生中断的外部设备或内部定时器。
2、中断请求寄存器:用于存储各个中断源的中断请求状态。
3、中断优先级寄存器:用于确定多个中断源的优先级。
4、中断服务程序(ISR):用于处理中断事件,执行相应的操作。
5、中断返回:中断处理完毕后,返回原程序继续执行。
三、单片机中断系统的处理过程当单片机检测到某个中断源发出中断请求时,会暂停当前任务的执行,按照优先级顺序执行相应的中断服务程序(ISR)。
在ISR中,程序会读取中断源的中断请求状态,并对相应的中断源进行处理。
处理完毕后,程序会返回原程序继续执行。
如果此时还有其他的中断源发出中断请求,则根据优先级顺序再次执行相应的ISR。
四、单片机中断系统的应用单片机中断系统在实时控制、数据采集、通信等领域有着广泛的应用。
例如,在工业控制中,当某个传感器发出中断请求时,单片机可以暂停当前任务的执行,转而执行相应的中断服务程序(ISR),对传感器数据进行采集和处理。
处理完毕后,再返回原程序继续执行。
这样,单片机可以在不丢失任何数据的情况下,实时地响应外部设备的请求。
五、总结单片机中断系统是实现实时控制和数据处理的重要手段之一。
通过合理的配置和使用中断系统,可以提高单片机的实时性能和数据处理能力。
在实际应用中,需要根据具体的需求和硬件条件选择合适的单片机型号和中断系统配置方案,以满足系统的实时性和稳定性要求。
单片机的中断系统在嵌入式系统设计中,单片机因其体积小、性价比高、可靠性强等特性被广泛应用。
第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,否则会再 一次引起中断响应。
《单片机原理及应用设计》-胡辉-电子教案-2910 单片机系统5
3.中断处理
▪ 中断处理(又称中断服务)程序从入口地址 开始执行,直到返回指令“RETI”为止,这 个过程称为中断处理。此过程一般包括两部 分内容,一是保护现场,二是处理中断源的 请求。
位。当 IT1=0,外部中断l为电平触发方式。 • 若IT1=1,外部中断1控制为边沿触发方式。 ▪ 2)TCON.0 IT0:外部中断0触发方式控制位。
▪ 5.2.2 外部中断的系统设计应用
外设数据经P1口输 入单片机,每准备 好一个数据,外设 发出选通信号,经 触发器和非门至 INT0。
P1口
响应中断后不会自动清除RI标志,必须由软件清除。
5.1.3 中断的控制
3.中断允许控制寄存器IE
D7 D6 D5 D4 D3 D2 D1 D0
EA
ES ET1 EX1 ET0 EX0
0 禁止,1允许
▪ 1)IE.7 EA:CPU中断总允许位。EA=1,CPU开放中断, 每个中断源是被允许还是被禁止,分别由各自的允许位 确定;EA=0,CPU屏蔽所有的中断要求,称关中断。
周期不是当前指令的最后一个周期,则不行; ③ 若现行指令是RETI、RET或访问IE、IP指令,则 需要执行到当前指令及下一条指令方可响应。
2.响应过程 ① 置位中断优先级有效触发器,即关闭同级和低级
中断: ② 调用入口地址,断点入栈,相当于LCALL指令; ③ 进入中断服务程序。
响应时间--从查询中断请求标志位到转向中断服务 入口地址所需的机器周期数。 (1)最快响应时间 以外部中断的电平触发为最快。 从查询中断请求信号到中断服务程序需要三个机器 周期:
第5章AT89S51单片机的中断系统PPT课件
时, 由硬件清“0”IE0 (边沿触发方式)。
IT0:外部中断0触发方式控制位,其意义和功能与IT1类似。
7
2.串行口中断 SCON为串行口控制寄存器,字节地址为98H。SCON的低二位 锁存串行口的接收中断和发送中断标志,其格式如下:
1 0
1
0
0
图5-2 AT89S51中断系统示意图
高 级 中 断
低 级 中 断
5
1.定时器/计数器中断锁存寄存器TCON TCON为定时器/计数器T0、T1的控制寄存器,同时也锁存T0、T1的 溢出中断源和外部请求中断源等,与中断源有关的位如下:
TCON D 7 位 地 址T F 1
8FH
D 6
D 5 T F 0 8DH
1 0
1 TI
中断标志位 TCON
外部 中断0 ( IE0)
定时 器0
( TF0)
外部 中断1 ( IE1)
定时 器1
( TF1)
TX
串 TI
行
+
RX
口 RI
SCON
中断允许寄存器 IE
中断优先寄存器 IP
PX0 EX0
PT0 ET0
PX1 EX1
PT1 ET1
PS
ES
EA
源允许 总允许
1
0
1
0
1
1 0
9
3.中断允许控制 AT89S51中断允许和禁止由寄存器控制。中断允许寄存器(
IE)的字节地址为A8H,其格式如下:
位地址 AFH AEH 符 号 EA --
ADH ACH ABH AAH A9H A8H ET2 ES ET1 EX1 ET0 EX0
单片机原理及其接口技术--第5章 MCS-51单片机中断系统
下来,这称为保护现场,由用户自己编程完成。
保护断点和现场后即可执行中断服务程序,执行完毕, CPU由中断服务程序返回主程序。 主目录 上一页 下一页 结 束
15
……
响应
单片机原理及其接口技术
主程序A
断点
返回
中断返回过程如下:
RETI 中断服务程序B
首先恢复原保留寄存器的内容和标志位的状态,这称为恢 复现场,由用户编程完成。 然后,再加返回指令RETI,RETI指令的功能是恢复PC值, 使CPU返回断点,这称为恢复断点。 恢复现场和断点后,CPU将继续执行原主程序,中断响应 过程到此为止。 主目录 上一页 下一页 结 束
主目录 上一页 下一页 结 束
单片机原理及其接口技术
5.2.2 中断标志与中断控制
1.中断标志
(1) 定时器控制寄存器TCON
SFR之一,锁存中断请求标志,字 节地址88H,可位寻址。
其结构、位名称、位地址及其功能 如表5.1所示。
主目录 上一页 下一页 结 束
单片机原理及其接口技术 表5.1 TCON的结构、位名称、位地址和功能
单片机原理及其接口技术
第5章 MCS-51单片机中断系统
教学目标 5.1 中断概述 5.2 MCS-51中断系统 5.3 中断系统的应用 本章小结 思考题与习题主目录上一页来自下一页结束
单片机原理及其接口技术
教学目标
通过本章教学,要求达到以下目标: 1.熟记MCS-51 5个中断源及其中断入口地址。 2.熟悉TCON、SCON、IE、IP的结构、控制 作用和设置方法。 3.理解MCS-51中断响应过程。 4.了解中断响应等待时间。 5.理解中断请求撤除情况和应对措施。 6.熟悉中断优先控制的方法。 7.掌握中断应用程序的编制方法。
AT89C51单片机的中断系统
(3)IE1—外部中断请求1的中断请求标志位。 IE1=0,无中断请求。 IE1=1,外部中断1有中断请求。当CPU响应该中断,转向中 断服务程序时,由硬件清“0”IE1。
• 程序如下: L0: MOV DX,PST
•
IN AL,DX
D0
•
TEST AL,01H; 00000001 判D0
•
JZ L0 ;D0为1下走,为0→L0
•
MOV AL,BL;
•
MOV DX,PDATA
•
OUT DX,AL;DX←数据
5.2 AT89C51单片机中断系统的结构
有5个中断请求源,两个中断优先级,可两级嵌套。
图5-1所示。对事件的整个处理过程,称为中断处 理(或中断服务)。
图5-1 中断响应和处理过程
能够实现中断处理功能的部件称为中断系统;产生中断的 请求源称为中断请求源。 中断源向CPU提出的处理请求,称为中断请求(或中断申请)。 进入中断→保护现场→中断处理恢复现场→中断返回 优点:大大地提高了CPU的工作效率。
第5章 AT89C51单片机的中断系统
实时测控,单片机能及时地响应和处理单片机外部事件或 内部事件所提出的中断请求。
5.1 中断的概念
CPU正在执行程序时,单片机外部或内部发生的某一事件, 请求CPU迅速去处理。
CPU暂时中止当前的工作,转到中断服务处理程序处理所 发生的事件。处理完该事件后,再回到原来被中止的地方, 继续原来的工作,这称为中断。 CPU处理事件的过程,称为CPU的中断响应过程。
D7~D0
DB
AB M/IO CPU
WR
RD
端口 译码器
输出 锁存器
74LS373
往输出 设备
单片机-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溢出中断 出厂前已由厂家固化顺序 ——事先约定 高
单片机讲义(第五章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计数溢出中断。
单片机基础(第3版)——第5章
第一部分:主程序初始化 此部分必须编写
功能:
用于设置堆栈位置; 定义触发方式(低电平触发或脉冲下降沿触发) 对IE和IP赋值等; 第二部分:须由主程序完成的其它功能。
1.中断系统的程序编制
(2)选择中断服务程序的入口地址。 (3)编制中断服务程序。
即明确中断服务程 序的起始位置
DJNZ R6,D2 DJNZ R5,D1 RET INT0: PUSH PSW ;保护PSW,ACC值 PUSH ACC MOV A,#00H ;使8个LED全亮 MOV R2,#6 ;闪烁3次(全亮全灭各3次) L4:MOV P1,A ;A值送出 LCALL DELAY ;延时0.2秒 CPL A ;A值取反 DJNZ R2,L4 ;闪烁3次? POP ACC ;恢复保护的A值 POP PSW ;恢复保护的PSW值 RETI ;返回主程序 END
4.3定时/计数器
1. 日常生活中定时、计数的例子: 2 . 单片机应用系统中定时计数的需求:
如用单片机控制的打铃器、空调的定时开关、啤酒自 动生产线上对酒瓶的计数装置等。 3 . 80C51单片机片内的定时/计数器: 两个16位可编程的定时/计数器:T0和T1,都能定 时和对外部事件进行计数。 此外,T1还可以作为串行接口的波特率发生器。
说明:此时串口的优先级高于外部中断0的优先级
答案:
此时CPU按自然优先级顺序确定该响应哪个
中断请求。
如果几个同级别的中断 源同时申请中断,CPU 如何响应?
注意: 自然优先级由硬件决定,用户不能更改。 排列见表4-2
表4-2
中断入口地址及自然优先级
3.定时/计数器及外部中断控制寄存器TCON • 功能:
3.中断系统
第5章 STC15F2K60S2单片机中断系统
TI:串行口1发送中断标志。串行口1以方式0发送时,每当 发送完8位数据,由硬件置1;若以方式1、方式2或方式3发 送时,在发送停止位的开始时置1。TI为1表示串行口已发送 一帧数据,串行口1正在向CPU申请中断(发送中断)。值得注 意的是,CPU响应发送中断请求,转向执行中断服务程序时 并不将TI清0,TI必须由用户在中断服务程序中清0。 SCON寄存器的其他位与中断无关,将在后续相关章节 介绍。
3. ADC_CONTR寄存器
ADC_CONTR为A/D转换控制寄存器,字节地址为BCH,
ADC_POWER:ADC电源控制位。当ADC_POWER为0时,关闭ADC电源; 当ADC_POWER为1时,打开ADC电源。 ADC_FLAG:ADC转换结束标志位,可用于请求A/D转换的中断。 当A/D转换完成后ADC_FLAG置1,要用软件清0。不管是A/D转换完 成后由该位申请产生中断,还是由软件查询该标志位A/D转换是 否结束,当A/D转换完成后,ADC_FLAG为1,一定要软件清0。 ADC_START:ADC转换启动控制位,设置为1时,开始转换,转换 结束后为0。 A/D转换控制寄ADC_CONTR中的其他位与中断无关,将在后续 相关章节介绍。
IT0:外部中断0中断触发方式选择位,功能与IT1类似。
2. SCON和S2CON寄存器
SCON为串行口1控制寄存器,包括了串行口发送和接收 中断的请求标志位TI和RI。SCON寄存器的字节地址为98H,可 位寻址,其格式如下:
RI:串行口1接收中断标志。若串行口1允许接收且以方式0 工作,则每当接收到第8位数据时置1;若以方式1、方式2或 方式3工作且SM2=0时,则每当接收到停止位的中间时置1; 当串行口以方式2或方式3工作且SM2=1时,则仅当接收到的 第9位数据RB8为1后,同时还要接收到停止位的中间时置1。 RI为1表示接收器已接收到一帧数据,串行口1正向CPU申请 中断(接收中断),RI必须由用户的中断服务程序清0。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
L2:
L3: INT_1:
第5章 中断系统和定时器
定时器/计数器的工作方式与控制
第5章 中断系统和定时器
8051单片机有2个16位的定时/计数器T0和 T1。 T0由2个特殊功能寄存器TH0和TL0构成
T1则由TH1和TL1构成。
作计数器时,通过引脚T0(P3.4)和T1( P3.5)对外部脉冲信号计数,当输入脉冲信 号从1到0的负跳变时,计数器就自动加1。计 数的最高频率一般为振荡频率的1/24。
B8H
PX0
自然优先顺序,逐渐↓
PS:串口优先级设定位,1→高优先级,0→低优先级
PT1和PT0:T1和T0的优先级设定位,1→高优先级, 0→低优先级
PX1和PX0:INT1和INT0的优先级设定位,1→高优先 级,0→ 低优先级
第5章 中断系统和定时器
IP (B8H)
BFH
——
BEH ——
BDH ——
{ 函数体语句 }
using m 指定该中断服务程序要使用的工作寄存器 组号,m为0~3。
若缺省using项,则编译系统默认为是当前工作寄 存器组。
第5章 中断系统和定时器
实例2 多中断源解决方案
8051单片机只有2个外部中断源 可采用硬件请求和软件查询相结合的办法进行 扩展 然后在中断服务程序中通过查询I/O端口的状态 来区分是哪个中断源引起的中断。 查询的次序就决定了同一优先级中断中的优先 级。
D7H CY
D6H
AC
D5H F0
D4H RS1
D3H RS0
D2H OV
D1H F1
D0H P
(D0H)
TCON复位值00H,默认状态为: 无中断请求+电平触发
第5章 中断系统和定时器
(2)串口控制寄存器(SCON)
SCON (98H)
9FH
SM0 9EH SM1 9DH SM2
9CH
REN
9BH
IE1和IE0: INT1和INT0的标志位 引脚状态变化后由硬件自动置1 →外部中 断请求 中断响应后标志位自动清零
第5章 中断系统和定时器
TCON (88H)
8FH TF1
8EH TR1
8DH TF0
8CH TR0
8BH IE1
8AH IT1
89H IE0
88H IT0
IT1和IT0:INT1和INT0的触发方式选择位 0→电平,1→脉冲
(3)中断允许寄存器(IE)
IE (A8H)
AFH EA AEH —— ADH —— ACH ES ABH ET1 AAH EX1 A9H A8H EX0
ET0
EA:中断总允许位,1→开放全部中断,0→禁止全部中断
ES:串口中断允许位,1→允许,0→禁止
ET1和ET0:定时中断允许位,1→允许,0→禁止 EX1和EX0:外部中断允许位,1→允许, 0→禁止
定时器/计数器共有四种工作方式 (1). 方式0—13位方式
振荡器 1/12
C/T=0 定时 器
TL0 TH0 T0 TR0 GATE INT0
计数脉冲输入
TF0
C/T=1
1 & ≥1 计数 器
低 5位 8位
13位计数器
第5章 中断系统和定时器
(2). 方式1—16位方式
振荡器
T0 TR0 GATE INT0 1
第5章 中断系统和定时器
中断系统的结构小结
第5章 中断系统和定时器
(1)中断响应条件
• 有中断请求(标志位置1)
• 中断总允许位EA=1,即CPU要开中断
• 中断源允许位为1,即没有被屏蔽 • 无同级或者更高级中断正在被服务
第5章 中断系统和定时器
(2)中断响应的过程
• • • • 机器周期的S6期间,CPU对中断标志位采样 阻断同级或低级中断 将程序断点存入栈区 中断矢量地址装入PC,转入对应的入口地址 中断响应时间为3~8个机器周期
第5章 中断系统和定时器
第5章 中断系统和定时器
汇编语言源程序清单
主程序
ORG 0000H LJMP MAIN ORG 0003H LJMP INT_0 ORG 0013H LJMP INT_1 ORG 0030H ANL P1, #55H SETB EX0 SETB IT0 SETB EX1 SETB IT1 SETB EA SJMP HERE ;复位入口 ;转到主程序 ;外部中断 入口 ;转到中断服务程序 ;外部中断 入口 ;转到中断服务程序 ;主程序入口 ;主程序开始,熄灭LED,准备输入查询 ;允许INT0中断 ;负边沿触发方式 ;允许INT1中断 ;负边沿触发方式 ;开中断 ;等待中断
低电平有效
负边沿有效
边沿触发在脉冲结束后,中断请求信号即可自行消失 但电平触发信号却不会立即自行消失→引起继续中断请求 建议减量采用边沿触发方式
第5章 中断系统和定时器 TCON
(88H) PSW
8FH 8EH
8DH TF0
8CH
8BH
8AH
89H IE0
88H
TF1
TR1
TR0
IE1
IT1
IT0
第5章 中断系统和定时器
一、定时器/计数器的功能
定时/计数器的核心部件是二进制加1计数器 (TH0、TL0或TH1、TL1) 。
1. 定时功能----计数输入信号是内部时钟脉 冲,每个机器周期使技数器的值加1。 2. 计数功能----计数脉冲来自相应的外部输入 引脚,T0为P3.4,T1为P3.5。 在特殊功能寄存器TMOD中,有一个控制位(C/T ),分别用于控制定时/计数器工作在定时器方式 还是计数器方式。
第5章 中断系统与定时器
5.1中断的概念、处理过程和应用 5.2 定时器/计数器的工作方式和应用
第5章 中断系统和定时器
日常生活的中断现象举例
某人正在看报
去接电话 跑向厨房
电话铃响了
水开了
关煤气、灌开水 继续接电话
继续看报
第5章 中断系统和定时器
计算机的中断应用举例
正在执行显示程序
处理键盘扫描 看门狗 时间到 继续处理键盘扫描
第5章 中断系统和定时器
(2).定时器控制寄存器TCON
D7 TF1 D6 TR1 D5 TF0 D4 TR0 D3 IE1 D2 IT1 D1 IE0 D0 IT0
中断请求标志
启动定时/计数器 触发方式选择
0 停止 1 启动 0 低电平 1 下降沿
第5章 中断系统和定时器
三、定时器/计数器的工作方式
TB8
9AH
RB8
99H
TI
98H RI
TI:串口发送中断标志位,一帧内部数据被送入发送缓冲器 后由硬件自动置1→发送中断请求 中断响应后,标志位需要用软件方式撤销
RI:串口接收中断标志位,一帧外部数据被送入接 收缓冲器后由硬件自动置1 →接收中断请求
中断响应后,标志位需要用软件方式撤销
第5章 中断系统和定时器
3、这种程序结构的意 义是什么?
第5章 中断系统和定时器
解答:
1、int0_srv() 是一个中 断服务程序,是系统在 感受到某种特定信息后 自动启动的;
2、那几个变量赋值语 句是针对中断系统的管 理命令;
3、可使系统实现多任 务操作功能。
第5章 中断系统和定时器
中断是指在突发事件到来时先中止当前正在进行 的工作,转而去处理突发事件。待处理完成后, 再返回到原先被中止的工作处,继续进行随后的 工作。
第5章 中断系统和定时器
(3)中断请求的撤除 中断响应后,中断请求标志位和中断请求信号应及 时清除,否则就意味着中断请求仍然存在。
第5章 中断系统和定时器
中断处理(中断服务程序)
关中断(防止高级中断对现场保护的干扰) 可视需 保护现场(将PSW,Rn,A等内容压入堆栈) 要缺省 开中断(允许高级中断请求) 中断服务(处理中断事件) 关中断(防止高级中断对现场恢复的干扰) 可视需 恢复现场(将PSW,Rn,A等内容弹出堆栈) 要缺省 开中断(允许高级中断请求) 中断返回(断点弹出→”优先级激活“触发器复位)
外设1
MCU 外设2 MCU 温度 压力 断电
外设n
第5章 中断系统和定时器
80C51具有五个中断源:
引脚P3.2的电平/脉冲变化——外部中断0,INT0
引脚P3.3的电平/脉冲变化——外部中断1,INT1 定时/计数器0产生溢出——定时器0中断,T0
定时/计数器1产生溢出——定时器1中断,T1
串口一帧数据发送/接收完成——串口中断,TI/RI
1/12
C/T=0 C/T=1 & TL0 TH0 TF0 8位 8 位
16位计数器
≥1
第5章 中断系统和定时器
(3). 方式2—8位自动装入时间常数方式
振荡器 1/12
C/T=0 TL0 TF0
C/T=1
T0 TR0
GATE INT0
1
&
≥1
TH0
第5章 中断系统和定时器
(4). 方式3—双8位方式 仅T0可以工作在方式3—此时T0分成2个独立的 计数器—TL0和TH0 ,前者用原来T0的控制信 号(TR0、TF0),后者用原来T1的控制信号( TR1、TF1)。
第5章 中断系统和定时器
IE (A8H)
AFH EA
AEH ——
ADH ——
ACH ES
ABH ET1
AAH EX1
A9H ET0
A8H
EX0
第5章 中断系统和定时器
(4)中断优先级寄存器(IP)
IP (B8H)
BFH
—— BEH —— BDH ——