91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

STM32中斷沒有子優(yōu)先級?

strongerHuang ? 來源:strongerHuang ? 2023-10-17 15:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

看到一個交流群在討論關于【關于STM32中斷優(yōu)先級的話題】,其中就有小伙伴提到:為什么有些STM32中斷沒有【子優(yōu)先級? 比如,有時候你在使用STM32CubeMX配置時,你會發(fā)現(xiàn)只有Preemption Priority【搶占優(yōu)先級】,而沒有Sub Priority【次優(yōu)先級】:

7d0e0e70-6cc1-11ee-939d-92fbcf53809c.png

然而,有時候你會發(fā)現(xiàn)又有Sub Priority【次優(yōu)先級】:

7d157caa-6cc1-11ee-939d-92fbcf53809c.png

這個問題就牽涉到STM32,準確的來說的是 Cortex-M NVIC嵌套向量中斷控制器的問題。

下面就展開來說說關于ARM單片機NVIC的內容。

關于Cortex-M的NVIC

NVIC:Nested Vectored Interrupt Controller,嵌套向量中斷控制器。 在每個Cortex-M內核中都有這么一個NVIC嵌套向量中斷控制器,當MCU使用的內核不同,其中的NVIC也可能不同。 比如,Cortex-M0和Cortex-M3內核中NVIC功能就不同。 其中,中斷優(yōu)先級分組功能就不同。 Cortex-M0的NVIC沒有優(yōu)先級分組功能,Cortex-M3、 M4、M7有分組功能。7d1d290a-6cc1-11ee-939d-92fbcf53809c.jpg ?所以,你在使用STM32CubeMX配置時,M0/M0+內核的STM32是沒有【次優(yōu)先級】那個選項的。 Cortex-M0包含STM32F0、L0、G0等處理器。 對底層感興趣的朋友可以繼續(xù)往下看。

NVIC寄存器

NVIC寄存器,需查看對應的內核(Cortex-M)手冊,在ARM官網(wǎng)能找到M3也有對應的中文翻譯版,大家可以自己網(wǎng)上搜索。 內核中的寄存器和我們STM32參考手冊中寄存器一樣,不同的Bit位代表含義不同。 但是,對于NVIC來說,由于包含眾多優(yōu)先級相關配置,寄存器數(shù)量相對較多(NVIC寄存器族。7d2acdc6-6cc1-11ee-939d-92fbcf53809c.jpg ? ?拿M3來說,優(yōu)先級分組的配置,位于NVIC的AIRCR應用程序中斷及復位控制寄存器中:7d32380e-6cc1-11ee-939d-92fbcf53809c.jpg ?這里推薦閱讀之前我寫過的一篇文章:Cortex-M中斷在RTOS中的應用及注意事項

中斷入口

額外提下一個小伙伴問的問題:為什么外部中斷8和9都使用同一個中斷?
void EXTI9_5_IRQHandler(void)
{
  if(EXTI_GetITStatus(EXTI_Line8) != RESET)
  {
    /* 代碼 */
    EXTI_ClearITPendingBit(EXTI_Line8);
  }
  if(EXTI_GetITStatus(EXTI_Line9) != RESET)
  {
    /* 代碼 */
    EXTI_ClearITPendingBit(EXTI_Line9);
  }
}
我想,這個問題應該不難。好比一個main程序入口,進入之后需要處理很多事情,只是在里面需要區(qū)分事件。 很多外設中斷,都會使用同一個中斷入口,有一個原因:節(jié)約中斷入口資源分配。 像USART發(fā)送和接收中斷,TIM不同通道捕獲中斷等。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    147

    文章

    18929

    瀏覽量

    398442
  • 控制器
    +關注

    關注

    114

    文章

    17793

    瀏覽量

    193335
  • STM32
    +關注

    關注

    2310

    文章

    11162

    瀏覽量

    373506
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    CW32F030中斷解析

    可編程的優(yōu)先級 ?低延時的異常和中斷處理 ?支持中斷嵌套 ?中斷向量表重映射 3 中斷優(yōu)先級
    發(fā)表于 01-12 08:41

    CS32L010系列能否支持串口的發(fā)送和接收中斷單獨配置?不同中斷中斷優(yōu)先級如何設置?

    1、串口能否配置成阻塞式發(fā)送和中斷式接收。 2、不同中斷中斷優(yōu)先級如何設置?我在開啟中斷函數(shù)代碼中看到說
    發(fā)表于 12-10 18:46

    搶占優(yōu)先級優(yōu)先級

    關于搶占優(yōu)先級優(yōu)先級: 1)具有高搶占式優(yōu)先級中斷可以在具有低搶占式優(yōu)先級
    發(fā)表于 12-03 07:11

    電能質量在線監(jiān)測裝置的暫態(tài)數(shù)據(jù)補傳的優(yōu)先級如何在實際應用中進行動態(tài)調整?

    電能質量在線監(jiān)測裝置的暫態(tài)數(shù)據(jù)補傳優(yōu)先級在實際應用通過 事件驅動、主站指令、資源狀態(tài)感知和動態(tài)策略調整 等多層機制實現(xiàn)靈活調控,確保關鍵數(shù)據(jù)的實時性與可靠性。以下是具體實現(xiàn)方式和典型場景的動態(tài)調整
    的頭像 發(fā)表于 11-06 14:10 ?278次閱讀

    電能質量在線監(jiān)測裝置的暫態(tài)數(shù)據(jù)補傳的優(yōu)先級是怎樣的?

    電能質量在線監(jiān)測裝置的暫態(tài)數(shù)據(jù)補傳優(yōu)先級設計遵循 事件驅動、主站指令優(yōu)先、資源動態(tài)分配 的原則,結合行業(yè)標準和設備機制,形成以下多層級優(yōu)先級體系: 一、最高優(yōu)先級:緊急事件驅動補傳 1
    的頭像 發(fā)表于 11-06 14:02 ?310次閱讀

    FreeRTOS任務調度及優(yōu)先級問題

    都有容錯,但是心里沒底,想向大家了解一下實際工作中有沒有遇到到類似的問題,如果有又是怎么解決的呢? 另外有前輩可以分享一下任務的優(yōu)先級在實際項目中該基于什么原則來劃分呢?
    發(fā)表于 11-06 02:18

    優(yōu)先級線程無法調度怎么解決?

    1,設置了3,5,6,8幾個優(yōu)先級,設備在現(xiàn)場正常運行了一年多后,顯示、前端、后端這3個低優(yōu)先級線程異常了,表現(xiàn)為屏幕不動,前端采集數(shù)據(jù)沒有變化等,其他高優(yōu)先級的線程如通訊,按鍵都能正
    發(fā)表于 09-25 07:33

    什么是RTOS優(yōu)先級反轉

    當一個高優(yōu)先級任務正在等待一個資源,但一個低優(yōu)先級任務正在持有它,一個中等優(yōu)先級任務繼續(xù)在中間運行時,就會發(fā)生優(yōu)先級反轉——阻止低優(yōu)先級任務
    的頭像 發(fā)表于 09-09 14:50 ?1009次閱讀

    求助,關于MS51設置中斷優(yōu)先級問題求解

    我確實發(fā)現(xiàn)在庫代碼和 TRM 之間設置中斷優(yōu)先級有一些差異,如下圖所示。 Could you check what's wrong with me?
    發(fā)表于 08-25 07:01

    請問STM32的內部Flash操作是不是優(yōu)先級最高?

    STM32的內部Flash操作是不是優(yōu)先級最高?目前在內部Flash的單獨一頁存儲了數(shù)據(jù),發(fā)現(xiàn)在進行頁擦除的時候正常工作的定時器中斷無法進入了
    發(fā)表于 08-13 07:03

    STM32G474進入Fault3中斷沒辦法設置成周期性觸發(fā)嗎?

    手動操作硬件觸發(fā)了Fault3故障,進入了Fault3中斷,此時若故障一直存在程序就在中斷里無法出來,F(xiàn)reeRTOS停止運行,把故障解除后FreeRTOS正常運行,即使把Fault3中斷優(yōu)先
    發(fā)表于 08-01 07:23

    TLe9893怎么調整外設的中斷優(yōu)先級?

    你好林工,我該怎么調整外設的中斷優(yōu)先級?是否可以通過工具調整?默認設置下,是不是Brdv的在中斷優(yōu)先級高于T20和can?
    發(fā)表于 08-01 06:20

    請問C0系列單片機中斷優(yōu)先級只有4嗎?

    C0系列單片機中斷優(yōu)先級只有4?C071在配置的時候只能配置0-3
    發(fā)表于 07-23 08:00

    第十章 W55MH32中斷應用概覽

    本章講述了W55MH32中斷應用,涵蓋異常類型、NVIC介紹、優(yōu)先級定義與分組,闡述中斷編程三要點(使能中斷、配置 NVIC、編寫服務函數(shù)),并強調
    的頭像 發(fā)表于 05-22 17:07 ?1905次閱讀
    第十章 W55MH32<b class='flag-5'>中斷</b>應用概覽

    CyU3PDebugPrint的最高優(yōu)先級和最低優(yōu)先級是什么?

    [i]CyU3PDebugPrint的最高優(yōu)先級和最低優(yōu)先級是什么?
    發(fā)表于 05-13 08:22