ZHDA045 January   2026 MSPM0G1518 , MSPM0G1519 , MSPM0G3518 , MSPM0G3519

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
  5. 2详细说明
    1. 2.1 概述
      1. 2.1.1 实时固件更新流程
      2. 2.1.2 内存组织
    2. 2.2 方框图
    3. 2.3 代码
      1. 2.3.1 CSC(客户安全代码,Bankswap_CSC_G3519_v2)
        1. 2.3.1.1 CSC — 主函数 (Bankswap_CSC_G3519_v2.c)
        2. 2.3.1.2 CSC — 链接器文件 (Bootloader.cmd)
      2. 2.3.2 应用 (Bankswap_G3519_gpio_output_toggle_v2_SW_Version55_CRC32)
        1. 2.3.2.1 应用程序 — 主函数 (Bankswap_G3519_gpio_output_toggle_v2_SW_Version55_CRC32.c)
        2. 2.3.2.2 应用程序 – UART ISR (Bankswap_G3519_gpio_output_toggle_v2_SW_Version55_CRC32.c)
        3. 2.3.2.3 应用程序 — 链接器文件 (device_linker.cmd)
    4. 2.4 实现
      1. 2.4.1 实现概述
      2. 2.4.2 实现流程
        1. 2.4.2.1 导入 CCS 项目文件 (TI CCS IDE)
        2. 2.4.2.2 执行 MCU 恢复出厂设置 (TI CCS IDE)
        3. 2.4.2.3 在 CCS 中构建 CSC、应用程序 (TI CCS IDE)
        4. 2.4.2.4 在 CCS 中启动调试并将映像下载到 MCU 中 (TI CCS IDE)
        5. 2.4.2.5 生成要发送的数据帧 (uart_frame_gui.exe)
        6. 2.4.2.6 在电脑上通过 UART 发送新固件 (Tera Term)
        7. 2.4.2.7 检查更新的固件 (TI CCS IDE)
  6. 3总结
  7. 4参考资料

内存组织

表 2-1 内存组织
存储器区域 子区域 地址(例如MSPM0G3519) 注释

组 0

(运行)

CSC 0x0000.0000 ~ 0x0000.1999 与组 1 CSC 相同,决定组交换
应用程序 0x0000.2000 ~ 0x0003.FFFF 运行应用程序

组 1

(未激活)

CSC 0x0004.0000 ~ 0x0004.1999 与组 0 CSC 相同,决定组交换
应用程序 0x0004.2000 ~ 0x0007.FFFF 将在此处下载旧固件或新固件

存储器区域分为组 0 和组 1,每个组进一步拆分为 CSC(客户安全代码)部分和应用程序(应用)部分。

CSC 读取存储在每个组起始位置的固件版本(组 0:0x0000.2000,组 1:0x0004.2000,两者均为 uint32_t 格式),以确定哪个组包含最新固件并决定是否需要进行组交换。

例如,如果组 0 已经包含最新固件,则 CSC 不会触发组交换。但是,如果组 1 包含更新的固件版本,则 CSC 会启动组交换。

完成检查后,CSC 会将执行权移交给组 0 中的应用程序。