OpenEdv-开源电子网

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

Usart1 NVIC 分组问题

[复制链接]

19

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
140
金钱
140
注册时间
2015-9-26
在线时间
7 小时
发表于 2015-11-8 13:15:32 | 显示全部楼层 |阅读模式
5金钱
  //Usart1 NVIC 配置
  NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=3 ;//抢占优先级3
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3; //子优先级3
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //IRQ通道使能
NVIC_Init(&NVIC_InitStructure); //根据指定的参数初始化VIC寄存器

子优先级应该就是响应优先级吧
我很奇怪的是如果抢占优先级为3  又有响应优先级 那么只可能是分组3   就是3位抢占优先级1位响应优先级
可是这个响应优先级3是什么鬼。。。

在论坛考到过以前有人也有和我一样的疑问 我又看了遍视频 还是搞不懂
难道子优先级不是响应优先级?

最佳答案

查看完整内容[请看2#楼]

子优先级,就是响应优先级.
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-11-8 13:15:33 | 显示全部楼层
子优先级,就是响应优先级.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

15

主题

786

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3223
金钱
3223
注册时间
2015-7-26
在线时间
811 小时
发表于 2015-11-8 13:15:33 | 显示全部楼层
回复【6楼】mess:
---------------------------------
分组二是2位抢占优先级,2位响应优先级,2位可以代表什么?00,01,10,11   
那是不是对应的就可以设为响应优先级0,1,2,3了?
你应该理解错了,不是3就是组别3
我的博客:http://blog.csdn.net/itdo_just
回复

使用道具 举报

9

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
166
金钱
166
注册时间
2015-8-16
在线时间
23 小时
发表于 2015-11-8 14:50:11 | 显示全部楼层
你的中断分组是第几组
回复

使用道具 举报

19

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
140
金钱
140
注册时间
2015-9-26
在线时间
7 小时
 楼主| 发表于 2015-11-8 15:19:03 | 显示全部楼层
回复【2楼】weiwei-wit:
---------------------------------
这个是system里面的uart.c  uart初始化里的代码
我看得是串口实验 main里分组是2
回复

使用道具 举报

6

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
82
金钱
82
注册时间
2015-10-23
在线时间
8 小时
发表于 2015-11-9 10:22:50 | 显示全部楼层
SubPriority,你可以百度查查这个单词的英文意思,就是子优先级,次优先级的意思,SUB就是子,次的意思,然后也叫做 响应优先级
回复

使用道具 举报

19

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
140
金钱
140
注册时间
2015-9-26
在线时间
7 小时
 楼主| 发表于 2015-11-9 19:26:05 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
原子哥 那在分组里 抢占优先级都为3了 响应优先级最多就1啊
这个3是个什么情况
回复

使用道具 举报

15

主题

786

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3223
金钱
3223
注册时间
2015-7-26
在线时间
811 小时
发表于 2015-11-9 19:33:32 | 显示全部楼层
回复【6楼】mess:
---------------------------------
再说分组不是在这里设置的,是通过这个NVIC_Configuration();   //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
2:2的意思是说2位的意思,2位可以表示4个值,0~3,所以设置成3是完全没问题的
我的博客:http://blog.csdn.net/itdo_just
回复

使用道具 举报

15

主题

786

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3223
金钱
3223
注册时间
2015-7-26
在线时间
811 小时
发表于 2015-11-9 19:35:00 | 显示全部楼层
再说分组不是在这里设置的,是通过NVIC_Configuration();   //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
2:2的意思是说抢占2位,响应2位,2位可以代表的值有0~3,所以这里设置为3是完全没问题的
我的博客:http://blog.csdn.net/itdo_just
回复

使用道具 举报

19

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
140
金钱
140
注册时间
2015-9-26
在线时间
7 小时
 楼主| 发表于 2015-11-9 20:33:59 | 显示全部楼层
回复【9楼】229382777@qq.com:
---------------------------------
看明白了  谢谢哥
回复

使用道具 举报

1

主题

2

帖子

0

精华

新手入门

积分
29
金钱
29
注册时间
2015-11-9
在线时间
1 小时
发表于 2015-11-9 20:51:26 | 显示全部楼层
中断分组是由SCB--->AIRCR寄存器中bit10~8位,你的这种方式应该是其中的分组2,2位抢占,2位响应。
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-20 01:30

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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