当前课程知识点:单片机原理及应用 > 6 中断与定时系统 > 6.3 中断控制寄存器及中断响应过程 > 中断控制寄存器及中断响应过程
同学 你好
前面我们介绍了一下51单片机的中断技术
以及它的这个中断优先级的处理
以及内部的这个相关的这个寄存器
今天我们将继续的深入的介绍
和中断技术相关的几个重要的寄存器
我们前面介绍的中断标志位
包括了外部中断申请触发方式选择位
中断允许控制位
和中断优先级的设置位都在具体的
特殊功能寄存器中
我们这边列表就给出了这些和
中断控制相关的具体的这些寄存器
请同学们仔细的观察该表
了解相关寄存器中每一位
和中断控制的关系
但是你无需死记这些对应关系
只需了解就行
今后在具体的程序编写时
如需用到相关中断的功能
可以再回过来查找该表对应的关系即可
下面我们再来看一看
中断响应的具体的过程
中断能响应的条件有这么几个
第一个就是有中断请求信号
第二个就是系统要处于开中断的状态
就是当条件满足时
其中的响应过程为什么呢?
就是第一步要关中断
即屏蔽其它中断请求信号
然后保护断点
即将断点地址压入堆栈保存
也就是将当前的PC值入栈
然后会寻找中断源
即中断程序入口地址送给PC
转入到这个中断服务
保护现场就是
将中断服务程序使用的
所有寄存器内容入栈
中断处理即执行中断源所要求的程序段
恢复现场即恢复被使用寄存器的原有内容
这个开中断即允许接收其他中断请求信号
最后的步骤中断返回就表示
要执行这个RETI的专用的中断返回指令
该指令会把这个堆栈的断点地址
送给PC
复位中断标志程序
会转回到断点处继续来执行
同学们注意一下
这个RETI指令相当于
这个RET指令加上复位中断标志
具体到我们的51单片机的
中断响应过程是什么
我们来看看这边的啊
首先第一步中断采样
这个采样
仅对外部中断
即INT0 INT1的请求信号来进行采样
第二步就是中断查询
单片机会在每一个机器周期的
最后一个状态
按照优先级的顺序对中断请求标志位
来进行查询
即先查询高级中断后
再来查询这个低级中断
如果都是同级中断
我们前面也说过51单片机会按照
这个INT0外部中断0
T0就是定时计数器0
INT1外部中断1
T1就是定时计数器1
以及RI/TI串口
这个顺序来进行查询
如果查询到有标志位为1
则表明有中断请求发生
接着单片机就会从相邻的
下一个机器周期的状态开始进行中断响应
由于中断请求是随机发生的
我们的CPU也无法预先得知
什么时候有中断
因此在程序执行过程中
这个中断查询要在指令执行的
每个机器周期中不停地重复进行
当有了这个中断查询之后
就是要进一步的如果有中断申请过来
就要进行中断响应
中断响应的过程就是当查询到
有效的中断请求时
CPU就会进行中断响应
其主要内容是由硬件自动地生成一条
长调用指令LCALL
其具体的格式就是 LCALL addr16
这里面的addr16由系统设定的
5个中断响应程序的入口地址
具体的入口地址我们可以
看这边这个表
请同学们务必
要了解每个中断响应程序的入口地址
实际上我们在前面单片机的
程序存储器学习中也具体介绍过
这个内容
请同学们记住我们的中断响应程序
必须要放在这个ROM对应的这个入口地址处
最后我们来看一看中断响应
被阻断的三个情况
第一个情况就是CPU正处在
为一个同级或者高级的这个中断服务中
第二个情况就是查询中断请求的
机器周期
不是当前指令的最后一个机器周期
即当CPU没有执行完一条指令时
中断响应
第三个被阻断的情况就是
当前执行返回指令
RET/RETI或访问IE、IP的指令后
CPU不能够立即响应中断
还应再执行一条指令后
才能够响应中断
好的
以上就是我们今天课程的全部内容
今天我们主要学习了
51单片机的这个具体的中断响应的过程
后面我们将通过一些例子
来具体的看一看怎么样来应用
单片机的这个中断技术
今天课程就到这里
同学们再见
-1.1 单片机的名称
--单片机的名称
-1.2 单片机的相关概念
--单片机的相关概念
-1.3 单片机的设计语言及软件
-1.4 单片机的发展
--单片机的发展
-1.5单片机的应用
--单片机的应用
-1.6 第一单元作业
-2.1 单片机的结构框图
--单片机的结构框图
-2.2 80C51内部结构
-2.3 信号引脚
--信号引脚
-2.4 内部数据存储器RAM
-2.5 特殊功能寄存器
--特殊功能寄存器
-2.6 堆栈
--堆栈
-2.7 内部程序存储器ROM
-2.8 存储器的结构特点
--存储器的结构特点
-2.9 并行输入输出接口电路
-2.10 并口功能与时序
--并口功能与时序
-2.11 工作方式
--工作方式
-2.12 最小应用系统
-- 最小应用系统
-2.13 第二单元作业
-3.1 指令格式
--指令格式
-3.2 立即寻址与直接寻址
-3.3 寄存器寻址与寄存器间接寻址
-3.4 变址间接寻址与位寻址
-3.5 内部RAM传送指令
-3.6 外部RAM传送指令
-3.7 ROM传送指令
--ROM传送指令
-3.8 交换指令
--交换指令
-3.9 堆栈操作指令
--堆栈操作指令
-3.10 传送类指令习题讲解
-3.11 算术运算类指令特点
-3.12 加法指令
--加法指令
-3.13 加法习题、减法和乘除指令
-3.14 逻辑运算指令
--逻辑运算指令
-3.15 布尔变量操作指令
--布尔变量操作指令
-3.16 无条件转移指令
--无条件转移指令
-3.17 条件转移指令
--条件转移指令
-3.18 循环转移指令
--循环转移指令
-3.19 子程序相关指令
--子程序相关指令
-3.20 并口访问指令及指令小结
-3.21 第三单元作业
-4.1 汇编程序约定
--汇编程序约定
-4.2 宏指令
--宏指令
-4.3 汇编控制指令
--汇编控制指令
-4.4 汇编语言程序设计步骤
-4.5 顺序程序举例
-- 顺序程序举例
-4.6 单重分支结构
--单重分支结构
-4.7 多重分支结构
--多重分支结构
-4.8 单重循环结构
--单重循环结构
-4.9 计数控制循环程序
--计数控制循环程序
-4.10 特征控制循环程序
-- 特征控制循环程序
-4.11 多重循环程序
--多重循环程序
-4.12 子程序的概念
--子程序的概念
-4.13 子程序设计注意事项
-4.14 子程序举例
--子程序举例
-4.15 第四单元作业
-5.1 系统扩展
--系统扩展
-5.2 51单片机扩展方法
-5.3 存储器单元位数扩充方法
-5.4 存储器容量单元扩充方法
-5.5 译码线选法
--译码线选法
-5.6 程序存储器的类型
--程序存储器的类型
-5.7 程序存储器的扩展
--程序存储器的扩展
-5.8 数据存储器的扩展
--数据存储器的扩展
-5.9 存储器综合扩展
--存储器综合扩展
-5.10 单片机存储器系统的特点
-- 单片机存储器系统的特点
-5.11 第五单元作业
-6.1 中断技术
--中断技术
-6.2 中断优先级及中断系统内部结构
-6.3 中断控制寄存器及中断响应过程
-6.4 中断请求的撤消
--中断请求的撤消
-6.5 外部中断举例
--外部中断举例
-6.6 定时器/计数器
--定时器/计数器
-6.7 定时计数器工作方式及程序编写
-6.8 定时器举例
--定时器举例
-6.9 第六单元作业
-7.1 并行接口
-- 并行接口
-7.2 并口举例
--并口举例
-7.3 并口扩展芯片
--并口扩展芯片
-7.4 8155连接方式及编程
-7.5 键盘接口技术
--键盘接口技术
-7.6 按键处理程序及举例
-7.7 键盘扫描子程序
-- 键盘扫描子程序
-7.8 显示接口技术
--显示接口技术
-7.9 多位字符静态显示
--多位字符静态显示
-7.10 多位字符动态显示
--多位字符动态显示
-7.11 第七单元作业
-8.1 流水灯控制系统设计
--html
-8.2 数码管显示系统设计
--html
-8.3 按键控制系统设计
--html
-8.4 中断控制系统设计
--html
-8.5 定时计数器系统设计
--html
-8.6 串口通信系统设计
--html
-8.7 汉字显示系统设计
--html
-8.8 单片机烧录方法
--单片机烧录方法
-8.9 第八章作业-作业