1. 程式人生 > >nu-lb-nuc140 RTX 流程 分析(七)

nu-lb-nuc140 RTX 流程 分析(七)

nu-lb-nuc140 RTX 流程 分析(七)

<RL-ARM 實時庫使用者指南.chm>
<ARM Cortex-M0權威指南(中文) 高清掃描版.pdf>

參考例程;
Nu_LB_Nuc140[NUC240][ADC]KEIL_RTX[NUC240][ADC]KEIL RTX\NUC230_240BSP_CMSIS_V3.00.001-KEIL RTX\SampleCode\StdDriver
在這裡插入圖片描述

中斷 與 恢復
在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

#define NVIC_SYS_PRI2 (*((volatile U32 )0xE000ED1C))
#define NVIC_SYS_PRI3 (

((volatile U32 *)0xE000ED20))

在這裡插入圖片描述

在這裡插入圖片描述
在這裡插入圖片描述

其他的中斷的優先順序 為0 ,那麼
優先順序: PRI_11 > PRI_14 = PRI_15
優先順序: SVCall > PendSV = SysTick

優先順序:

其他中斷 > SVCall > PendSV = SysTick
0 > 2 > 3 = 3

其他中斷 由於 優先順序相同 他們之間是不能互相巢狀的
但是 外部 中斷 可以 巢狀 SVCall PendSV SysTick 的中斷處理函式
在這裡插入圖片描述
雖然RTL-RTX允許中斷函式併發執行,但還是推薦避免使用IRQ中斷的巢狀。好的程式設計技術可以使用短小的中斷函式給RTOS任務傳送訊號或訊息,因此沒有必要使用中斷巢狀。這同時也避免了中斷巢狀中使用者模式棧出現不可預測的問題。

在沒有RTX核時,ARM應用程式中的中斷函式也以同樣的方法對中斷進行處理。

注意:

RTX核支援FIQ中斷。
在FIQ中斷函式中不允許呼叫RTX核的中斷服務程式。

isr_evt_set

<RL-ARM 實時庫使用者指南.chm>