ZHCABY5D December   2022  – September 2025 MSPM0C1105 , MSPM0C1106 , MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G3105 , MSPM0G3106 , MSPM0G3107 , MSPM0G3505 , MSPM0G3506 , MSPM0G3507 , MSPM0L1105 , MSPM0L1106 , MSPM0L1227 , MSPM0L1227-Q1 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346 , MSPM0L2227 , MSPM0L2227-Q1 , MSPM0L2228 , MSPM0L2228-Q1

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
    1. 1.1 引导加载程序概念
    2. 1.2 MSPM0 引导加载程序结构
      1. 1.2.1 基于 ROM 的 BSL
      2. 1.2.2 带有基于闪存的插件接口的基于 ROM 的 BSL
      3. 1.2.3 基于闪存的辅助 BSL
    3. 1.3 MSPM0 BSL 功能和演示摘要
  5. 2BSL 主机实现摘要
  6. 3非主闪存中的 BSL 配置(配置 NVM)
    1. 3.1 非主闪存简介
    2. 3.2 示例 – 使用 Sysconfig 禁用 PA18 BSL 调用引脚
  7. 4引导加载程序主机
    1. 4.1 MCU 主机代码简介
      1. 4.1.1 硬件连接
      2. 4.1.2 TXT 到头文件的转换
      3. 4.1.3 使用演示的分步操作
    2. 4.2 PC 主机示例
      1. 4.2.1 准备映像文件和密码文件
      2. 4.2.2 使用 GUI 的步骤
  8. 5引导加载程序目标
    1. 5.1 基于 ROM 的默认 BSL
      1. 5.1.1 UART 接口
      2. 5.1.2 I2C 接口
    2. 5.2 基于闪存的插件接口演示
      1. 5.2.1 UART 接口
        1. 5.2.1.1 使用演示的分步操作
        2. 5.2.1.2 如何调试插件接口代码
      2. 5.2.2 I2C 接口
      3. 5.2.3 SPI 接口
      4. 5.2.4 CAN 接口
    3. 5.3 辅助 BSL 演示
      1. 5.3.1 基于闪存的辅助 BSL 从 0x1000 开始
      2. 5.3.2 基于闪存的辅助 BSL 从 0x0000 开始
        1. 5.3.2.1 MSPM0C 基于闪存的 0x0 地址 BSL 演示
        2. 5.3.2.2 实时固件更新
  9. 6常见问题
    1. 6.1 链接器文件修改
    2. 6.2 由 CCS 恢复出厂设置以恢复器件
  10. 7参考资料
  11. 8修订历史记录

非主闪存简介

MSPM0 器件中有三种不同类型的闪存。

表 3-1 闪存区域
闪存区域 区域内容 可执行 使用者 编程者
FACTORY 器件 ID 和其他参数 应用 仅限 TI(不可修改)
NON-MAIN 器件引导配置(BCR 和 BSL) 引导 ROM TI、用户
MAIN 应用代码和数据 应用 用户

NON-MAIN 是闪存的专用区域,可存储 BCR 和 BSL 引导器件所用的配置数据。该区域不用于任何其他目的。BCR 和 BSL 都具有配置策略,这些策略可以保留为默认值(在开发和评估期间是典型值),也可以通过更改编程到 NON-MAIN 闪存区域中的值来针对特定用途进行修改(在生产编程期间是典型值)。由于 MSPM0C 系列没有基于 ROM 的 BSL,因此 MSPM0C 系列器件的 NON-MAIN 中没有与 BSL 相关的配置部分。

表 3-2 NON-MAIN 区域概述
NON-MAIN 部分 起始地址 终止地址
BCR 配置 41C0.0000h 41C0.005Bh
BCR 配置 CRC 41C0.005Ch 41C0.005Fh
BSL 配置 41C0.0100h 41C0.0153h
BSL 配置 CRC 41C0.0154h 41C0.0157h

主 BSL 参数可在表 3-3 中配置。有关在非主闪存中具有不同内容的不同系列,请参阅 TRM 了解更多详细信息。

表 3-3 NON-MAIN 闪存 BSL 配置主参数
参数用例 参数 说明
通用 BSLCONFIGID BSL 配置 ID
BSLPW 256 位 BSL 访问密码。(对于辅助 BSL,是可选的)
BSLCONFIG0 BSL 调用引脚配置和存储器读出策略。(对于辅助 BSL,存储器读出策略是可选的)
BSLAPPVER 应用版本字的地址。
BSLCONFIG1 BSL 安全配置。(对于辅助 BSL,是可选的)
BSLCRC NON-MAIN 存储器 BSL_CONFIG 部分的 CRC 摘要 (CRC-32)。
基于 ROM 的 BSL BSLPINCFG0 BSL UART 引脚配置
BSLPINCFG1 BSL I2C 引脚配置
带有基于闪存的插件接口的基于 ROM 的 BSL BSLPLUGINCFG 定义 MAIN 闪存中是否存在 BSL 插件及其类型。
BSLPLUGINHOOK 用于插件初始化、接收、发送和取消初始化函数的函数指针
基于闪存的辅助 BSL PATCHHOOKID 备用 BSL 配置
SBLADDRESS 备用 BSL 的地址。

有关 NON-MAIN 闪存的更多详细信息,请参阅 MSPM0 L 系列 32MHz 微控制器技术参考手册MSPM0 G 系列 80MHz 微控制器技术参考手册