ZHCABX9A november   2022  – march 2023 MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G3105 , MSPM0G3106 , MSPM0G3107 , MSPM0G3505 , MSPM0G3506 , MSPM0G3507 , MSPM0L1105 , MSPM0L1106 , MSPM0L1303 , MSPM0L1304 , MSPM0L1305 , MSPM0L1306 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346

 

  1.   摘要
  2.   商标
  3. 1MSPM0 产品系列概述
    1. 1.1 引言
    2. 1.2 STM32 MCU 与 MSPM0 MCU 的产品系列比较
  4. 2生态系统和迁移
    1. 2.1 软件生态系统比较
      1. 2.1.1 MSPM0 软件开发套件 (MSPM0 SDK)
      2. 2.1.2 CubeIDE 与 Code Composer Studio IDE (CCS)
      3. 2.1.3 CubeMX 与 SysConfig
    2. 2.2 硬件生态系统
    3. 2.3 调试工具
    4. 2.4 迁移过程
    5. 2.5 迁移和移植示例
  5. 3内核架构比较
    1. 3.1 CPU
    2. 3.2 嵌入式存储器比较
      1. 3.2.1 闪存功能
      2. 3.2.2 闪存组织
      3. 3.2.3 嵌入式 SRAM
    3. 3.3 上电和复位总结和比较
    4. 3.4 时钟总结和比较
    5. 3.5 MSPM0 工作模式总结和比较
    6. 3.6 中断和事件比较
    7. 3.7 调试和编程比较
  6. 4数字外设比较
    1. 4.1 通用 I/O(GPIO、IOMUX)
    2. 4.2 通用异步接收器/发送器 (UART)
    3. 4.3 串行外设接口 (SPI)
    4. 4.4 I2C
    5. 4.5 计时器(TIMGx、TIMAx)
    6. 4.6 窗口化看门狗计时器 (WWDT)
    7. 4.7 实时时钟 (RTC)
  7. 5模拟外设比较
    1. 5.1 模数转换器 (ADC)
    2. 5.2 比较器 (COMP)
    3. 5.3 模数转换器 (DAC)
    4. 5.4 运算放大器 (OPA)
    5. 5.5 电压基准 (VREF)
  8. 6修订历史记录

中断和事件比较

中断和异常

MSPM0 和 STM32G0 都根据器件的可用外设来注册和映射中断和异常矢量。表 3-10 中包含每个器件系列的中断矢量的总结和比较。中断或异常的优先级值越低,优先级就越高。对于其中的一些矢量,优先级是用户可选的,而对于其他矢量,优先级是固定的。

在 MSPM0 和 STM32G0 中,NMI、复位和硬故障处理程序等异常被赋予负优先级值,以指示它们始终比外设中断具有更高的优先级。对于具有可选中断优先级的外设,两个器件系列均提供多达 4 个可编程优先级。

表 3-10 中断比较
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 可选
仅适用于 MSPM0G 系列器件。
在 MSPM0L 系列器件上为 TIMG4

事件处理程序和 EXTI(扩展中断和事件控制器)

MSPM0 器件包含一个专用事件管理器外设,它扩展了 NVIC 的概念,允许将来自外设的数字事件作为中断传输到 CPU,作为触发器传输到 DMA,或传输到另一个外设以触发硬件操作。事件管理器还可以与电源管理和时钟单元 (PMCU) 进行握手,以确保存在必要的时钟和电源域,从而执行触发事件操作。

GUID-20210316-CA0I-RVBF-0RQX-DNSS7BRRSQC4-low.svg图 3-2 通用事件路由

在 MSPM0 事件管理器中,生成事件的外设称为发布者,而基于发布者执行操作的外设、DMA 或 CPU 称为订阅者。可用发布者和订阅者的潜在组合非常灵活,可以在移植软件时使用,以替代以前由中断矢量和 CPU 处理的功能,从而完全绕过 CPU。例如,I2C 转 UART 桥接器可能先前在接收到 I2C 停止时触发了 UART 传输,使用 ISR 设置标志,或直接加载 UART TX 缓冲区。利用 MSPM0 事件处理程序,I2C 事务完成事件可以触发 DMA 直接加载 UART TX 缓冲区,因此无需 CPU 采取任何操作。

有关如何使用 MSPM0 中的事件处理程序的更多详细信息,请参阅 MSPM0G 技术参考手册MSPM0L 技术参考手册的“事件”部分。

不要与 MSPM0 事件处理程序混淆,STM32G0 系列器件实现了扩展中断和事件控制器 (EXTI),它允许通过来自 IO 或外设的可配置事件将系统从停止模式唤醒。使用 IO 唤醒功能(请参阅 MSPM0 技术参考手册的 IOMUX 部分)和 GPIO FastWake(请参阅 MSPM0 技术参考手册的 GPIO 部分),可以在 MSPM0 中最好地复制 STM32G0 EXTI 的唤醒功能。如果唤醒是针对单个操作,则事件处理程序外设能够为外设操作发生请求必要的 PMCU 资源,并在之后返回适用的低功耗模式。