无线电爱好网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

无线电爱好网 首页 技术应用 单片机 查看内容

STM32中断如此简单

2025-4-17 09:48| 发布者: 闪电| 查看: 1| 评论: 0

摘要: 下面我们先来了解一些基本概念:中断:中断是什么?举个例子来说,当我们正在工作时,突然电话响了,这时你会把手里的工作先停下来,然后去接电话,当接完电话后,电话里的人安排你马上做一件事,这时你需要立刻去做 ...

下面我们先来了解一些基本概念:

中断:中断是什么?举个例子来说,当我们正在工作时,突然电话响了,这时你会把手里的

工作先停下来,然后去接电话,当接完电话后,电话里的人安排你马上做一件事,这时你需

要立刻去做这件事,当把这件事做完后你会继续之前被打断的工作,这个过程为一次中断

异常:一个系统本应该正常的运行,但由于某些条件使系统产生了错误,就会使系统运行

不 正常,我们称之为异常。就好比一个健康的人,如果身体某个器官出现了问题

那他将会生 病,不能像以前那样健康生活,称他的身体出现了异常

系统出现异常,我们必须对异常做 出处理,才能让系统正常运行

事件:比如一个老师在教室里给学生上课,下面的学生会做出各种不同的动作

如有认真记 笔记的,有讲小话的,有翻自己书包的等等,我们把学生的这些行为称为事件

但老师对这 些事件有些是不会有动作的,有些事件是需要老师干预的,比如两个学生讲话

影响了老师 上课,老师需要警告讲话的学生,然后再继续上课

优先级:当我们接到了两个电话,两个电话都安排你去做别的事

这时你需要先完成比较急 的事,然后再完成不是太急的事,这就是优先级的问题

当有多个中断时,我们需要根据中 断优先级判断先响应优先级高的中断,然后再响应优先级低的中断

中断与事件的联系与区别:有些事件需要响应,称这个事件为可中断事件

但有些事件不需 要做出响应称这些事件为不可中断事件。当硬件正常连接时

对应事件会自动产生,但中断 则需软件配置相应的中断使能位

抢占式优先级和响应优先级:所谓抢占式优先级和响应优先级,具有高抢占式优先级的中断 

可以在低抢占式优先级中断处理过程中被响应,即中断嵌套。当两个中断源的抢占式优先级 相同时

这两个中断将没有嵌套关系,当一个中断到来后,如果正在处理另一个中断

这个 后到来的中断就要等到前一个中断处理完之后 才能被处理。如果这两个中断同时到达

则 中断控制器根据他们的响应优先级高低来决定先处理哪一个;

如果他们的抢占式优先级和响 应优先级都相等,则根据他们在中断表中的排位

顺序决定先处理哪一个。每一个中断源都必 须定义 2 个优先级

STM32 的中断管理利用了 NVIC(Nested Vectored Interrupt Controller)嵌套向量中断控制 器

它把所有的外设中断和系统异常用一张向量表来管理,每个系统异常和外设中断都被分 配相应的地址

除了一些系统异常的优先级不能改变外,其余的系统异常和中断的优先级都 可变化。具体向量表部分截图如下图所示:

其中包含 10 个系统异常,有 82 个外部中断地址,其中有 11 个被保留,没有使用

从上表 可查出对应的默认优先级和地址分配情况

NVIC 是嵌套向量中断控制器,它控制芯片所有中断功能

是 Cortex-Mx 内核里的一个外设下 图为 Cortex-M4 内核 NVIC 寄存器的分布图:

从上图可以看出,Cortex-M4 内核 NVIC 嵌套向量中断控制器总的有 7 个类型的寄存器

其 中有 1 个控制器类型的寄存器,8 个中断使能寄存器,8 个中断失能寄存器

8 个中断挂起 设定/清除寄存器,8 个中断有效位寄存器,60 个中断优先级寄存器

而 ST 对 CM4 内核 NVIC 控制器寄存器做了一定缩减,其寄存器分布图如下:


路过

雷人

握手

鲜花

鸡蛋

QQ|关于本站|小黑屋|Archiver|手机版|无线电爱好网 ( 粤ICP备15040352号 ) 无线电爱好技术交流5 无线电爱好技术交流1无线电爱好技术交流9开关电源讨论群LED照明应用、电源无线电爱好技术交流4无线电爱好技术交流8无线电爱好技术交流10无线电爱好技术交流11

粤公网安备 44030702001224号

GMT+8, 2025-4-17 09:48 , Processed in 0.156000 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

返回顶部