“线程:C2000WARE”中讨论的其它部件
尊敬的 TI 您好,
我正在处理 IPC 外围设备,我对 用于 控制 CPU2启动的 Device_bootCPU2功能有许多疑问。
- 我不理解 CPU2的进程启动,CPU2在通电后是否启动?
- 在 Device_bootCPU2功能中,我注意到我们在等待 CPU2控制系统启动? 通常,在 CPU1的任何干预之前调用此函数,问题是 CPU1在不知道 CPU2何时启动时应如何等待? 如果 CPU2已启动,为什么不重置 CPU2?
// // Loop until CPU02 control system IPC flags 1 and 32 are available // while (((HWREG(IPC_BASE + IPC_O_FLG) & IPC_FLG_IPC0) != 0U) || ((HWREG(IPC_BASE + IPC_O_FLG) & IPC_FLG_IPC31) != 0U)) { }- 接收1号和32号两旗意味着什么? CPU2将设置这些标志是因为什么?
- 我还能理解为什么 TI 将 IPCSET 寄存器设置为“HWREG(IPC_BASE + IPC_O_SET) = 0x80000001U”?
// //CPU01 to CPU02 IPC Boot Mode Register // HWREG(IPC_BASE + IPC_O_BOOTMODE) = bootMode; // // CPU01 To CPU02 IPC Command Register // HWREG(IPC_BASE + IPC_O_SENDCOM) = BROM_IPC_EXECUTE_BOOTMODE_CMD; // // CPU01 to CPU02 IPC flag register // HWREG(IPC_BASE + IPC_O_SET) = 0x80000001U;
在参考手册中,我正在寻找与 IPCSET 寄存器集相关的信息,但我没有找到任何信息,可以帮助解决这个问题吗?
提前感谢您,
S.Tarik
