NESA009A november 2022 – march 2023 MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G3105 , MSPM0G3106 , MSPM0G3107 , MSPM0G3505 , MSPM0G3506 , MSPM0G3507 , MSPM0L1105 , MSPM0L1106 , MSPM0L1227 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1303 , MSPM0L1304 , MSPM0L1305 , MSPM0L1306 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346 , MSPM0L2227 , MSPM0L2228 , MSPM0L2228-Q1
MSPM0 和 STM32G0 會根據裝置的可用周邊設備來登錄和對應中斷和例外狀況向量。表 3-10 中包含每個設備系列的中斷向量的摘要和比較。中斷或異常的優先順序較低的值,優先於具有較高優先順序值的中斷。對於其中的一些向量,優先順序是可供使用者選擇的,對於其他向量則是固定的。
在 MSPM0 和 STM32G0 中,NMI、RESET 和硬錯誤處理常式等例外會被指定爲負優先順序值,以表示它們始終優先於周邊設備中斷。對於具有可選中斷優先等級的周邊設備,兩個系列裝甲宜上最多可以使用 4 個可編程優先等級。
NVIC 編號 | STM32G0 | MSPM0x | ||
---|---|---|---|---|
中斷/例外 | 優先順序 | 中斷/例外 | 優先順序 | |
- | 重設 | 固定:-3 | 重設 | 固定:-3 |
- | NMI 處理常式 | 固定:-2 | NMI 處理常式 | 固定:-2 |
- | 硬錯誤處理常式 | 固定:-1 | 硬錯誤處理常式 | 固定:-1 |
- | SVCall 處理常式 | 可選 | SVCall 處理常式 | 可選 |
- | PendSV | 可選 | PendSV | 可選 |
- | SysTick | 可選 | SysTick | 可選 |
0 | 窗型監控系統中斷 | 可選 | INT_GROUP0:WWDT0、DEBUGSS、FLASHCTL、WUC FSUBx 和 SYSCTL | 可選 |
1 | 功耗電壓偵測器中斷 | 可選 | INT_GROUP1:GPIO0 和 COMP0 | 可選 |
2 | RTC 和時間戳記 | 可選 | 計時器 G1 (TIMG1) | 可選 |
3 | 快閃記憶體全域中斷 | 可選 | UART3(1) | 可選 |
4 | RCC 全域中斷 | 可選 | ADC0 | 可選 |
5 | EXTI0 和 EXTI1 中斷 | 可選 | ADC1(1) | 可選 |
6 | EXTI2 和 EXTI3 中斷 | 可選 | CANFD0(1) | 可選 |
7 | EXTI4-EXTI15 中斷 | 可選 | DAC0(1) | 可選 |
8 | UCPD1/UCPD2/USB | 可選 | 已保留 | 可選 |
9 | DMA1 通道 1 | 可選 | SPI0 | 可選 |
10 | DMA1 通道 2 和 3 | 可選 | SPI1(1) | 可選 |
11 | DMA1 通道 4-6 和 DMA2 通道1-5 | 可選 | 已保留 | 可選 |
12 | ADC 和比較器 | 可選 | 已保留 | 可選 |
13 | 計時器1 (TIM1)、中斷、更新、觸發和變換 | 可選 | UART1 | 可選 |
14 | TIM1 擷取比較 | 可選 | UART2(1) | 可選 |
15 | TIM2 全域中斷 | 可選 | UART0 | 可選 |
16 | TIM3 和 TIM4 全域中斷 | 可選 | TIMG0 | 可選 |
17 | TIM6、LPTIM1 和 DAC 中斷 | 可選 | TIMG10(1) | 可選 |
18 | TIM6 和 LPTIM2 全域中斷 | 可選 | TIMA0(1) | 可選 |
19 | TIM14 全域中斷 | 可選 | TIMA1 | 可選 |
20 | TIM15 全域中斷 | 可選 | TIMA2(2) | 可選 |
21 | TIM16 和 FDCAN0 全域中斷 | 可選 | TIMH0(1) | 可選 |
22 | TIM17 和 FDCAN1 全域中斷 | 可選 | 已保留 | 可選 |
23 | 12C1 全域中斷 | 可選 | 已保留 | 可選 |
24 | I2C2 和 I2C3 全域中斷 | 可選 | I2C0 | 可選 |
25 | SPI1 全域中斷 | 可選 | I2C1 | 可選 |
26 | SPI2 和 SPI3 全域中斷 | 可選 | 已保留 | 可選 |
27 | USART1 全域中斷 | 可選 | 已保留 | 可選 |
28 | USART2 和 LPUART2 全域中斷 | 可選 | AES(1) | 可選 |
29 | USART 3-6 和 LPUART1 全域中斷 | 可選 | 已保留 | 可選 |
30 | CEC 全域中斷 | 可選 | RTC(1) | 可選 |
31 | AES 和 RNG 全域中斷 | 可選 | DMA | 可選 |
MSPM0 裝置包含專屬事件管理器周邊設備,此裝置延伸 NVIC 的概念,允許將周邊設備的數位事件以中斷形式傳輸至 CPU、以觸發形式傳輸至 DMA,或傳輸至另一個周邊設備來觸發硬體動作。事件管理器也可與電源管理和時鐘單元 (PMCU) 執行交握,確保存在必要的時鐘和電源域,以執行觸發的事件動作。
在 MSPM0 事件管理器中,產生事件的周邊設備稱爲發佈者,而以發佈器為基礎的周邊設備、DMA 或 CPU 稱爲訂閱者。潛在的可用發佈者和訂閱者組合極度靈活,可以在移轉軟體時使用,以取代以前由中斷向量和 CPU 處理的功能,進而完全繞過 CPU。例如,I2C-to-UART 橋接器可能在先前收到 I2C STOP 時即已觸發 UART 傳輸 (使用 ISR 設定旗標),或直接載入 UART TX 緩衝器。使用 MSPM0 事件處理常式時,I2C 交易完成事件可能會觸發 DMA 以直接載入 UART TX 緩衝區,因此不需要 CPU 採取任何動作。
請參閱 MSPM0G 技術參考手冊或 MSPM0L 技術參考手冊的「活動」一節,以取得有關使用 MSPM0 事件處理常式的詳細資訊。
為不與 MSPM0 事件處理常式混淆,STM32G0 系列裝置實作延伸中斷和事件控制器 (EXTI),如此可透過 IOS 或周邊設備的可配置事件從停止模式喚醒系統。STM32G0 EXTI 的喚醒功能在 MSPM0 中可使用 IO 喚醒功能 (請參閱 MSPM0 技術參考手冊的 IOMUX 一節) 和 GPIO FastWake (請參閱 MSPM0 技術參考手冊的 GPIO 一節) 進行最佳複製。如果喚醒是針對單一動作,則事件處理常式周邊設備可以請求必要的 PMCU 資源以使周邊設備運作,並在之後返回適用的低功耗模式。