Thread 中讨论的其他器件:TMS320F280039、SysConfig、 controlSUITE
工具/软件:

我正在使用 C2Prog 刷写 TMS320F280039 器件、需要帮助处理 OTP 存储器编程。
我知道 OTP 存储器(从地址 0x78000 开始)只能编程一次。 我想发布一个适用于以下两种用例的 hex 文件:
- 生产刷写 — 在新器件上,应对 OTP 进行编程。
- 字段更新 — 已对 OTP 进行编程的现场刷写、只应更新主闪存。
但是、我遇到了以下问题:
案例 1:启用“Allow OTP Programming“
- 第一次刷新工作正常。
- 在后续尝试时、它会停止、并显示以下错误:
0x78000 处的闪存程序错误:13/0
案例 2:禁用“Allow OTP Programming“
- C2Prog 会立即出现错误、不会继续使用闪存的其余部分:已请求写入 OTP、但不允许/启用
我的期望:
选项 1:如果禁用了“Allow OTP Programming“、则 C2Prog 应跳过十六进制文件中的任何 OTP 相关数据(例如,目标地址为 0x78000 的内容)。
选项 2:如果尝试 OTP 编程但失败(由于 OTP 已进行编程)、C2Prog 应忽略该错误并继续刷写其他扇区。
我已在以下版本上测试了此行为:
- C2Prog v2.1.5
- 预发布版本 v2.2.0-9
问题:
- 是否有办法配置 C2Prog 来支持此行为?
- 如果不是、这是已知的限制还是预期的限制?
- C2Prog 的未来版本是否支持此功能?
我的目标是避免维护两个单独的十六进制文件—一个带有用于生产的 OTP、另一个没有用于现场更新的 OTP。
提前感谢您的支持!







