OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 11070|回复: 12

什么是中断优先级管理NVIC、抢占优先级、响应优先级、挂起中断、解挂中断?(第十二天)

[复制链接]

20

主题

76

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1027
金钱
1027
注册时间
2019-5-27
在线时间
142 小时
发表于 2019-9-9 20:43:05 | 显示全部楼层 |阅读模式
      嘿嘿,这个视频算是我看的最轻松的几次了,只要你知道中断是什么(这个在我以前的帖子里面有),这节课的知识根本不惧。

      首先我说一下,中断优先级管理又叫NVIC(我丫的一开始还以为是两个不同的东西,所以提醒你们一下),那什么是中断优先级管理?中断优先级管理又有什么用呢?
      顾名思义,中断优先级管理就是设置中断的执行顺序的管理体系。我们的程序在运行的时候往往会碰到两个中断同时被触发的情况,这个时候怎么办?对,中断优先级管理就是用在这个时候,它会按照你之前给每个中断设置的优先级来对中断排序。这样你就不用担心两个中断发生冲突了。中断优先级管理是针对多个中断可能会发生冲突时的功能当然啦,你要是整个程序里面只有一个中断,这个NVIC就没有用啦!

      中断优先级管理分为抢占优先级响应优先级(又叫子优先级)两个方面的设置(也就是说一个中断需要对这两个优先级都进行设定),那我们来解释一下这两个的定义。
      抢占优先级这个名字一听就很霸气,所以它真的很霸气,中断发生时要先对它进行判定,抢占优先级高的会先执行,甚至它霸气到别的中断正在执行,只要抢占优先级比它低,它就可以打断别的中断,执行它自己的程序当抢占优先级的等级一样的时候,系统再判断响应优先级,同理,响应优先级高的先执行,但是它不霸气,所以别的中断在执行时,就算它的等级高,也得等别的中断执行完再执行。响应优先级的特点引出了两个函数,分别是挂起中断解挂中断

      那么挂起中断和解挂中断这两个函数有什么用处呢?
      当中断在等待别的中断执行的时候,总不能瞎转悠吧,于是咱们就调用挂起中断函数将这个中断挂起(相当于一个休息室),等到刚刚那个中断完成了,咱们再调用解挂中断函数将这个
在“休息”的中断放出休息室,让它被执行

      注意:优先级的值越小(优先级有0、1、2、3、4五个等级),优先级越高。

      我在网上找到了一个非常通俗易懂的说法,我小改了一下,一看就懂,贼厉害!
      好比一个课堂上,有多个同学要问问题,那就要举手(发生中断,但是有好几个),老师看到了,但只能先点一个同学的名字,同学们的年龄有大有小,老师当然是照顾年龄小的同学(优先级的值越小,优先级越高),让这个同学站起来阐述他的问题(处理中断),这个同学说完问题坐下来就不用举手了(中断执行 )。但其他同学在这个过程手必须举着,这时他们的状态就是“挂起”(执行了挂起中断函数),等刚刚那个同学说完问题坐下来,老师就可以点他们的名字了(处理被挂起的中断,就是解挂)





正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

6

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
105
金钱
105
注册时间
2017-11-9
在线时间
18 小时
发表于 2019-11-7 18:35:00 | 显示全部楼层
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2020-2-14
在线时间
7 小时
发表于 2020-2-27 16:55:03 | 显示全部楼层
nice啊,小栗子不错
回复 支持 反对

使用道具 举报

13

主题

83

帖子

0

精华

初级会员

Rank: 2

积分
109
金钱
109
注册时间
2017-8-7
在线时间
40 小时
发表于 2020-9-4 18:33:34 | 显示全部楼层
解释的很棒,点赞
回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2021-4-13
在线时间
7 小时
发表于 2021-4-20 17:33:07 | 显示全部楼层
牛牛牛,向你学习
回复 支持 反对

使用道具 举报

13

主题

643

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2432
金钱
2432
注册时间
2019-12-28
在线时间
527 小时
发表于 2021-8-6 14:10:54 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

9

主题

120

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1133
金钱
1133
注册时间
2014-7-8
在线时间
133 小时
发表于 2021-8-9 16:27:28 | 显示全部楼层
刚好再看,顺眼就看到这个贴子了!感谢!
回复 支持 反对

使用道具 举报

0

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
88
金钱
88
注册时间
2022-1-2
在线时间
11 小时
发表于 2022-1-20 11:38:57 | 显示全部楼层
解释的太好了
回复 支持 反对

使用道具 举报

1

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2021-1-10
在线时间
12 小时
发表于 2022-3-20 13:22:45 | 显示全部楼层
感谢大佬解惑,懂了
回复 支持 反对

使用道具 举报

10

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
167
金钱
167
注册时间
2021-11-13
在线时间
31 小时
发表于 2022-7-13 08:40:00 | 显示全部楼层
大佬,讲得好!!!
回复 支持 反对

使用道具 举报

0

主题

84

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1360
金钱
1360
注册时间
2021-2-25
在线时间
100 小时
发表于 2022-7-13 09:13:52 | 显示全部楼层
解释的很棒,谢谢分享
回复 支持 反对

使用道具 举报

1

主题

9

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2022-7-18
在线时间
10 小时
发表于 2022-7-18 16:22:04 | 显示全部楼层
收藏了,从头看了大佬的全部讲解,通俗易懂,受教
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
18
金钱
18
注册时间
2023-1-31
在线时间
2 小时
发表于 2023-3-3 10:11:29 | 显示全部楼层
厉害了,哈哈哈,通俗易懂
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 05:26

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表