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.

[参考译文] LAUNCHXL-F28P65X:在 CPU1和 CP2上运行 C2000ware 示例时出现问题?

Guru**** 2589280 points
Other Parts Discussed in Thread: C2000WARE, SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1348977/launchxl-f28p65x-problem-to-run-c2000ware-examples-on-both-cpu1-and-cp2

器件型号:LAUNCHXL-F28P65X
主题中讨论的其他器件:C2000WARESysConfig

团队、

客户能够在 C28x CPU1中构建、加载和运行 C2000Ware SCI 示例。
然后尝试创建第二个示例以在 C28x CPU2内核上运行时不起作用。
请参阅下面的确切过程。

您能帮助吗?
是否有特定的过程来创建工程和配置、以便在 C28x CPU2上运行?

我在测试中使用以下配置:

  • CCS 版本:12.6
  • 编译器版本:22.6.1
  • SysConfig 版本:1.20.0
  • 评估板:LAUNCHXL F28P65X

仅使用 CPU1启动。
我根据 C2000Ware 5.1.0.0中的单核 SCI 示例添加了内部配置(路径:C2000Ware_5_01_00_00\device_support\f28p65x\examples\CPU1)、并添加了更新.syscfg 文件的其他不同功能块。 此处、我使用-b 参数在项目属性中添加了板信息(请参阅下图1)。

然后尝试添加 CPU2:
尝试分隔功能软件块的各个部分以及与 CPU2内核的一个通信通道。

此处、我采用了路径 C2000Ware_5_01_00_00\driverlib\f28p65x\examples\C28x_dual\empty_projects 中的"empty_projects"示例、以更熟悉双核概念和对必要 CCS 工程的处理、包括 syscfg。 在示例项目中、-b 选项未设置任何类型、我将其保持原样。 为了不再次手动重新创建 syscfg、我从上面正在工作的"单核测试"中接管了 syscfg、并将内容复制到"双核示例"工程的 CPU1 syscfg 文件中。 在电路板特定源的第一个创建阶段、由于我接管了 syscfg 文件中的 LAUNCHXL 板引脚排列细节、我面临一些错误。 我使用相同的 GPIO 编号将板的细节替换成了控制器的通用引脚定义。 这导致在"双核"项目中、CPU1中具有所有功能的成功编译。 在下一步、我将 syscfg 对话框中的一些功能块(查看两个 CPU、并可以在它们之间切换)从 CPU1移动到 CPU2 (详细信息是 CPU 计时器0、DAC 和 CAN) 在集成的 syscfg 功能的帮助下在内核之间移动块。 此外、对两个项目的 main.c 文件进行了必要的更改。 在构建过程中、我看到 CPU1已成功构建、包括调用 sysconfig_cli.bat 文件。 对于 CPU2、我在调用 sysconfig_cli.bat 时遇到错误、如下面的图2所示。

错误中提到的 GPIO8是我选择的位于 CPU1上的 ePWM5的通道 A 输出?

坚持使用此示例、我修改了 syscfg 文件、并在 syscfg 对话框中添加板信息(请参阅图3、这是之前完成的更改、因此两列都相同)。 如图4所示、在 syscfg 中的不同区域调整 PinMux 选项后、我收到图5中描述的两个 CPU 的错误消息、用以抱怨 boosterpack1.30。

提前感谢、

安东尼

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

    Anthony:

    对于"Error:cannot set '$assign' to 'boosterpack1.30'..."、您能否点击 SysConfig GUI 右上角的三个点、然后选择"preferences and actions"?

    您能否更改"设备引脚标签"以便仅选择器件引脚名称。 您能看到这是否修复了您的错误吗?  

    否则、此问题似乎是由从一个 SysConfig 文件直接复制并粘贴到另一个文件引起的。 为了使其顺利工作、为这两个 SysConfig 文件选择的器件和电路板必须完全相同。

    在 SysConfig 中手动重新输入信息可能会更容易。

    此致、

    本·科利尔

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

    尊敬的 Benjamin:

    感谢您的支持。 您的第二条建议解决了这个问题。 我从 C2000Ware 中获取了简单的 IPC 示例(因为我需要该功能)、并为两个内核从零开始重新创建 SysConfig。 花了一点时间,但工作正常。   

    此致

    帕特里克