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.

[参考译文] TMS320F28388D:将 SYS/BIOS 移植到 CPU2时出现问题

Guru**** 2601915 points
Other Parts Discussed in Thread: SYSBIOS

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1083164/tms320f28388d-problem-with-porting-sys-bios-to-cpu2

部件号:TMS320F28388D
“Thread:SysBIOS”中讨论的其它部件

大家好,

我正在尝试使用3个 CPU,CM,CPU1,CPU2。 我创建了3个项目,我正在 CPU1 main()中初始化 CPU2和 CM。

我可以像你所知运行 CPU1和 CM,但我正在尝试启动 CPU2,但它在循环->时卡在 ti_SysBIOS_hal_HWI_initStack ()函数中    

当(-curStack >((UArg)(&curStack )+1)为{
       *((volatile UINT8 *)curStack)= 0xbebe;
   }

我尝试增加堆栈大小,但这也没有帮助。 请指导我如何为 CPU2创建项目,并使其发挥作用,并与 CM 和 CPU1通信。

我还想在 CPU1和 CPU2中使用 SYS/BIOS

谢谢,此致,

普拉奈。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    如果您看一下 curStack 变量,您能找出它为什么不能离开循环? 它存储在哪里? CPU2是否可以访问该内存?

    您如何在 CPU2项目中配置引导模块? 确保它不会尝试配置 SYSCLK 或执行任何它不应该访问的操作。

    惠特尼

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨,Whitney,

    curStack 变量正在不断更新,在一段时间后,执行将挂起

    [引用 userid="123578" url="~/support/icros/c2000微控制器-组/CC2000 /f/c2000微控制器-论坛/1083164/tms320f28388d- problem-cance-sys-bance-sys-to-CPU2/4009475#4009475]CPU2项目中如何配置启动模块? 确保它不会尝试配置 SYSCLK 或执行任何它不应该访问的操作。

    因此,在 CPU2 .cfg 文件中,我确保插入引导模块,并且禁用 SYSCLK 和监视程序。

    [引用 userid="123578" url="~/support/icros/c2000微控制器-组/CC2000 /f/c2000微控制器-论坛/1083164/tms320f28388d-problem-cance-sys-to-CPU2/4009475#4009475],它存储在哪里? CPU2是否可以访问该内存?

    我没有理解这一部分。 我是否需要从 CPU1中明确声明和定义 CPU2的内存? 在.cfg 文件配置以及 CPU2和 CPU1处理方面,NY 文档会有所帮助。

    普拉奈

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    该__error__函数用于驱动程序库中的断言,它不应与 SYS/BIOS initStack 函数相关。 CCS 调试窗格中的调用栈是否显示了什么函数称为__error__? 如果不清楚,您还可以在内存浏览器中查看“filename”参数(将格式设置为字符串/字符),以查看文件所在的文件。

    [引用 userid="457894" url="~ë/support/icns/c2000-icros-group/c2f/c2000-微控制器-forume/1083164/tms320f28388d- problem with portion-sys-bios-to -CPU2/4010214#4010214"]我是否需要明确声明和定义 CPU1的内存?]

    仅适用于 GSxRAM,因为它们在 CPU1和 CPU2之间共享。 您是否看过 这本多核开发指南

    惠特尼

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨,Whitney,

    以下是我在出错时看到的内容。

    是的,我已经完成了多核开发指南,我已经在该指南的帮助下分配了所需的外围设备。 但当我尝试启动 CPU2时,这正是我要面对的。

    普拉奈

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您需要在“内存浏览器”而不是“变量”窗口中检查文件名,因为 CCS 不会显示全部内容(它无法知道字符串的长度)。 尽管如此,文件名在您的屏幕截图中似乎没有指向有效地址,因此它不起作用。

    文件名和行位于0xE000-0xEFFF 范围(即 GS1RAM)。 您是否已将 GS1RAM 的所有权分配给 CPU2? 请浏览您的 cmd 文件,确保您仅使用已为每个核心分配所有权的 GSxRAM。

    惠特尼