主题中讨论的其他器件:controlSUITE、 C2000WARE、 UNIFLASH
您好!
我正面临一个奇怪的问题。 我开发了引导加载程序、可以使用 FlashAPI 函数对 CPU1或 CPU2闪存(或 OTP DCSM 位置)进行编程/验证。 引导加载程序被加载(使用并行引导模式访问)并从共享 GSRAMx 运行。 一个引导加载程序用于访问 CPU1、另一个用于 CPU2内核。 我已经对 CPU1闪存、CPU2闪存和 CPU2的 DCSM OTP 位置进行了编程(所有操作都无错误通过)。 之后、我将器件断电、为器件加电、将 CPU1的引导加载程序加载到 GSRAM (负载似乎正常)、并尝试对 DCSM OTP CPU1存储器位置进行编程。 但我的引导加载程序停止工作! 似乎在器件断电和加电后、DCSM OTP CPU2安全设置(仅对 ZONE1 Z1-LINKPOINTER1/2/3、Z1-PSWDLOCK、Zx-GRABRAM、Zx-GRABSECT 和 Zx-CSMPSWD0/1/2/3 OTP 位置进行编程)会禁用运行代码以进行 CPU1编程... 这是正常的吗? 为什么会发生这种情况? 我已经预料到、只有 CPU1 (作为主内核)可以禁用或禁用并行引导模式?
如果我创建一个单一引导加载程序、在一个代码中可以访问 CPU1或 CPU2中的闪存而不对器件断电和上电、我是否能够成功地对两个 CPU 的 DCSM OTP 位置进行编程? controlSUITE/C2000ware 中是否存在一些示例代码、在从 CPU1访问 CPU2与返回之间进行切换?
感谢您的回答!
此致、
Tomas Lehotsky