久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
STM32的NVIC理解
[打印本頁]
作者:
51黑黑黑
時間:
2016-2-12 22:25
標題:
STM32的NVIC理解
STM32有43個channel的settable的中斷源;AIRC(Application Interrupt andReset Register)寄存器中有用于指定優先級的4bits。這4個bits用于分配preemption優先級和sub優先級,在STM32的固件庫中定義如下<br><br>#define NVIC_PriorityGroup_0 ((u32)0x700)<br>#define NVIC_PriorityGroup_1 ((u32)0x600)<br>#define NVIC_PriorityGroup_2 ((u32)0x500)<br>#define NVIC_PriorityGroup_3 ((u32)0x400)<br>#define NVIC_PriorityGroup_4 ((u32)0x300)<br><br>形象化的理解是:<br><br>你是上帝,<br>造了43個人,這么多人要分社會階級和社會階層了;<br>因為“階級”的詞性比較重;"階層"比較中性,<br>所以preemption優先級->階級;每個階級內部,有一些階層,sub優先級->階層;<br><br>如果按照NVIC_PriorityGroup_4這么分,就分為了16個階級(1個階層就是1個preemption優先級),0個階層;高階級的人,可以打斷低階級的正在做事的人(嵌套),最多可以完成1個中斷和15級嵌套。<br>每個階級(每個preemption優先級),你來指定這43人中,誰進入該階級;一個人叫EXTI0_IRQChannel,你指定他進入“階級8”,則<br>NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQChannel;<br>NVIC_InitStructure.NVIC_IRQChannelPreemptionPrio<wbr>rity = 8; //指定搶占式優先級別1,可取0-15<br><br>另外,在同一階級內部,一個人在做事的時候,另外一個人不能打斷他;(preemption優先級別相同的中斷源之間沒有嵌套關系)<br>還有,如果他們兩個同時想做事,因為沒有階層,那么就根據Vector table中的物理排序,讓排名靠前的人去做;<br><br>又有1個人SPI1_IRQChannel,設定如下<br>NVIC_InitStructure.NVIC_IRQChannel = SPI1_IRQChannel;<br>NVIC_InitStructure.NVIC_IRQChannelPreemptionPrio<wbr>rity = 0; //指定搶占式優先級別1,可取0-15<br><br>SPI1_IRQChannel的階級高,EXTI0_IRQChannel做事的時候可以打斷(嵌套)。<br><br><br><br>如果按照NVIC_PriorityGroup_3這么分,就分為了8個階級(1個階級是1個preemption優先級),每個階級內有2個階層(sub優先級);高階級的人,可以打斷低階級的正在做事的人(嵌套),最多可以完成1個中斷和7級嵌套。<br><br>每個階級(每個preemption優先級),你來指定這43人中,誰進入該階級;一個人叫EXTI0_IRQChannel,你指定他進入“階級3”,則:<br>NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQChannel;<br>NVIC_InitStructure.NVIC_IRQChannelPreemptionPrio<wbr>rity = 3; //指定搶占式優先級別1,可取0-7<br>還需要指定他的階層:<br>NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; //指定響應優先級別0,可取0-1<br><br>另有1個人叫EXTI9_5_IRQChannel,他的階級和階層設定如下<br>NVIC_InitStructure.NVIC_IRQChannel = EXTI9_5_IRQChannel;<br>NVIC_InitStructure.NVIC_IRQChannelPreemptionPrio<wbr>rity = 3; //指定搶占式優先級別0,可取0-7<br>NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1; //指定響應優先級別1<br><br>那么這兩個人是同一階級的兄弟,一個人在做事的時候,另外一個人不能打斷他;(preemption優先級別相同的中斷源之間沒有嵌套關系)<br>如果他們兩個同時想做事,因為前者的階層高,所以前者優先。<br><br>還有一個人叫USART1_IRQChannel,他的階級和階層設定如下<br>NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQChannel;<br>NVIC_InitStructure.NVIC_IRQChannelPreemptionPrio<wbr>rity = 2; //指定搶占式優先級別0,可取0-7<br>NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1; //指定響應優先級別1<br><br>USART1_IRQChannel的優先級最高,當前面兩個人做事的時候,他都可以打斷(嵌套)。<br><br>以下的類推。
作者:
迷戀520冬天
時間:
2016-2-15 12:26
理解了
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
亚洲视频在线观看
|
成人av大全
|
91国内视频在线
|
日韩一区二区三区在线
|
国产色片
|
一级日批片
|
成人 在线
|
免费观看一级特黄欧美大片
|
日日日干干干
|
日韩日韩日韩日韩日韩日韩日韩
|
天天干天天爱天天
|
天天操网
|
自拍偷拍中文字幕
|
亚洲精品一
|
欧美视频 亚洲视频
|
欧美一区在线视频
|
www.色婷婷
|
欧美日韩国产中文
|
国产乱码精品一区二区三区中文
|
在线成人免费观看
|
婷婷精品
|
精品免费观看
|
一区中文
|
日韩一区精品
|
在线日韩中文字幕
|
国产精品久久在线
|
亚洲三区在线观看
|
香蕉视频1024
|
黄色片亚洲
|
成人免费网站视频
|
97精品超碰一区二区三区
|
91精品国产91久久久久福利
|
国产在线精品一区二区三区
|
久久精品国产一区
|
欧美日韩a
|
日韩成人免费视频
|
男人天堂av网站
|
午夜精品久久久久99蜜
|
一区二区三区高清
|
国产综合精品一区二区三区
|
成人高清视频在线观看
|