一、中断基础概念
中断:指计算机执行现行程序的过程中,出现某些急需处理的异常情况和特殊请求(满足中断条件),cpu暂时终止现行程序,而转去对随机发生的更紧迫的事件进行处理,在处理完毕后,cpu将自动返回原来的程序继续执行。(中断根据中断条件分类有,外部中断、定时中断等)
外部中断:使用外部中断是通过配置某一个IO,使得能够检测外部的中断信号;开启中断后,CPU自动检测中断条件,当外部中断条件满足时,cpu暂时终止现行程序,而转去处理中断函数的代码,处理完毕后,cpu将自动返回原来的程序继续执行。
1、外部中断开关逐级管理
要使用中断功能,首先要开启CPU的中断功能,中断功能的开启是逐级管理模式。本文以外部中断为例,如下图,只有对应的逐级开关都被开启时,才能开启对应的中断功能。其他类型的中断开启类似。

(1)中断总开关 EA,开启CPU总中断(EA=1);
(2)中断组开关PxIE,开启某一组IO的外部中断(PxIE=1);
(3)中断组内开关PxIEN,开启组内对应具体某IO口的中断(PxIEN=1);
注意:P0IE属于IEN1寄存器,而IEN1寄存器地址为0xB8,可以被8整除,所以P0IE被单独定义了可以直接赋值操作;而P1IE和P2IE属于IEN2寄存器,而IEN2寄存器的地址为0x9A,无法被8整除,所以IEN2的每个位没有被单独定义,只能通过配置IEN2寄存器来配置P1IE和P2IE。
(4)对应寄存器:
EA

最低0.47元/天 解锁文章
1325

被折叠的 条评论
为什么被折叠?



