新聞中心

        stm32 nvic的理解

        作者: 時間:2016-11-09 來源:網(wǎng)絡(luò) 收藏
        因為stm32有43個中斷源,當同時用到多個中斷時,就要指定其中斷的優(yōu)先級了。

        nvic即是中斷向量的控制!由SCB->AIRCR寄存器控制,SCB->AIRCR中目前只用到4位,也就是最高能有16級中斷嵌套,如果全使用的話可以達到256級

        本文引用地址:http://www.104case.com/article/201611/317624.htm

        (1);選用優(yōu)先級分組(實際就是選幾位用于主優(yōu)先級幾位用于輔優(yōu)先級)

        group0:選0位用于主優(yōu)先級,4位用于輔優(yōu)先級。

        group1:選1位用于主優(yōu)先級,3位用于輔優(yōu)先級。

        group2:選2位用于主優(yōu)先級,2位用于輔優(yōu)先級。

        group3:選3位用于主優(yōu)先級,1位用于輔優(yōu)先級。

        group4:選4位用于主優(yōu)先級,0位用于輔優(yōu)先級。

        (2)這樣打個比方不恰當?shù)谋确桨桑绻岩粋€中斷比作一個人,則他的國籍就是主優(yōu)先級,省籍就是輔優(yōu)先級。主優(yōu)先級高的可以

        打斷主優(yōu)先級低的中斷(如主優(yōu)先級0(我們叫他美國)的中斷高于主優(yōu)先級2(我們叫他伊拉克)的中斷,則主優(yōu)先級為0的中斷(美國人)可以

        打斷主優(yōu)先級為2的中斷(伊拉克人))。而對于輔優(yōu)先級,我們稱之為省籍,比如兩個人都是中國人(主優(yōu)先級),一個是北京的(假設(shè)輔優(yōu)先級為0

        ,高),一個是山西的(省籍為輔優(yōu)先級,假設(shè)為2,低),則北京人不能去打斷山西人做的事,但是,如果有同一個機會,則應(yīng)該先給北京人,即

        當同時要響應(yīng)兩個這兩個主優(yōu)先級一樣的中斷時,輔助優(yōu)先級高的先響應(yīng)。如果兩個中斷的主,輔優(yōu)先級都一樣時,則在中斷向量表中靠前的

        先響應(yīng)。

        (3)group4可以最多執(zhí)行15個嵌套和一個中斷,group3可以最多執(zhí)行7個嵌套和一個中斷,依次類推。

        所以,

        group4可以指定主優(yōu)先級的范圍為0——15,輔優(yōu)先級的范圍為0

        group3可以指定主優(yōu)先級的范圍0———7,輔優(yōu)先級的范圍為0----1

        group2可以指定主優(yōu)先級的范圍0———3,輔優(yōu)先級的范圍為0----3

        group1可以指定主優(yōu)先級的范圍0———1,輔優(yōu)先級的范圍為0----7

        group1可以指定主優(yōu)先級的范圍0,輔優(yōu)先級的范圍為0----15

        所謂嵌套,即是主優(yōu)先級高的可以打斷主優(yōu)先級低的中斷的執(zhí)行(嵌套)。



        關(guān)鍵詞: STM32NVI

        評論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 福安市| 乳山市| 洪湖市| 靖州| 珲春市| 龙川县| 泌阳县| 浠水县| 宁阳县| 泰和县| 广平县| 灵台县| 洛阳市| 文成县| 油尖旺区| 合阳县| 五莲县| 枣强县| 安西县| 孝感市| 观塘区| 宜黄县| 大方县| 东乌珠穆沁旗| 靖宇县| 兴山县| 盐边县| 新竹市| 如皋市| 白玉县| 高台县| 陇西县| 观塘区| 福海县| 大埔区| 儋州市| 中方县| 黄浦区| 阜平县| 旬邑县| 平阴县|