您的位置 首页 被动

STM32的V3.5库Systick优先级设置的问题

以前的旧版本的库通过如下函数来设置Systick的优先级。但新的V3.5的库不含该函数,查询良久才得到答案,发现网上那个不少是错误的,误人子…

曾经的旧版本的库经过如下函数来设置Systick的优先级。但新的V3.5的库不含该函数,查询好久才得到答案,发现网上那个不少是过错的,误人子弟。
NVIC_SystemHandlerPriorityConfig(SystemHandler_SysTick, 0, 0);
查询成果总结如下:
1. STM32中止优先级是运用4-bit来一共的,即总共有16个等级。
2. 优先级分为2个部分:抢先优先级和子优先级,上述的4个bit能够灵敏分配给抢先优先级和子优先级,比方,1个bit一共抢先优先级,则剩下3个bit一共子优先级。固件库中对应的函数是:NVIC_PriorityGroupConfig()。
3. 中止分为内核中止和芯片(STM32)中止,装备的寄存器方位是不同的,芯片中止的装备运用NVIC,内核中止(比方systick)的装备运用SCB。
4. 内核中止优先级设置运用函数:NVIC_SetPriority(),此函数需求一个一共优先级的参数,能够使用NVIC_EncodePriority()这个函数生成,比方:
NVIC_SetPriority(SysTick_IRQn,
NVIC_EncodePriority(NVIC_GetPriorityGrouping(), 0, 1));
//抢先优先级:0(最高);子优先级:1(中)

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/beidong/264766.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部