2022.4.6~2022.4.12 百问网开启智能家居二期培训,以下记录学习过程及一些心得。小白入门,水平有限,差错之处在所难免,欢迎大家指正。
DAY4:
一、Cortex-M3的中断和优先级
正常情况下,微处理器根据代码内容,按顺序执行指令。执行过程中,如果遇到其它紧急的事件需要处理,则先暂停当前任务,执行紧急事件,待紧急事件处理完后,再恢复到刚才暂停的地方继续执行。这个产生的紧急事件就叫做中断或异常,如下图 所示。
通常,把CPU内部产生的紧急事件叫做异常,比如非法指令(除零)、地址访问越界等;把来自CPU外部的片上外设产生的紧急事件叫做中断,比如GPIO引脚电平变化、定时器溢出等。异常和中断的效果基本一致,都是暂停当前任务,优先执行紧急事件,因此一般将中断和异常统称为中断。
Cortex-M3内核有256种异常和中断,其中编号1~15是系统异常,16~256是外部中断,如下表 所示。
在Cortex-M3中,将优先级拆分为抢占优先级(Preempt Priority)和子优先级