衡阳派盒市场营销有限公司

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

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

3天內不再提示

STM32平臺下的FreeRTOS中斷配置

麥辣雞腿堡 ? 來源:嵌入式Linux系統開發 ? 作者:嵌入式Linux系統開 ? 2023-09-28 11:34 ? 次閱讀

Cortex-M 中斷

Cortex-M 內核(STM32)的 MCU 提供了一個用于中斷管理的嵌套向量中斷控制器(NVIC)。Cotex-M3 的 NVIC 最多支持 240 個 IRQ(中斷請求)、1 個不可屏蔽中斷(NMI)、1 個 Systick(滴答定時器)定時器中斷和多個系統異常。

Cortex-M 處理器有多個用于管理中斷和異常的可編程寄存器,這些寄存器大多數都在 NVIC 和系統控制塊(SCB)中,CMSIS 將這些寄存器定義為結構體。以 STM32F103 為例,打開 core_cm3.h,有兩個結構體,NVIC_Type 和 SCB_Type,就存儲了這些信息。

優先級分組定義

當多個中斷來臨的時候處理器應該響應哪一個中斷是由中斷的優先級來決定的,高優先級的中斷(優先級編號?。┛隙ㄊ鞘紫鹊玫巾憫?,而且高優先級的中斷可以搶占低優先級的中斷,這個就是中斷嵌套。

Cortex-M 處理器的有些中斷是具有固定的優先級的,比如復位、NMI、HardFault,這些中斷的優先級都是負數,優先級也是最高的。

Cortex-M 處理器有三個固定優先級和 256 個可編程的優先級,最多有 128 個搶占等級,但是實際的優先級數量是由芯片廠商來決定的。但是,絕大多數的芯片都會精簡設計的,以致實際上支持的優先級數會更少,如 8 級、16 級、32 級等,比如 STM32 就只有 16 級優先級。

FreeRTOS 中斷配置宏

1、configPRIO_BITS:設置 MCU 使用幾位優先級,STM32 使用的是 4 位,因此此宏為 4

2、configLIBRARY_LOWEST_INTERRUPT_PRIORITY :設置最低優先級。

3、configKERNEL_INTERRUPT_PRIORITY:此宏用來設置內核中斷優先級。

4、configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY:來設置 FreeRTOS 系統可管理的最大優先級,是高于 x 的優先級不歸 FreeRTOS 管理!

5、configMAX_SYSCALL_INTERRUPT_PRIORITY:低于此優先級的中斷可以安全的調用 FreeRTOS 的 API 函數,高于此優先級的中斷 FreeRTOS 是不能禁止的,中斷服務函數也不能調用 FreeRTOS 的 API 函數!

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

    關注

    68

    文章

    19409

    瀏覽量

    231189
  • 嵌入式
    +關注

    關注

    5092

    文章

    19178

    瀏覽量

    307693
  • 內核
    +關注

    關注

    3

    文章

    1382

    瀏覽量

    40425
  • STM32
    +關注

    關注

    2272

    文章

    10924

    瀏覽量

    357583
  • FreeRTOS
    +關注

    關注

    12

    文章

    484

    瀏覽量

    62398
收藏 人收藏

    評論

    相關推薦

    PSOC4平臺下如何編譯生成.bin后綴的文件?

    PSOC4平臺下如何編譯生成.bin后綴的文件
    發表于 02-01 06:37

    ARM9平臺下的CMOS圖像傳感器數據采集系統

    ARM9平臺下的CMOS圖像傳感器數據采集系統
    發表于 11-23 21:14

    freeRTOS中斷配置

    freeRTOS中斷配置沒有處理亞優先級這種情況,即要求全部為搶占優先級。所以STM32移植freeRTOS時,應將
    發表于 08-23 09:13

    如何在zynq 7000平臺下運行 java web程序

    轉載:https://blog.csdn.net/weixin_39827918/article/details/78806642前言因公司項目需求,需要在zynq 7000平臺下運行 java
    發表于 12-14 06:19

    imx6平臺下如何移植mongodb呢?

    論壇有誰在imx6平臺下移植過mongodb的呢?移植的mongodb一直無法運行。
    發表于 11-28 07:42

    基于MagicARM270平臺下的WinCE5.0使用說明

    基于MagicARM270平臺下的WinCE5.0使用說明
    發表于 09-29 11:39 ?5次下載
    基于MagicARM270<b class='flag-5'>平臺下</b>的WinCE5.0使用說明

    基于STM32應用的FreeRTOS中斷設置

    一、FreeRTOS中斷設置介紹 FreeRTOSConfig.h中定義了兩個宏,分別是: configKERNEL_INTERRUPT_PRIORITY
    發表于 11-29 19:46 ?2117次閱讀
     基于<b class='flag-5'>STM32</b>應用的<b class='flag-5'>FreeRTOS</b><b class='flag-5'>中斷</b>設置

    STM32中斷FreeRTOS中斷優先級配置

    STM32中斷,及FreeRTOS中斷優先級配置
    的頭像 發表于 03-04 11:45 ?9001次閱讀
    <b class='flag-5'>STM32</b><b class='flag-5'>中斷</b>及<b class='flag-5'>FreeRTOS</b><b class='flag-5'>中斷</b>優先級<b class='flag-5'>配置</b>

    STM32平臺下GP2Y1010AU0F灰塵傳感器的使用源代碼

    本文檔的主要內容詳細介紹的是STM32平臺下GP2Y1010AU0F灰塵傳感器的使用源代碼。
    發表于 01-09 17:15 ?99次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>平臺下</b>GP2Y1010AU0F灰塵傳感器的使用源代碼

    STM32單片機平臺下的RF射頻控制教程

    STM32單片機平臺下的RF射頻控制教程
    發表于 06-15 10:06 ?11次下載

    基于STM32FreeRTOS學習之中斷配置和臨界段(四)

    記錄一,方便以后翻閱~FreeRTOS中斷配置需要根據MCU具體配置,這需要我們了解MCU架構關于
    發表于 12-08 09:51 ?6次下載
    基于<b class='flag-5'>STM32</b>的<b class='flag-5'>FreeRTOS</b>學習之<b class='flag-5'>中斷</b><b class='flag-5'>配置</b>和臨界段(四)

    stm32cubemx 配置FreeRTOS相關基礎基礎知識及串口接收中斷實驗

    本實驗首先大家自身要有stm32cubemx基礎配置,比如GPIO、中斷、串口、SPI等,FreeRTOS有相關的調用函數基礎及調度任務的概念都需要提前理解。單獨
    發表于 12-14 18:44 ?21次下載
    <b class='flag-5'>stm32</b>cubemx <b class='flag-5'>配置</b><b class='flag-5'>FreeRTOS</b>相關基礎基礎知識及串口接收<b class='flag-5'>中斷</b>實驗

    STM32FreeRTOS:(一) 中斷配置和臨界段的使用

    STM32FreeRTOS:(一) 中斷配置和臨界段的使用文章目錄STM32FreeRTOS
    發表于 01-14 15:43 ?3次下載
    <b class='flag-5'>STM32</b>之<b class='flag-5'>FreeRTOS</b>:(一) <b class='flag-5'>中斷</b><b class='flag-5'>配置</b>和臨界段的使用

    Cortex-M中斷FreeRTOS中斷優先級配置原理

    下面就來說說關于Cortex-M的中斷,及FreeRTOS中斷優先級配置原理。
    發表于 02-08 15:30 ?3次下載
    Cortex-M<b class='flag-5'>中斷</b>及<b class='flag-5'>FreeRTOS</b><b class='flag-5'>中斷</b>優先級<b class='flag-5'>配置</b>原理

    STM32如何配置外部中斷STM32外部中斷配置步驟

    STM32如何配置外部中斷?STM32外部中斷配置步驟? 作為一款現代化的微控制器,
    的頭像 發表于 10-26 17:47 ?3850次閱讀
    伯爵百家乐赌场娱乐网规则| 百家乐牌盒| bet365注册| 全讯网找新全讯网| 澳门百家乐鸿运| 至尊百家乐官网娱乐场开户注册 | 百家乐官网娱乐网备用网址| 百家乐官网娱乐城介绍| 大发888下载 df888| 银河百家乐的玩法技巧和规则| 百家乐官网断缆赢钱| 盈丰娱乐| 北京太阳城国际老年公寓| 财富百家乐的玩法技巧和规则 | 大发888官网46| 大发888客户端安装| 太阳城亚州| 大发888娱乐代理| 百家乐公式与赌法| 百家乐赌场现金网平台排名| 百家乐赌场公司| 百家乐赌场论坛博客| 蓝盾百家乐洗码| 沭阳县| 皇冠百家乐官网皇冠网| 邯郸百家乐官网园真钱区| 君豪棋牌怎么样| 真钱扎金花| 百家乐官网游戏运营| 百家乐官网大白菜| 龍城百家乐官网的玩法技巧和规则| 网上百家乐官网赌场娱乐网规则| 首席百家乐官网的玩法技巧和规则 | 百家乐官网透视牌靴哪里有| 金赞百家乐官网的玩法技巧和规则 | 东源县| 百家乐官网赌场论坛| 优博百家乐官网的玩法技巧和规则 | 百家乐官网园sun811.com| 百家乐官网的分析| 聚宝盆百家乐官网的玩法技巧和规则 |