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.

[参考译文] TMS320F28379D:在 CPU1上进行调试时、如何在 CPU2上自动运行程序

Guru**** 2587365 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1197880/tms320f28379d-how-to-automatically-run-a-program-on-cpu2-when-debugging-on-cpu1

器件型号:TMS320F28379D

  当我在 CPU1上启动调试时、是否可以在 CPU2上自动运行项目?

我弄清楚了如何在加载 CPU1工程时自动加载 CPU2工程。  但是,CPU2在 main()停止,与正常调试相同。  我在调试设置中看到了"Auto Run"、"Run to symbol main"的选项。  但是、我希望它能够运行、而不是在 main 停止。

我已经尝试了一点,但到目前为止没有成功。   

例如、我已禁用"自动运行"到 main。  CPU2 仅在 CodeStartBranch 停止。  我尝试了 Device_bootCPU2 (C1C2_Brom_bootmode_boot_from_RAM);、但它不会使 CPU2运行。  (CPU1保持在 Device_bootCPU2函数中的循环中、等待 C2_BootROM_BOOTSTS_SYSTEM_READY)

谢谢!

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

     我找到了我的答案。。。我修改了 CPU2的 GEL 文件、以便它在加载后自动运行。

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

    请您提供详细信息、我有同样的问题。

    thnks (thnks)

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

    ·费勒:如果你可以,你可以分享你的解决方案,这样它将有益于社区吗?

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

    当然可以!

    第一步是修改用于第二个 CPU 的 GEL 文件。  我在 OnRestart 和 OnFileLoaded 例程中添加了 GEL_Run()。  附件是此修改文件(适用于28379D)。

    第二步是修改目标连接文件(ccxml)。  打开此文件、转到 subpath_1/C28xx_CPU2并浏览至修改后的 GEL 文件:

    最后一步是修改调试配置。   在"程序"选项卡下、为器件选择"CPU2"、然后为要自动加载的.out 文件浏览"文件系统"或"工作区"。   

    然后、在 Target 选项卡下、清除 Auto Run 复选框(使其不会在 main 停止)、并选择 Connect to the target on debugger startup (在调试器启动时连接到目标)选项:

    该操作适用于启动调试。  我还没有弄清楚如何在重新加载时自动执行此操作、例如当你在调试、重建时进行更改时、它会询问你是否要下载新程序。  这可能是对 GEL 文件进行的额外更改、但我没有花太多时间查看它。   

    无论如何、我希望这部分内容对您有所帮助。  这对我来说节省了大量时间。

    e2e.ti.com/.../f28379d_5F00_cpu2.gel

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

    谢谢你,马克!

    现在关闭主题帖。

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