ZHDA311 September   2026 MSPM33C321A

 

  1.   1
  2.   摘要
  3.   商标
  4. 1 简介
    1. 1.1 术语
  5. 2 NONMAIN 架构
    1. 2.1 MSPM33 系列概述
    2. 2.2 NONMAIN 配置概述
    3. 2.3 NONMAIN 存储器
  6. 3 NONMAIN 配置
    1. 3.1 BCR 配置
      1. 3.1.1 BCR 配置 ID
      2. 3.1.2 串行线调试 (SWD) 策略
        1. 3.1.2.1 访问策略
        2. 3.1.2.2 调试策略
          1. 3.1.2.2.1 SHA2-256 密码示例
        3. 3.1.2.3 批量擦除和恢复出厂设置策略
      3. 3.1.3 闪存安全配置
        1. 3.1.3.1 MAIN 闪存安全配置
        2. 3.1.3.2 DATA 闪存安全配置
        3. 3.1.3.3 NONMAIN 闪存静态写保护
      4. 3.1.4 引导期间的 SYSPLL 配置
      5. 3.1.5 客户安全代码 (CSC)
        1. 3.1.5.1 CSC 策略
        2. 3.1.5.2 闪存存储体交换策略
        3. 3.1.5.3 调试保持
      6. 3.1.6 快速引导模式
      7. 3.1.7 应用程序摘要校验
        1. 3.1.7.1 CRC32 摘要校验示例
        2. 3.1.7.2 SHA2-256 摘要校验示例
      8. 3.1.8 BSL 策略
      9. 3.1.9 BCR 校验和
        1. 3.1.9.1 CRC 校验失败处理
    2. 3.2 BSL 配置
      1. 3.2.1 BSL 配置 ID
      2. 3.2.2 调用引脚配置
      3. 3.2.3 基于 ROM 的通信接口
        1. 3.2.3.1 UART 接口
        2. 3.2.3.2 I2C 接口
        3. 3.2.3.3 CAN 接口
      4. 3.2.4 BSL 安全配置
        1. 3.2.4.1 访问密码
        2. 3.2.4.2 读出功能
        3. 3.2.4.3 警报功能
        4. 3.2.4.4 应用程序完整性校验
      5. 3.2.5 BSL 校验和
        1. 3.2.5.1 CRC 校验失败处理
  7. 4 使用 SysConfig 进行 NONMAIN 配置
    1. 4.1 SysConfig 介绍
    2. 4.2 使用 SysConfig 进行 BCR 配置
      1. 4.2.1 密码配置
      2. 4.2.2 SYSPLL 配置
      3. 4.2.3 闪存安全配置
      4. 4.2.4 应用程序摘要校验
      5. 4.2.5 其他 BCR 配置
    3. 4.3 使用 SysConfig 进行 BSL 配置
      1. 4.3.1 BSL 访问密码
      2. 4.3.2 BSL 调用引脚配置
      3. 4.3.3 BSL 通信接口
      4. 4.3.4 其他 BCR 配置
  8. 5 在应用程序代码中进行 NONMAIN 配置
  9. 6 使用 IDE 工具进行 NONMAIN 操作
    1. 6.1 NONMAIN 配置文件
    2. 6.2 项目擦除属性
    3. 6.3 密码保护调试
  10. 7 使用编程工具进行 NONMAIN 操作
    1. 7.1 使用 UniFlash 进行 NONMAIN 操作
    2. 7.2 使用 J-Flash 进行 NONMAIN 操作
  11. 8 常见问题解答 (FAQ)
    1. 8.1 MCU 锁定状态分析
      1. 8.1.1 硬件问题分析
        1. 8.1.1.1 硬件电路设计
        2. 8.1.1.2 调试器连接
        3. 8.1.1.3 外部复位信号
      2. 8.1.2 软件问题分析
        1. 8.1.2.1 CPU 进入故障状态
        2. 8.1.2.2 BCR 配置
        3. 8.1.2.3 低功耗模式(STOP 或 STANDBY)
        4. 8.1.2.4 SHUTDOWN IO 状态
        5. 8.1.2.5 SWD IO 功能
        6. 8.1.2.6 WDT 或 IWDT 复位
        7. 8.1.2.7 软件 POR 或 BOOTRST
    2. 8.2 解锁 MSPM33 器件
      1. 8.2.1 强制 MCU 进入 BSL 模式
      2. 8.2.2 发送 BSL 命令
      3. 8.2.3 执行 DSSM 命令
    3. 8.3 调试错误概述
      1. 8.3.1 无错误代码:DAP 连接错误
      2. 8.3.2 无错误代码:连接到 MSPM33 内核失败
      3. 8.3.3 错误 - 6305:PRSC 模块无法写入例程寄存器
      4. 8.3.4 错误 - 260:尝试连接到 XDS110 失败
      5. 8.3.5 错误 - 261:来自 XDS110 的无效响应
      6. 8.3.6 错误 - 615:目标无法识别格式正确的 SWD 标头
      7. 8.3.7 错误 - 1001:此器件不支持请求的操作
      8. 8.3.8 错误 - 2131:无法访问器件寄存器
    4. 8.4 MSPM33 引导诊断
  12. 9 总结
  13. 10参考资料

NONMAIN 配置概述

MSPM33 NONMAIN 闪存具有不同类型的结构布局。在某些布局类型中,某些功能会被缩减或不受支持。

表 2-2 NONMAIN 配置参数
配置参数 寄存器字段 NONMAIN 布局类型
A
BCR BCR 配置 ID BCRCONFIGID ✓
串行线调试 (SWD) 策略配置 访问策略 BOOTCFG0 ✓
调试策略
调试密码 DEBUG_LOCK ✓
DEBUG_NS_LOCK ✓
SWD 恢复出厂设置配置 恢复出厂设置访问属性 BOOTCFG4 ✓
恢复出厂设置密码 MASS_ERASE_y ✓
SWD 批量擦除配置 批量擦除访问属性 BOOTCFG4 ✓
批量擦除密码 FACTORY_RESET_y ✓
闪存安全配置 Bank0 主 FLASH 写入擦除保护 BANK0_WRITE_ERASE_PROTECTION_A

BANK0_WRITE_ERASE_PROTECTION_B

✓
Bank0 主 FLASH 安全保护 BANK0_SECURITY_PROTECTION_A

BANK0_SECURITY_PROTECTION_B

✓
Bank0 主 FLASH 特权保护 BANK0_PRIVILEGE_PROTECTION_A

BANK0_PRIVILEGE_PROTECTION_B

✓
Bank1 主 FLASH 写入擦除保护 BANK1_WRITE_ERASE_PROTECTION_A

BANK1_WRITE_ERASE_PROTECTION_B

✓
Bank1 主 FLASH 安全保护 BANK1_SECURITY_PROTECTION_A

BANK1_SECURITY_PROTECTION_B

✓
Bank1 主 FLASH 特权保护 BANK1_PRIVILEGE_PROTECTION_A

BANK1_PRIVILEGE_PROTECTION_B

✓
数据 FLASH 写入擦除保护 DBANK_WRITE_ERASE_PROTECTION ✓
数据 FLASH 安全保护 DBANK_SECURITY_PROTECTION ✓
数据 FLASH 权限保护 DBANK_PRIVILEGE_PROTECTION ✓
NONMAIN 静态写保护 BANK0_NM_USER_CONFIG ✓
SYSPLL 配置 引导期间的系统 PLL 配置 BOOTCLK0

BOOTCLK1

✓
器件转换错误 器件转换密码错误 BAD_CONV_y ✓
客户安全代码 (CSC) CSC 策略 BOOTCFG2 ✓
闪存存储体交换策略 ✓
调试保持 BOOTCFG1 ✓
BCR 快速引导模式 BOOTCFG3 ✓
应用程序摘要校验配置 应用程序摘要校验策略 SECURE_BOOT_MODE ✓
应用程序起始地址 USER_SECURE_APP_START_ADDR
应用程序长度 USER_SECURE_APP_LENGTH
应用程序校验和 USER_SECURE_APP_HASH_y
BSL 策略 启用调用引脚检查 BOOTCFG1 ✓
启用 BSL 模式 BOOTCFG3
BCR 校验和 CRC32-ISO3309 BCRCRC ✓
BSL BSL 配置 ID BSLCONFIGID ✓
BSL 引脚配置 调用引脚配置 BSLCONFIG0 ✓
UART 接口配置 引脚配置 BSLPINCFG0 ✓
波特率配置 BSLCONFIG1 ✓
I2C 接口配置 引脚配置 BSLPINCFG1 ✓
目标地址配置 I2C_SLAVE_ADDR ✓
CAN 接口配置 引脚配置 BSLPINCFG2 ✓
BSL 安全配置 BSL 访问密码 PASSWORD_y ✓
BSL 读出功能 BSLCONFIG0
BSL 警报配置 BSLCONFIG1
应用程序完整性校验 APP_REV_POINTER
BSL 校验和 CRC32-ISO3309 BSLCRC ✓
器件控制 客户密钥配置 密钥计数 KEY_COUNT ✓
密钥版本 KEY_REV
安全启动的活动密钥 MPUK_ACTIVE
DSSM 的活动密钥 DSSM_ACTIVE
生命周期维护 已配置客户代码 CODE_PROVISION ✓
失效分析已启用 FAILURE_ANALYSIS
已启用停用 DCOM
用于 HSSE 器件的硬件保护闪存安全配置 Bank0 主 FLASH 写入擦除保护 BANK0_WRITE_ERASE_PROTECTION_A

BANK0_WRITE_ERASE_PROTECTION_B

✓
Bank0 主 FLASH 安全保护 BANK0_SECURITY_PROTECTION_A

BANK0_SECURITY_PROTECTION_B

✓
Bank0 主 FLASH 特权保护 BANK0_PRIVILEGE_PROTECTION_A

BANK0_PRIVILEGE_PROTECTION_B

✓
器件控制 用于 HSSE 器件的硬件保护闪存安全配置 Bank1 主 FLASH 写入擦除保护 BANK1_WRITE_ERASE_PROTECTION_A

BANK1_WRITE_ERASE_PROTECTION_B

✓
Bank1 主 FLASH 安全保护 BANK1_SECURITY_PROTECTION_A

BANK1_SECURITY_PROTECTION_B

✓
Bank1 主 FLASH 特权保护 BANK1_PRIVILEGE_PROTECTION_A

BANK1_PRIVILEGE_PROTECTION_B

✓
数据 FLASH 写入擦除保护 DBANK_WRITE_ERASE_PROTECTION ✓
数据 FLASH 安全保护 DBANK_SECURITY_PROTECTION ✓
数据 FLASH 权限保护 DBANK_PRIVILEGE_PROTECTION ✓
备注: 对于不同类型的 NONMAIN 布局,寄存器地址偏移可能不同。有关详细信息,请参阅器件特定技术参考手册,链接见节 10。
备注: 器件配置(器件配置)是 MSPM33 用于维持生命周期的 OTP 区域。HSSE 是 MSPM33 的生命周期状态之一(其他状态包括 HSKP、HSFS 和 HSFA)。如需更多信息,请参阅 MSPM33C 安全用户指南或 MSPM33 C3 系列 160MHz 微控制器技术参考手册