This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好、查姆斯、
在 F2837xD 中,我们可以使用以下 IPC boot 命令让 CPU2从闪存引导,我们不知道如何在 F28388D 中执行此操作。
// CPU01到 CPU02 IPC 引导模式寄存器
IpcRegs.IPCBOOTMODE = C1C2_Brom_BOOTMODE_BOOT_BOOT_FROM _FLASH;
// CPU01到 CPU02 IPC 命令寄存器
IpcRegs.IPCSENDCOM = Brom_IPC_execute _BOOTMODE_CMD;
// CPU01到 CPU02 IPC 标志寄存器
IpcRegs.IPCSET.ALL = 0x8000000001;
F28388D 的引导命令定义似乎与 F2837xD 不同、我可以从哪里获得此信息?
感谢你的帮助
Luke
Luke
有关详细信息、请参阅引导 CPU2和 cm 部分中 TRM 的引导章节。
此外、请参阅 C2000Ware 中 device.c 文件中的"Device_bootCPU2"和"Device_bootCM"函数。
~/device_support\f2838x\common\source
此致
Chris
Chris、
感谢您的回答。
我还有一个问题、如果我将不同的 CPU2器件频率设置为 IPC 引导模式、引导 ROM 会有什么不同?
此致、
Luke
Luke
引导 ROM 使用该器件频率信息来调整闪存初始化期间的闪存等待状态(和软件超时)。
此致
Chris
Chris、
您是否意味着 CPU2引导 ROM 将在进入闪存入口点之前调整闪存等待状态?
我选中 TRM 中的"Booting CPU2 and CM"部分、看起来 Boot ROM 不会响应 IPC Boot Status 寄存器的状态、这是正确的吗? 如果是、我们不必像在 F28377D 上那样检查 CPU2引导状态。
请提供建议、感谢您的帮助。
Luke
Luke、
闪存等待状态针对加电进行了调整、但在离开引导前已改回默认值。
CPU2/CM 会在引导期间更新状态、但一旦 CPU1设置引导所需的 IPC reg 和标志、就不需要 CPU1执行任何其他操作。
此致
Chris
Chris、
我不明白为什么引导 ROM 需要在引导期间调整闪存等待状态、因为代码是在引导 ROM 中执行的?
根据您的注释、在发出 IPC 引导模式和标志后、CPU1无需执行任何其他操作。 我仍然很好奇、在哪里可以找到我们在 F2837xD TRM 中展示的 CPU1/CPU2/CM 引导状态位字段表?
此致、
Luke
Luke
为了澄清、作为闪存组和泵初始化过程的一部分、闪存睡眠和等待时间是根据器件频率进行配置的(使闪存组进入激活模式、使泵就绪)。
在引导 TRM 章节的"引导状态信息"部分中、您将找到每个内核的引导状态信息。
此致
Chris