14.3.3
NVIC中斷配置固件庫
固件庫文件core_cm33.h的最后,還提供了NVIC的一些函數,這些函數遵循CMSIS規則,只要是Cortex-M33的處理器都可以使用,具體如下:
表格15?3符合CMSIS標準的NVIC庫函數

點擊可查看大圖
這些庫函數我們在編程的時候用的都比較少,甚至基本都不用。在配置中斷的時候我們還有更簡潔的方法,請看中斷編程小節。
14.4
RA6M5
瑞薩的RA6M5采用了Cortex-M33內核,Cortex-M33內核的NVIC支持為數眾多的系統異常和外部中斷,除了個別異常的優先級被定死外,其它異常的優先級都是可配置的。Cortex-M33可以配置的支持多達480個外部中斷,瑞薩對于中斷向量表的使用有112個,其中可配置的有96個,RA6M5外圍模塊的可配置的中斷事件有287個,最高可達256個優先級。
14.4.1
中斷向量表
中斷向量表提供了相應的中斷服務程序,我們一般稱它為ISR,中斷響應通過提取中斷服務程序首地址的方式來完成程序指針PC的跳轉。但是對于Cortex-M33的內核,RA6M5在中斷向量表中使用了112個ISR。下面提供了瑞薩RA6M5對于ISR的使用。

點擊可查看大圖
注解
其中前16個是配置Arm的比如初始堆棧指針等為黃色的部分。后面96個是配置ICU事件選擇寄存器ICU.IELSR。具體可翻閱《RA6M5 Group User’s Manual: Hardware》里的Table13.3 Interrupt vector table。
14.4.2
ICU.IELSRn寄存器
IELSRn寄存器選擇NVIC使用的IRQi源。IELSRn對應于NVICIRQ輸入源編號,其中n=0至95。

點擊可查看大圖
IELS[8:0]位將事件信號鏈接到相關的NVIC或DTC模塊。事件選項分為8組(組0至7)。IR狀態標志表示來自IELS[8:0]中指定事件的單個中斷請求。DTCE位是DTC激活使能位,當DTCE位設置為1時,相關事件被選擇為DTC激活源。
14.4.3
中斷事件表
在中斷事件表里,瑞薩RA6M5中可以配置什么中斷,如IIC中斷、GPT中斷、Port中斷、DMAC中斷、DTC中斷、AGT中斷等等,具體可翻閱《RA6M5 Group User’s Manual:Hardware》里的Table13.4Event table。
14.5
ELC模塊簡介
事件鏈接控制器(EventLink Controller,ELC)將各種外圍模塊產生的事件請求作為源信號,連接到不同的模塊,允許模塊之間直接鏈接,不需要CPU干預。就是將事件(中斷源)綁定到外設功能,當事件觸發時,就會執行所綁定的外設功能。你可以認為這是一種中斷,只不過這種中斷不需要CPU的參與。
事件號和中斷號之間的關系:事件鏈接的事件號與相關聯的中斷源的事件號相同。
ELC特性
219種事件信號可以被直接連接到各個模塊。ELC生成ELC事件信號和激活DTC的事件。
-
處理器
+關注
關注
68文章
20298瀏覽量
253608 -
瑞薩
+關注
關注
37文章
22500瀏覽量
91009 -
中斷
+關注
關注
5文章
918瀏覽量
43833 -
NVIC
+關注
關注
0文章
37瀏覽量
12606
原文標題:NVIC中斷配置固件庫&RA6M5——瑞薩RA系列FSP庫開發實戰指南(36)
文章出處:【微信號:瑞薩嵌入式小百科,微信公眾號:瑞薩嵌入式小百科】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
STM32固件庫詳解emouse
stm32外部中斷的配置
【STM32H7教程】第21章 STM32H7的NVIC中斷分組和配置(重要)
NVIC與外部中斷
STM32F1----NVIC
單片機的NVIC與EXTI中斷詳解
NVIC中斷配置固件庫詳解
評論