ZHCU802B August   2020  – March 2026 TMS320F280040-Q1 , TMS320F280040C-Q1 , TMS320F280041 , TMS320F280041-Q1 , TMS320F280041C , TMS320F280041C-Q1 , TMS320F280045 , TMS320F280048-Q1 , TMS320F280048C-Q1 , TMS320F280049 , TMS320F280049-Q1 , TMS320F280049C , TMS320F280049C-Q1

 

  1.   1
  2.   C2000 MCU 在有器件复位时的实时固件更新
  3.   商标
  4. 1简介
  5. 2LFU 所需资源
  6. 3存储器布局
  7. 4LFU 中的静态代码
  8. 5LED 示例应用和 LFU 流程
  9. 6运行 LED 示例
    1. 6.1 串行闪存编程器更新
    2. 6.2 静态代码编程 – 通过 Code Composer Studio (CCS) 加载
    3. 6.3 应用的实时固件更新
    4. 6.4 限制和疑难解答
  10. 7扩展实现方案
    1. 7.1 F28P65x MCU 上带复位的实时固件更新
      1. 7.1.1 F28P65x LFU 硬件要求
      2. 7.1.2 闪存组织
      3. 7.1.3 FWU 引导模式
      4. 7.1.4 LED 示例应用
        1. 7.1.4.1 LFU 命令处理
      5. 7.1.5 运行示例
        1. 7.1.5.1 加载示例
        2. 7.1.5.2 组合 CPU1 和 CPU2 固件映像
        3. 7.1.5.3 LFU over MCAN 主机编程器
          1. 7.1.5.3.1 编译主机编程器
          2. 7.1.5.3.2 使用主机编程器
      6. 7.1.6 限制
  11. 8修订历史记录
使用主机编程器

要执行 LFU,必须使用主机编程器通过 MCAN 将应用程序映像发送到 MCU,然后 MCU 将收到的数据编程到非活动闪存组中。

要使用主机编程器,请编译并运行生成的 can_lfu_host_programmer.exe。支持以下命令行参数:

表 7-3 LFU 主机编程器参数
参数 说明 要求
-d 目标器件,目前唯一有效的选项是“f28p65x” 必需
-a1 要编程到 CPU1 非活动闪存组的 CPU1 应用程序映像 仅对 CPU1 执行 LFU 时需要
(其他情况下可选)
-a2 要编程到 CPU2 非活动闪存组的 CPU2 应用程序映像 仅对 CPU2 执行 LFU 时需要
(其他情况下可选)
-a3 要编程到 CPU1 和 CPU2 非活动闪存组的 CPU1 和 CPU2 组合映像 对 CPU1 + CPU2 执行多 LFU 时需要
(其他情况下可选)

启动主机编程器后,会向用户显示几个命令选项(详见节 7.1.4.1):

  • CPU1 LFU:要执行 CPU1 LFU,首先下载 -a1 命令行参数所提供的应用程序映像,然后复位 CPU1 以激活新固件。
    • 注意:如果 CPU1 复位也是系统复位,CPU2 也会复位。
  • CPU2 LFU:要执行 CPU2 LFU,首先下载 -a2 命令行参数所提供的应用程序映像,然后复位 CPU2 以激活新固件。
    • 注意:CPU2 复位向 CPU1 发出 NMI。CPU1 必须处理 NMI 并使 CPU2 退出复位,以激活新 CPU2 固件,否则整个系统都会复位。
  • CPU1+2 多 LFU:要执行 CPU1 + CPU LFU,首先下载 -a3 命令行参数所提供的组合应用程序映像,然后复位系统以激活新固件。
  • 完成:退出主机编程器应用程序。

示例用法如图 7-8 所示:


 F28P65x LFU 示例用法
图 7-8 F28P65x LFU 示例用法