STM32CubeMx学习之-NVIC

发布者:as233632621最新更新时间:2020-05-13 来源: eefocus关键字:STM32CubeMx  NVIC  中断响应 手机看文章 扫描二维码
随时随地手机看文章

NVIC(嵌套向量中断控制器)


NVIC就是控制中断响应的。主要由三个参数,一个是中断使能,一个是抢占优先级,还有一个就是响应优先级。(优先级数值越小,优先级别越高)


中断使能:很好理解,就是是否开启中断,如果开启中断,则满足中断触发条件时程序会跳到中断服务程序运行,否则不响应中断主程序继续运行。


抢占优先级:是用来判断一个中断是否可以打断另外一个中断的中断服务程序抢先运行。例如A中断触发,正在运行A中断的服务程序,此时B中断也触发,如果B中断的抢占优先级比A的高,则程序会打断A的中断服务程序,去运行B的中断服务程序,即中断嵌套。等B的中断服务程序运行完后继续运行A的中断服务程序。如果B的抢占优先级没有高过A的抢占优先级,则程序不会打断A的中断服务程序,而是待定A的中断服务程序运行完成后才运行B的中断服务程序。


响应优先级:是用来判断抢占优先级相同的几个中断那个中断会优先响应。如果几个抢占优先相同的中断同时触发,那么响应优先级高的最先运行。 判断中断的优先级,先看抢占优先级,抢占优先级高的中断优先级别高。抢占优先级相同的情况下,响应优先高的中断优先级别高。

关键字:STM32CubeMx  NVIC  中断响应 引用地址:STM32CubeMx学习之-NVIC

上一篇:【STM32】HAL库 STM32CubeMX教程十一---DMA (串口DMA发送接收)
下一篇:使用stm32cubemx的usb-host-cdc库驱动EC20模块

推荐阅读最新更新时间:2024-11-08 11:58

STM32CubeMX + STM32F1系列开发时遇到的四个问题及解决
这四个问题是我在使用STM32F103C8T6 + STM32CubeMX做项目时遇到的,给大家分享一下,以下四个问题重要程度依次降低,分别是: ① 调试选项问题(默认会造成下载器无法下载); ② 定时器设置占空比的函数找不到报错的问题; ③ 硬件iic的一个小bug(亲测oled可以正常显示); ④ 串口寄存器与其它系列不一样的问题; 1. 调试选项问题 1.1. 问题描述 使用STM32CubeMX生成的 STM32F1 工程,在使用 CMSIS-DAP 下载器下载一次之后,造成无法下载的问题,如图,下载器可以检测到,但是下载器无法连接芯片: 直接下载当然一定也会出问题了,如图: 1.2. 问题原因分析
[单片机]
<font color='red'>STM32CubeMX</font> + STM32F1系列开发时遇到的四个问题及解决
STM32CubeMX按键输入
1、新建工程 2、选择目标芯片 3、设置按键和LED引脚 4、配置时钟树 5、配置引脚功能 6、配置生成的代码和选择编译工具 7、打开生成的工程,编译 8、添加下面的代码 /* Infinite loop */ /* USER CODE BEGIN WHILE */ while (1) { /* USER CODE END WHILE */ /* USER CODE BEGIN 3 */ if(!HAL_GPIO_ReadPin(KEY_GPIO_Port, KEY_Pin)){ //读取KEY按键引脚,低电平表示按下 HAL_GPIO_TogglePin(LE
[单片机]
<font color='red'>STM32CubeMX</font>按键输入
STM32开发笔记19: STM32CubeMX中定时器的配置方法
单片机型号:STM32L053R8T6 本文介绍在STM32CubeMX进行定时器的配置,产生固定时间中断的方法,以TIM2为例,步骤如下: 1、使能TIM2,指定时钟源。 2、查看数据手册,确定该定时器的内部数据总线,本文所引用的定时器内部数据总线为APB1。 3、在时钟配置中确认所选定时器的内部数据总线的时钟频率,我这里是32MHz。 4、在配置页中,选中相应的时钟,在Prescaler中输入预分频系数,在Counter Period中输入溢出系数。例如,本例中时钟为32MHz/32=1MHz,也就是一个周期为1us,我选择溢出系数为1000,则产生中断的时间为1ms。
[单片机]
STM32开发笔记19: <font color='red'>STM32CubeMX</font>中定时器的配置方法
51单片机边沿触发中断响应时刻的测量
  MCS51单片机系列属于8位单片机,它是Intel公司继MCS48系列的成功设计之后,于1980年推出的产品。由于MCS51系列具有很强的片内功能和指令系统,因而使单片机的应用发生了一个飞跃,这个系列的产品也很快成为世界上第二代的标准控制器。51系列单片机有5个中断源,其中有2个是外部输入中断源INT0和INT1。可由中断控制寄存器TCON的IT1(TCON.2)和IT0(TCON.1)分别控制外部输入中断1和中断0的中断触发方式。若为0,则外部输入中断控制为电平触发方式;若为1,则控制为边沿触发方式。这里是下降沿触发中断。 1 问题的引出   几乎国内所有的单片机资料对单片机边沿触发中断的响应时刻方面的定义都是不明确的或
[测试测量]
51单片机边沿触发<font color='red'>中断</font><font color='red'>响应</font>时刻的测量
STM32(Cortex-M3) 中NVIC(嵌套向量中断控制)的理解
一、STM32 (Cortex-M3) 中的优先级概念 STM32(Cortex-M3)中有两个优先级的概念:抢占式优先级和响应优先级,也把响应优先级称作 亚优先级 或 副优先级 ,每个中断源都需要被指定这两种优先级。 1. 何为占先式优先级(pre-emption priority) 高占先式优先级的中断事件会打断当前的主程序/中断程序运行 抢断式优先响应,俗称中断嵌套。 2. 何为副优先级(subpriority) 在占先式优先级相同的情况下,高副优先级的中断优先被响应; 在占先式优先级相同的情况下,如果有低副优先级中断正在执行, 高副优先级的中断要等待已被响应的低副优先级中断执行结束后才能得到响应 非抢断式
[单片机]
聊聊TIMER事件触发中断响应话题
接着上次的TIMER事件触发中断的响应话题继续聊聊。 情况是这样的,现在使用STM32G4系列的TIM8,工作在中心对齐计数,PWM单脉冲模式,使用内部系统时钟做时钟源,计数时不做分频,即PSC=0。CH2做PWM输出。启动时计数器从0开始计数,与RCR对应的计数器值为3。请问在0~ARR范围内调整CCR的值时,整个工作周期内进入基于通道比较事件的中断响应次数可能是下面哪些选项? A:1 B:2 C:3 D:4 E:0 因为RCR=3和单脉冲模式。意味着从启动开始到计数停止,发生4次溢出后产生更新事件并停止计数,计数器刚好工作2个完整的计数周期。 如果说将通道比较事件的中断请求使能禁用掉或者将NVIC端与该事件有关的中断响
[单片机]
聊聊TIMER事件触发<font color='red'>中断</font>的<font color='red'>响应</font>话题
关于STM32 (Cortex-M3) 中NVIC的分析
  一、STM32 (Cortex-M3) 中的优先级概念   STM32(Cortex-M3)中有两个优先级的概念:抢占式优先级和响应优先级,也把响应优先级称作“亚优先级”或“副优先级”,每个中断源都需要被指定这两种优先级。   1. 何为占先式优先级(pre-emption priority)   高占先式优先级的中断事件会打断当前的主程序/中断程序运行—抢断式优先响应,俗称中断嵌套。   2. 何为副优先级(subpriority)   在占先式优先级相同的情况下,高副优先级的中断优先被响应;   在占先式优先级相同的情况下,如果有低副优先级中断正在执行, 高副优先级的中断要等待已被响应的低副优先级中
[单片机]
STM32 NVIC 中断
***************************** STM32 NVIC 中断 一、STM32 的中断分组:STM32 将中断分为 5 个组,组 0~4。该分组的设 置是由 SCB- AIRCR 寄存器的 bit10~8 来定义的。具体的分配关系如表所示: 组…,…,. bit 分配情况 …,…,…,…分配结果 0 …,…,…,…,…,…0:4 …,…,…,…0 位抢占优先级,4 位响应优先级 1 …,…,…,…,…,…1:3 …,…,…,…1 位抢占优先级,3 位响应优先级 2 …,…,…,…,…,…2:2 …,…,…,…2 位抢占优先级,2 位响应优先级 3…,…,…,…,…,…3:1…,…,…,… ,3 位抢占优
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved