第5章STC15F2K60S2单片机中断系统.ppt
合集下载
单片机课件第5章 中断

• 在中断服务程序中用下面2条指令撤消中断 请求: • ANL P1,#0FEH ;是P1.0输出0 • ORLP1,#01H ;是P1.0输出1 • 这两条指令执行后,是P1.0输出一个负脉冲, 其持续时间为2个机器周期,足以使D触发 器置位,而撤消端口外部中断请求。
5.5 扩充外部中断的方法
例:在20H单元存放两位16进制数,编程将它们 分别转换成ASCII码并存入21H、22H单元。
• • • • • • • • • • • ORG 2000H MOV SP,#50H MOV DPTR,#TAB PUSH 20H ACALL HASC POP 21H MOV A,20H SWAP A PUSH ACC ACALL HASC POP 22H ORG 2200H HASC:DEC SP DEC SP POP ACC ANL A,#0FH MOVC A,@A+DPTR PUSH ACC INC SP INC SP RET TAB:DB ‘01234567’ DB ‘89ABCDEF’
2.串行口控制寄存器SCON(98H)
• RI和TI:串行口内部表示中断申请标志位。 串行口接收中断RI和发送中断TI逻辑“或” 以后作为内部的一个中断源。当串行口发 送或接收完一帧数据时,将SCON中的TI或 RI位置1,向CPU申请中断。在CPU响应串 行口的中断时,并不清零TI和RI中断标志, TI和RI必须由软件清0。 • 定时器的溢出中断TF:硬件中断、硬件清 零。
• IE1:外部中断 INT1(P3.3)请求标志位。当CPU检测 到在引脚上出现的外部中断信号(低电平或脉冲下 降沿)时,由硬件置位IE1=1,请求中断。 • IT1:外部中断请求类型(触发方式)控制位。 – IT1=0:外部中断1程控为电平触发方式 ;当 (P3.3) 输入低电平时,置位IE1=1,申请中断。 – IT1=1:外部中断1程序控制为边沿触发方式 ; CPU在每个机器周期的S5P2采样 (P3.3)输入电平。 若相继的两次采样,一个周期采样为高电平,接 着下个周期采样为低电平,置位IE1=1,表示外部 中断1正在向CPU申请中断,直到该中断被CPU响 应时,IE1由硬件自动清0。
单片机原理与应用 第3版课件-STC15F系列单片机中断系统

中断源
中断响应过程
5.1 中断系统概述
❖ 中断的作用
解决高速CPU与低速外设的匹配问题 及时处理突发事件 实时控制 实现人机联系 实现多机联系
5.1 中断系统概述
❖ 中断系统的几个概念
中断系统 中断源 中断请求 中断响应过程 中断服务 中断返回 主程序 中断服务程序
主程序 随机事件
本章主要内容和学习目标?中断系统概述?stc15f系列单片机的中断系统结构?stc15f系列单片机的中断源?中断标志中断允许中断优先级等控制?中断响应过程?中断服务函数及其应用51中断系统概述?应用中的几个问题?高速与低速设备之间的协同工作?突发事件处理?随机事件处理?人机联系方式51中断系统概述?某人看书?电话铃响?暂停看书?书中作记号?电话谈话?继续看书执行主程序中断信号暂停执行主程序pc当前值入栈保存执行中断服务程序返回主程序日常事务中断请求中断响应保护断点中断服务中断返回51中断系统概述?所谓中断是指程序执行过程中允许外部或内部事件通过硬件打断程序的执行使其转向为处理外部或内部事件的中断服务程序中去完成中断服务程序后cpu返回继续执行被打断的程序
5.3 STC15F系列单片机中断系统的控制
❖ 中断标志寄存器
串行口1控制寄存器SCON
SCON是串行口1控制寄存器,锁存了串行口1的发送、接收中断标志位TI和RI。 地址为98H,复位值为00H。
位号
B7
B6 B5 B4 B3 B2 B1 B0
位名称 SM0/FE SM1 SM2 REN TB8 RB8 TI RI
❖ 规则的力量
任何事物都不是独立存在的,都有其自身内在的规律性,必须要掌握事物的内在规律,并 合理的利用好。
本章主要内容和学习目标
STC15F2K60S2系列单片机 中断系统

的中断源,实现中断优先级的控制;
•
(5)当CPU正在执行低优先级中断源中断服务程序时,若这时
优先级比它高的中断源也提出中断请求,要求能暂停执行低优先级
中断源的中断服务程序转去执行更高优先级中断源的中断服务程序
,实现中断嵌套,并能逐级正确返回原断点处。
返回目录
7.2 STC15F2K60S2单片机的中
•
地址 B7
B6
B5
B4
B3
B2
B1
B0
复位值
TCON 88H TF1
TR1
TF0
TR0
IE1
IT1 IE0
SCON S2CON PCON ADC_CO
NTR
SM2 REN
TB8
9AH S2SM0 S2SM0 S2SM0 S2REN S2TB8
87H BCH CDH
高 级
中
断
断点
服
务
继
程
续
序
执
行
RETI
返回目录
7.1 中断系统概述 7.1.1 中断系统的几个概念
•
2. 中断源
•
引起CPU中断的根源或原因,称为中断源。中断源
向CPU提出的处理请求,称为中断请求或中断申请。
•
3. 中断优先级
•
当有几个中断源同时申请中断时,那么就存在CPU
先响应哪个中断请求的问题?为此,CPU要对各中断源确定
返回目录
7.1 中断系统概述 7.1.2 中断的技术优势
•
⒈ 解决了快速CPU和慢速外设之间的矛盾,可使CPU和
外设并行工作
•
⒉ 可及时处理控制系统中许多随机参数和信息
•
单片机的中断系统ppt课件

89C51中断控制
TCON TF1
TF0
IE1 IT1 IE0 IT0
3、IE1:外部中断1的中断请求标志。 INT1(P3.3)。 当检测到外部中断引脚1 上存在有效的中断请求信 号时,由硬件使IE1置1。当CPU响应中断请求时, 由硬件使IE1清0。
4、IE0:外部中断0的中断请求标志。INT0(P3.2)。 其含义与IE1类同。
程
完整最新ppt
5
单击此处编辑母版标题样式
中断的意义
一、中断的概念
I. 可实现分时操作(CPU与多个外设并行工作) II. 可实现实时处理(被控对象信息随机变化) III. 可进行故障处理(及时处理突发事件)
完整最新ppt
6
单击此处编辑母版标题样式
二、89C51中断系统结构及中断控制
89C51的结构
1、TF1:定时器/计数器T1溢出中断请求标志位。
当启动T1计数后,T1从初值开始加1计数,计数 器最高位产生溢出时,由硬件使TF1置1,并向 CPU发出中断请求。当CPU响应中断时,硬件 将自动对TF1清0。
2、TF0:定时器/计数器T0溢出中断请求标志位。
含义与TF1类同。
11
完整最新ppt
单击此各处控编制辑位母的版含标义题样式
字节地址:98H
SCON
位地址
TI RI 99H 98H
完整最新ppt
16
单击SC此ON处中编控辑制母位版的标含题义样式
89C51中断控制
SCON
TI RI
1、TI:串行口发送中断请求标志。
CPU将一个数据写入发送缓冲器SBUF时,就 启动发送。每发送完一帧串行数据后,硬件置位 TI。但CPU响应中断时,并不清除TI,必须在中断 服务程序中由软件对TI清0。
单片机的中断系统PPT学习教案

1、 中 断 响 应 CPU响应中断的基本条件为:
(1)有中断源发出中断请求; (2)中断总允许位EA=1,即CPU开 中断; (3)申请中断的中断源的中断允许位 为1。
第5章 单片机的中断系统
第31页/共47页
CPU响应中断后的操作过程: 1. 2. 3. 4. 5.
中断优先级查询,阻止后来的同级或 低级中 断请求 。 保护断点,即把程序计数器PC的内容 压入堆 栈保存 。 清除中断请求标志位。 调用中断函数并开始运行。 返回断点继续运行。
第35页/共47页
重新认识实例1的程序
第5章 单片机的中断系统
【注意】 中断允许设置也可采用位变量实现,即EX0=1,EA=1;
第36页/共47页
1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9
实 例 2 将第4章实例3改用中断方式实现
RP2
U1
19 XTAL1 18 XTAL2
第5页/共47页
实例1 单片机开关状态检测
要求:若有按键压下→D1 状态反转。
第5章 单片机的中断系统
查询 法
中断 法
第6页/共47页
第5章 单片机的中断系统
运行效果
第7页/共47页
问题: 1、中断函数为何能自动执行? 2、主函数中变量赋值语句的作用?
解释: 1、当P3.2引脚出现负脉冲时,系统调 用了该 中断函 数; 2、进行中断初始化工作。
=1,高优先级 =0,低优先级
TX/R X的中 断优 先级 标志
T1的中 断优先 级标志
INT1的 中断优 先级标 志
T0的 中断优 先级标 志
INT0的 中断优 先级标 志
第22页/共47页
第5章 单片机的中断系统
(1)有中断源发出中断请求; (2)中断总允许位EA=1,即CPU开 中断; (3)申请中断的中断源的中断允许位 为1。
第5章 单片机的中断系统
第31页/共47页
CPU响应中断后的操作过程: 1. 2. 3. 4. 5.
中断优先级查询,阻止后来的同级或 低级中 断请求 。 保护断点,即把程序计数器PC的内容 压入堆 栈保存 。 清除中断请求标志位。 调用中断函数并开始运行。 返回断点继续运行。
第35页/共47页
重新认识实例1的程序
第5章 单片机的中断系统
【注意】 中断允许设置也可采用位变量实现,即EX0=1,EA=1;
第36页/共47页
1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9
实 例 2 将第4章实例3改用中断方式实现
RP2
U1
19 XTAL1 18 XTAL2
第5页/共47页
实例1 单片机开关状态检测
要求:若有按键压下→D1 状态反转。
第5章 单片机的中断系统
查询 法
中断 法
第6页/共47页
第5章 单片机的中断系统
运行效果
第7页/共47页
问题: 1、中断函数为何能自动执行? 2、主函数中变量赋值语句的作用?
解释: 1、当P3.2引脚出现负脉冲时,系统调 用了该 中断函 数; 2、进行中断初始化工作。
=1,高优先级 =0,低优先级
TX/R X的中 断优 先级 标志
T1的中 断优先 级标志
INT1的 中断优 先级标 志
T0的 中断优 先级标 志
INT0的 中断优 先级标 志
第22页/共47页
第5章 单片机的中断系统
单片机第中断系统 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
第5章 STC15F2K60S2单片机中断系统

精品课件
5.3 中断允许及其优先级管理
STC15F2K60S2单片机的中断允许控制及优先级控制 分别由中断允许寄存器IE、IE2、INT_CLKO(AUXR2)以 及中断优先级控制寄存器IP、IP2等控制。
5.3.1 中断允许寄存器 STC15F2K60S2单片机中的各中断源是否开放或禁止,
是由内部的中断允许寄存器IE、IE2、INT_CLKO控制。中 断采用两级控制方式,即总中断和各中断源分别独立控制。
精品课件
➢TF1:定时/计数器T1的溢出中断标志位。当启动T1计数 后,从初值开始计数,当产生溢出后由硬件将TF1置1,向 CPU请求中断,一直保持到CPU响应中断时,才由硬件清0, TF1也可由软件清0。 ➢TR1:定时/计数器T1的运行控制位。当TR1为1 时运行, 为0时停止运行。 ➢TF0:定时/计数器T0溢出中断标志。其功能与TF1类似。 ➢TR0:定时/计数器T0的运行控制位。其功能与TR1类似。
精品课件
➢TI:串行口1发送中断标志。串行口1以方式0发送时,每 当发送完8位数据,由硬件置1;若以方式1、方式2或方式3 发送时,在发送停止位的开始时置1。TI为1表示串行口已发 送一帧数据,串行口1正在向CPU申请中断(发送中断)。值得 注意的是,CPU响应发送中断请求,转向执行中断服务程序 时并不将TI清0,TI必须由用户在中断服务程序中清0。
精品课件
STC15F2K60S2 单片机中断系统结
构示意图
精品课件
5.2.2 中断源标志寄存器
1. TCON寄存器 TCON寄存器为定时/计数器T0、T1的控制寄存器,该
寄存器包括了T0和T1的溢出中断请求标志位TF0和TF1,也 包括了外部中断0(INT0)和外部中断1(INT1)的中断请 求标志位IE0和IE1,以及外部中断0和外部中断1的中断源的 触发方式。TCON寄存器的字节地址为88H,可位寻址,其 格式如下:
5.3 中断允许及其优先级管理
STC15F2K60S2单片机的中断允许控制及优先级控制 分别由中断允许寄存器IE、IE2、INT_CLKO(AUXR2)以 及中断优先级控制寄存器IP、IP2等控制。
5.3.1 中断允许寄存器 STC15F2K60S2单片机中的各中断源是否开放或禁止,
是由内部的中断允许寄存器IE、IE2、INT_CLKO控制。中 断采用两级控制方式,即总中断和各中断源分别独立控制。
精品课件
➢TF1:定时/计数器T1的溢出中断标志位。当启动T1计数 后,从初值开始计数,当产生溢出后由硬件将TF1置1,向 CPU请求中断,一直保持到CPU响应中断时,才由硬件清0, TF1也可由软件清0。 ➢TR1:定时/计数器T1的运行控制位。当TR1为1 时运行, 为0时停止运行。 ➢TF0:定时/计数器T0溢出中断标志。其功能与TF1类似。 ➢TR0:定时/计数器T0的运行控制位。其功能与TR1类似。
精品课件
➢TI:串行口1发送中断标志。串行口1以方式0发送时,每 当发送完8位数据,由硬件置1;若以方式1、方式2或方式3 发送时,在发送停止位的开始时置1。TI为1表示串行口已发 送一帧数据,串行口1正在向CPU申请中断(发送中断)。值得 注意的是,CPU响应发送中断请求,转向执行中断服务程序 时并不将TI清0,TI必须由用户在中断服务程序中清0。
精品课件
STC15F2K60S2 单片机中断系统结
构示意图
精品课件
5.2.2 中断源标志寄存器
1. TCON寄存器 TCON寄存器为定时/计数器T0、T1的控制寄存器,该
寄存器包括了T0和T1的溢出中断请求标志位TF0和TF1,也 包括了外部中断0(INT0)和外部中断1(INT1)的中断请 求标志位IE0和IE1,以及外部中断0和外部中断1的中断源的 触发方式。TCON寄存器的字节地址为88H,可位寻址,其 格式如下:
单片机原理及应用中断系统ppt课件

5.1
中断控制方式
■ 中断系统需解决的基本问题
◆ 中断源:
中断请求信号的来源。包括中断请求信号的产生及该信号 怎样被CPU有效地识别。而且要求中断请求信号产生一次,只 能被CPU接收和处理一次,即不能一次中断申请被CPU多次响 应。这就涉及到中断请求信号的及时撤除问题。
◆ 中断响应与返回:
CPU采集到中断请求信号后,怎样转向特定的中断服务子 程序及执行完中断服务子程序怎样返回被中断的程序继续正确 地执行。中断响应与返回的过程中涉及到CPU响应中断的条件、 现场保护等问题。
5.2
MCS-51单片机的中断系统
■ 51单片机中断源 ◆ 外部中断
特殊功能寄存器TCON的格式定义如下:
Байду номын сангаас
D7
D6
D5
D4
D3
D2
D1
D0
TCON
字节地址
IE1 IT1 IE0 IT0
88H
IT0(IT1):外部中断0(或1)触发方式控制位。 IT0(或IT1)被设置为“0”,则选择外部中断为电 平触发方式;IT0(或IT1)被设置为“1”,则选择 外部中断为跳变触发方式。
为了规范事业单位聘用关系,建立和 完善适 应社会 主义市 场经济 体制的 事业单 位工作 人员聘 用制度 ,保障 用人单 位和职 工的合 法权益
5.1
中断控制方式
■ 中断系统需解决的基本问题
◆ 中断嵌套:
当CPU响应某个中断请求而正在进行中断处理时,若有更 高优先级别的中断源发出中断申请,则CPU将自动中断正在执 行的中断服务程序,并保存该中断程序断点(类似于子程序嵌 套),转而去执行高级别中断的中断服务程序;当高级别中断 处理完毕后,再继续执行被中断的中断处理程序。这个过程被 称为中断嵌套。
中断控制方式
■ 中断系统需解决的基本问题
◆ 中断源:
中断请求信号的来源。包括中断请求信号的产生及该信号 怎样被CPU有效地识别。而且要求中断请求信号产生一次,只 能被CPU接收和处理一次,即不能一次中断申请被CPU多次响 应。这就涉及到中断请求信号的及时撤除问题。
◆ 中断响应与返回:
CPU采集到中断请求信号后,怎样转向特定的中断服务子 程序及执行完中断服务子程序怎样返回被中断的程序继续正确 地执行。中断响应与返回的过程中涉及到CPU响应中断的条件、 现场保护等问题。
5.2
MCS-51单片机的中断系统
■ 51单片机中断源 ◆ 外部中断
特殊功能寄存器TCON的格式定义如下:
Байду номын сангаас
D7
D6
D5
D4
D3
D2
D1
D0
TCON
字节地址
IE1 IT1 IE0 IT0
88H
IT0(IT1):外部中断0(或1)触发方式控制位。 IT0(或IT1)被设置为“0”,则选择外部中断为电 平触发方式;IT0(或IT1)被设置为“1”,则选择 外部中断为跳变触发方式。
为了规范事业单位聘用关系,建立和 完善适 应社会 主义市 场经济 体制的 事业单 位工作 人员聘 用制度 ,保障 用人单 位和职 工的合 法权益
5.1
中断控制方式
■ 中断系统需解决的基本问题
◆ 中断嵌套:
当CPU响应某个中断请求而正在进行中断处理时,若有更 高优先级别的中断源发出中断申请,则CPU将自动中断正在执 行的中断服务程序,并保存该中断程序断点(类似于子程序嵌 套),转而去执行高级别中断的中断服务程序;当高级别中断 处理完毕后,再继续执行被中断的中断处理程序。这个过程被 称为中断嵌套。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SCON寄存器的其他位与中断无关,将在后续相关章节 介绍。
S2CON为串行口2控制寄存器,字节地址为9AH,S2CON中 各位功能与串口1控制寄存器SCON类似,其中S2TI和S2RI为串 口2的发送和接收中断标志位。
S2RI:串行口2接收中断标志。若串行口2允许接收且以方式0 工作,则每当接收到第8位数据时置1;若以方式1、方式2或方 式3工作且SM2=0时,则每当接收到停止位的中间时置1;当串 行口2以方式2或方式3工作且S2SM2=1时,则仅当接收到的第9 位数据S2RB8为1后,同时还要接收到停止位的中间时置1。 S2RI为1表示串行口2已接收到一帧数据,正向CPU申请中断(接 收中断),S2RI必须由用户的中断服务程序清0。
在进入掉电工作状态前,如果低压检测电路未被允许可产 生中断,则在进入掉电模式后,该低压检测电路不工作以降低功 耗。如果被允许可产生低压检测中断,则在进入掉电模式后,该 低压检测电路继续工作,在内部工作电压VCC低于低压检测门槛电 压后,产生低压检测中断,可将MCU从掉电状态唤醒。
5. CCON寄存器
主 程 序
断请求低级
响应低级中
中断 服务 程序
响应高级中断请求
中 断
断点
断点
服 务
继
继
程
续 执 行 主
返回主程序
续 执 行
返回低级中断程
序
程
序
序
图5-1 中断响应和处理过程
5.2 STC15F2K60S2单片机的中断系统结构
5.2.1 中断源
STC15F2K60S2单片机中断系统共有14个中断源,分 别为外部中断0(INT0)、定时器T0中断、外部中断1 (INT1)、定时器T1中断、串口1中断、A/D转换中断、低压 检测中断(LVD)、CCP/PWM/PCA中断、串口2中断、SPI中断、 外部中断2(INT2 )、外部中断3( INT3)、定时器T2中断、
外部中断4(INT4 )。除外部中断2( INT2)、外部中断3
( INT3)、定时器T2中断、外部中断4(INT4 )等4个中断 源固定为最低优先级中断外,其它的中断源都具有2个中断 优先级,可实现2级中断服务程序嵌套。
STC15F2K60S2单片机中断系统结构示意图如图5-2 所示。这些中断源与特殊功能寄存器TCONபைடு நூலகம்SCON、S2CON、 CCON、PCON、ADC_CONTR、IE、IE2、INT_CLKO、IP等有关, 下面首先介绍与中断源有关的寄存器功能。
TR0:定时/计数器T0的运行控制位。其功能与TR1类似。
IE1:外部中断1请求源(INT1/P3.3)标志位。IE1为1时, 外部中断1向CPU请求中断,当CPU响应该中断时由硬件将IE1 清0。
IT1:外部中断1中断触发方式选择位,当IT1为0时, INT1/P3.3引脚上的上升沿或下降沿均可触发外部中断1。 IT1为1时,为下降沿触发方式。
当中央处理器CPU正在处理某件事的时候外界发生了 紧急的事件请求,要求CPU暂停当前的工作,转而去处理 这个紧急事件,处理完以后,再回到原来被中断的地方 (断点),继续原来的工作,这样的过程称为中断。实现 这种功能的部件称为中断系统,请求CPU中断的请求源称 为中断源。
单片机的中断系统有多个中断源,当几个中 断源同时向CPU请求中断时,系统会根据其优先级来 处理,即先响应中断优先级高的中断源,再响应优 先级低的中断源。例如,若规定按键扫描处理优先 于显示器输出处理,则CPU在处理显示内容的过程中, 可以被按键的动作打断,转而处理键盘扫描问题, 待扫描结束后再继续进行显示器处理过程。
1. IE寄存器
IE寄存器主要负责总中断允许控制和外部中断0、外部中断1、 定时器T0、定时器T1、串口1、A/D转换、低压检测等中断源中 断允许控制,IE的字节地址为A8H,可位寻址。
EA:CPU的总中断允许控制位,EA=1,CPU开放总中断,EA=0, CPU屏蔽所有的中断申请。EA的作用是使中断允许形成两级控制。 即各中断源首先受EA控制;其次还受各中断源自己的中断允许控 制位控制。
EX1:外部中断1中断允许位。EX1=1,允许外部中断1中断; EX1=0,禁止外部中断1中断。
ET0:定时/计数器T0的溢出中断允许位。ET0=1,允许T0中断; ET0=0禁止T0中断。
EX0:外部中断0中断允许位。EX0=1,允许外部中断0中断; EX0=0禁止外部中断0中断。
2. IE2寄存器
ADC_START:ADC转换启动控制位,设置为1时,开始转换,转换 结束后为0。 A/D转换控制寄ADC_CONTR中的其他位与中断无关,将在后续 相关章节介绍。
4.PCON寄存器
PCON为电源控制寄存器,与低压检测中断有关, PCON格式如下:
LVDF:低压检测标志位,同时也是低压检测中断请求标志位。
ELVD:低压检测中断允许位。ELVD=1,允许低压检测中断; ELVD=0,禁止低压检测中断。
EADC:A/D转换中断允许位。EADC=1,允许A/D转换中断;EADC=0, 禁止A/D转换中断。
ES:串行口1中断允许位。ES=1,允许串行口1中断;ES=0,禁止 串行口1中断。
ET1:定时/计数器T1的溢出中断允许位。ET1=1,允许T1中断; ET1=0,禁止T1中断。
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。
S2TI:串行口2发送中断标志。串行口2以方式0发送时,每 当发送完8位数据,由硬件置1;若以方式1、方式2或方式3 发送时,在发送停止位的开始时置1。S2TI=1表示串行口2已 发送完一帧数据,正在向CPU申请中断(发送中断)。值得注 意的是,CPU响应发送中断请求,转向执行中断服务程序时 并不将S2TI清0,S2TI必须由用户在中断服务程序中清0。
第5章STC15F2K60S2单片机中断系统
5.1 中断的概念 5.2 STC15F2K60S2单片机的中断系统结构 5.3 中断允许及其优先级管理 5.4 单片机中断处理过程 5.5 中断的应用举例
5.1 中断的概念
在单片机应用系统中,中断技术主要用于实时监测与 控制,能对外界发生的事件进行及时的处理。中断系统是 为使CPU具有对外界紧急事件的处理能力而设置的。
IE0:外部中断0请求源(INT0/P3.2)标志位。与IE1功能 类似。
IT0:外部中断0中断触发方式选择位,功能与IT1类似。
2. SCON和S2CON寄存器
SCON为串行口1控制寄存器,包括了串行口发送和接收 中断的请求标志位TI和RI。SCON寄存器的字节地址为98H,可 位寻址,其格式如下:
WCOL:SPI写冲突标志。在数据传输的过程中如果对SPI数据寄存 器SPDAT执行写操作,WCOL将置1,WCOL标志通过软件向其写入1而 清0。
使用单片机的外部中断0和外部中断1,当外部中断0发出中 断请求后点亮蓝色LED灯,当外部中断1发出中断请求后点 亮黄色LED灯。
如果两个中断的请求信号同时到达单片 机,哪个LED灯先点亮? 如果在信号同时到达的条件下,需要指定 那个LED灯先亮,如何实现?
TF1:定时/计数器T1的溢出中断标志位。当启动T1计数后, 从初值开始计数,当产生溢出后由硬件将TF1置1,向CPU请 求中断,一直保持到CPU响应中断时,才由硬件清0,TF1也 可由软件清0。
TR1:定时/计数器T1的运行控制位。当TR1为1 时运行,为 0时停止运行。
TF0:定时/计数器T0溢出中断标志。其功能与TF1类似。
5.3 中断允许及其优先级管理
STC15F2K60S2单片机的中断允许控制及优先级控制 分别由中断允许寄存器IE、IE2、INT_CLKO(AUXR2) 以及中断优先级控制寄存器IP、IP2等控制。
5.3.1 中断允许寄存器 STC15F2K60S2单片机中的各中断源是否开放或禁止,
是由内部的中断允许寄存器IE、IE2、INT_CLKO控制。中 断采用两级控制方式,即总中断和各中断源分别独立控制。
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。
禁止串行口2中断。 STC15F2K60S2单片机复位以后,IE和IE2被清0,所有的中
断被禁止。若要开放某些中断源,则可通过程序把IE和IE2中的相 应控制位置1,同时还必须把总中断EA置1。
3. INT_CLKO寄存器
在正常工作和空闲工作状态时,如果内部工作电压VCC低 于低压检测门槛电压,该位自动置1,与低压检测中断是否被允许 无关。即在内部工作电压VCC低于低压检测门槛电压时,不管有没 有允许低压检测中断,该位都自动为1。该位要用软件清0,清0后, 如内部工作电压VCC继续低于低压检测门槛电压,该位又被自动设 置为1。
TI:串行口1发送中断标志。串行口1以方式0发送时,每当 发送完8位数据,由硬件置1;若以方式1、方式2或方式3发 送时,在发送停止位的开始时置1。TI为1表示串行口已发送 一帧数据,串行口1正在向CPU申请中断(发送中断)。值得注 意的是,CPU响应发送中断请求,转向执行中断服务程序时 并不将TI清0,TI必须由用户在中断服务程序中清0。
S2CON为串行口2控制寄存器,字节地址为9AH,S2CON中 各位功能与串口1控制寄存器SCON类似,其中S2TI和S2RI为串 口2的发送和接收中断标志位。
S2RI:串行口2接收中断标志。若串行口2允许接收且以方式0 工作,则每当接收到第8位数据时置1;若以方式1、方式2或方 式3工作且SM2=0时,则每当接收到停止位的中间时置1;当串 行口2以方式2或方式3工作且S2SM2=1时,则仅当接收到的第9 位数据S2RB8为1后,同时还要接收到停止位的中间时置1。 S2RI为1表示串行口2已接收到一帧数据,正向CPU申请中断(接 收中断),S2RI必须由用户的中断服务程序清0。
在进入掉电工作状态前,如果低压检测电路未被允许可产 生中断,则在进入掉电模式后,该低压检测电路不工作以降低功 耗。如果被允许可产生低压检测中断,则在进入掉电模式后,该 低压检测电路继续工作,在内部工作电压VCC低于低压检测门槛电 压后,产生低压检测中断,可将MCU从掉电状态唤醒。
5. CCON寄存器
主 程 序
断请求低级
响应低级中
中断 服务 程序
响应高级中断请求
中 断
断点
断点
服 务
继
继
程
续 执 行 主
返回主程序
续 执 行
返回低级中断程
序
程
序
序
图5-1 中断响应和处理过程
5.2 STC15F2K60S2单片机的中断系统结构
5.2.1 中断源
STC15F2K60S2单片机中断系统共有14个中断源,分 别为外部中断0(INT0)、定时器T0中断、外部中断1 (INT1)、定时器T1中断、串口1中断、A/D转换中断、低压 检测中断(LVD)、CCP/PWM/PCA中断、串口2中断、SPI中断、 外部中断2(INT2 )、外部中断3( INT3)、定时器T2中断、
外部中断4(INT4 )。除外部中断2( INT2)、外部中断3
( INT3)、定时器T2中断、外部中断4(INT4 )等4个中断 源固定为最低优先级中断外,其它的中断源都具有2个中断 优先级,可实现2级中断服务程序嵌套。
STC15F2K60S2单片机中断系统结构示意图如图5-2 所示。这些中断源与特殊功能寄存器TCONபைடு நூலகம்SCON、S2CON、 CCON、PCON、ADC_CONTR、IE、IE2、INT_CLKO、IP等有关, 下面首先介绍与中断源有关的寄存器功能。
TR0:定时/计数器T0的运行控制位。其功能与TR1类似。
IE1:外部中断1请求源(INT1/P3.3)标志位。IE1为1时, 外部中断1向CPU请求中断,当CPU响应该中断时由硬件将IE1 清0。
IT1:外部中断1中断触发方式选择位,当IT1为0时, INT1/P3.3引脚上的上升沿或下降沿均可触发外部中断1。 IT1为1时,为下降沿触发方式。
当中央处理器CPU正在处理某件事的时候外界发生了 紧急的事件请求,要求CPU暂停当前的工作,转而去处理 这个紧急事件,处理完以后,再回到原来被中断的地方 (断点),继续原来的工作,这样的过程称为中断。实现 这种功能的部件称为中断系统,请求CPU中断的请求源称 为中断源。
单片机的中断系统有多个中断源,当几个中 断源同时向CPU请求中断时,系统会根据其优先级来 处理,即先响应中断优先级高的中断源,再响应优 先级低的中断源。例如,若规定按键扫描处理优先 于显示器输出处理,则CPU在处理显示内容的过程中, 可以被按键的动作打断,转而处理键盘扫描问题, 待扫描结束后再继续进行显示器处理过程。
1. IE寄存器
IE寄存器主要负责总中断允许控制和外部中断0、外部中断1、 定时器T0、定时器T1、串口1、A/D转换、低压检测等中断源中 断允许控制,IE的字节地址为A8H,可位寻址。
EA:CPU的总中断允许控制位,EA=1,CPU开放总中断,EA=0, CPU屏蔽所有的中断申请。EA的作用是使中断允许形成两级控制。 即各中断源首先受EA控制;其次还受各中断源自己的中断允许控 制位控制。
EX1:外部中断1中断允许位。EX1=1,允许外部中断1中断; EX1=0,禁止外部中断1中断。
ET0:定时/计数器T0的溢出中断允许位。ET0=1,允许T0中断; ET0=0禁止T0中断。
EX0:外部中断0中断允许位。EX0=1,允许外部中断0中断; EX0=0禁止外部中断0中断。
2. IE2寄存器
ADC_START:ADC转换启动控制位,设置为1时,开始转换,转换 结束后为0。 A/D转换控制寄ADC_CONTR中的其他位与中断无关,将在后续 相关章节介绍。
4.PCON寄存器
PCON为电源控制寄存器,与低压检测中断有关, PCON格式如下:
LVDF:低压检测标志位,同时也是低压检测中断请求标志位。
ELVD:低压检测中断允许位。ELVD=1,允许低压检测中断; ELVD=0,禁止低压检测中断。
EADC:A/D转换中断允许位。EADC=1,允许A/D转换中断;EADC=0, 禁止A/D转换中断。
ES:串行口1中断允许位。ES=1,允许串行口1中断;ES=0,禁止 串行口1中断。
ET1:定时/计数器T1的溢出中断允许位。ET1=1,允许T1中断; ET1=0,禁止T1中断。
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。
S2TI:串行口2发送中断标志。串行口2以方式0发送时,每 当发送完8位数据,由硬件置1;若以方式1、方式2或方式3 发送时,在发送停止位的开始时置1。S2TI=1表示串行口2已 发送完一帧数据,正在向CPU申请中断(发送中断)。值得注 意的是,CPU响应发送中断请求,转向执行中断服务程序时 并不将S2TI清0,S2TI必须由用户在中断服务程序中清0。
第5章STC15F2K60S2单片机中断系统
5.1 中断的概念 5.2 STC15F2K60S2单片机的中断系统结构 5.3 中断允许及其优先级管理 5.4 单片机中断处理过程 5.5 中断的应用举例
5.1 中断的概念
在单片机应用系统中,中断技术主要用于实时监测与 控制,能对外界发生的事件进行及时的处理。中断系统是 为使CPU具有对外界紧急事件的处理能力而设置的。
IE0:外部中断0请求源(INT0/P3.2)标志位。与IE1功能 类似。
IT0:外部中断0中断触发方式选择位,功能与IT1类似。
2. SCON和S2CON寄存器
SCON为串行口1控制寄存器,包括了串行口发送和接收 中断的请求标志位TI和RI。SCON寄存器的字节地址为98H,可 位寻址,其格式如下:
WCOL:SPI写冲突标志。在数据传输的过程中如果对SPI数据寄存 器SPDAT执行写操作,WCOL将置1,WCOL标志通过软件向其写入1而 清0。
使用单片机的外部中断0和外部中断1,当外部中断0发出中 断请求后点亮蓝色LED灯,当外部中断1发出中断请求后点 亮黄色LED灯。
如果两个中断的请求信号同时到达单片 机,哪个LED灯先点亮? 如果在信号同时到达的条件下,需要指定 那个LED灯先亮,如何实现?
TF1:定时/计数器T1的溢出中断标志位。当启动T1计数后, 从初值开始计数,当产生溢出后由硬件将TF1置1,向CPU请 求中断,一直保持到CPU响应中断时,才由硬件清0,TF1也 可由软件清0。
TR1:定时/计数器T1的运行控制位。当TR1为1 时运行,为 0时停止运行。
TF0:定时/计数器T0溢出中断标志。其功能与TF1类似。
5.3 中断允许及其优先级管理
STC15F2K60S2单片机的中断允许控制及优先级控制 分别由中断允许寄存器IE、IE2、INT_CLKO(AUXR2) 以及中断优先级控制寄存器IP、IP2等控制。
5.3.1 中断允许寄存器 STC15F2K60S2单片机中的各中断源是否开放或禁止,
是由内部的中断允许寄存器IE、IE2、INT_CLKO控制。中 断采用两级控制方式,即总中断和各中断源分别独立控制。
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。
禁止串行口2中断。 STC15F2K60S2单片机复位以后,IE和IE2被清0,所有的中
断被禁止。若要开放某些中断源,则可通过程序把IE和IE2中的相 应控制位置1,同时还必须把总中断EA置1。
3. INT_CLKO寄存器
在正常工作和空闲工作状态时,如果内部工作电压VCC低 于低压检测门槛电压,该位自动置1,与低压检测中断是否被允许 无关。即在内部工作电压VCC低于低压检测门槛电压时,不管有没 有允许低压检测中断,该位都自动为1。该位要用软件清0,清0后, 如内部工作电压VCC继续低于低压检测门槛电压,该位又被自动设 置为1。
TI:串行口1发送中断标志。串行口1以方式0发送时,每当 发送完8位数据,由硬件置1;若以方式1、方式2或方式3发 送时,在发送停止位的开始时置1。TI为1表示串行口已发送 一帧数据,串行口1正在向CPU申请中断(发送中断)。值得注 意的是,CPU响应发送中断请求,转向执行中断服务程序时 并不将TI清0,TI必须由用户在中断服务程序中清0。