Thread 中讨论的其他器件:controlSUITE
你(们)好
我正在尝试实现从主系统调用的控制系统的软件复位。
从主系统调用
SysCtlSubSystemReset (SYSCTL_CONTROL_SYSTEM_RES_CNF);
我看到控制系统有反应:它跳转至错误的0x3ff66b 存储器地址、当然会卡在那里。 这个地址不在 PieVectTable 中、我不明白为什么它跳到那里。
我应该怎么做才能正确复位控制系统?
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.
你(们)好
我正在尝试实现从主系统调用的控制系统的软件复位。
从主系统调用
SysCtlSubSystemReset (SYSCTL_CONTROL_SYSTEM_RES_CNF);
我看到控制系统有反应:它跳转至错误的0x3ff66b 存储器地址、当然会卡在那里。 这个地址不在 PieVectTable 中、我不明白为什么它跳到那里。
我应该怎么做才能正确复位控制系统?
大家好、Vivek
您提到的流程图仅说明 了释放 RST 信号并等待 C28进行 IPC 处理。
我尝试了以下代码:
SysCtlSubSystemReset (SYSCTL_CONTROL_SYSTEM_RES_CNF); //发送引导命令以允许 C28应用程序开始执行 HWREG (MTOCIPC_BASE + IPC_O_MTOCIPCCOM)= IPC_MTOC_EXECT_BOOTMODE_CMD; HWREG (MTOCIPC_BASE + IPC_O_MTOCIPCBOOTMODE)= CBROM_MTOC_BOOTMODE_BOOT_From_FLASH; //对选定的请求任务强制执行 IPC 事件并启用状态检查。 HWREG (MTOCIPC_BASE + IPC_O_MTOCIPCSET)|=(IPC_FLAG1 | IPC_FLAG32);
但结果相同:C28内核不启动。
我还尝试重新初始化 PLL 并调用 IPCMtoCBootControlSystem (CBROM_MTOC_BOOTMODE_BOOT_FROM _FLASH);
但它也提供了相同的结果。
您能否提供一个有关如何重新启动控制子系统(BOOT_FLOG_FLASH 模式)的确切示例?
您好!
"controlSUITE\device_support\f28m35x\中的所有示例 \F28M35x_examples_Dual"(例如、闪烁)具有相同的函数调用-
// 发送引导命令以允许 C28应用程序开始执行
IPCMtoCBootControlSystem (CBROM_MTOC_BOOTMODE_BOOT_FROM _FLASH);
在 M3代码中、在 C28x 复位例程之后、您应该调用此函数 以从闪存引导 C28x。
此致、
Vivek Singh