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.

[参考译文] CCS/TMS320F28379D:如何在已经是第一个工程的情况下调试第二个工程、正在调试和运行

Guru**** 3001220 points

Other Parts Discussed in Thread: CONTROLSUITE

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/923705/ccs-tms320f28379d-how-to-debug-2nd-project-while-already-1st-project-is-debugging-and-running

器件型号:TMS320F28379D
Thread 中讨论的其他器件:controlSUITE

工具/软件:Code Composer Studio

你好  

我尝试同时使用2个 CPU。 我已经在 CPU 1中调试并运行了项目1现在当我尝试在 CPU 2中调试并运行项目2时、它告诉我"停止现有的调试项目1"我已经阅读了这个链接 http://dev.ti.com/tirex/explore/node?node=AF77MYXC5GXV9l1NS.Clig__FUz-xrs__LATEST 它告诉我不要调试而是加载第二个项目 、但是 没有得到该过程。 请您逐步说明整个过程、以便我可以在 CPU 1和2上同时运行两个项目。

谢谢

AVI

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

    Avi、您好!

    [引用 user="Avi P">它指示不进行调试,但加载第二个项目 ,但没有执行该过程。 请您逐步说明整个过程、以便我可以在 CPU 1和2上同时运行两个项目。

    请参阅随附的视频以了解示例:

    /cfs-file/__key/communityserver-discussions-components-files/81/multicore_5F00_debug.zip

    谢谢

    Ki

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

    非常感谢您提供有用且内容丰富的视频。 在您的示例中、您加载的文件具有两个不同的.out 文件、但当我尝试这两个文件时、它仅运行 CPU1、但 CPU 2暂停。  

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

    [引用 user="Avi P">但 CPU 2已暂停。  [/报价]

    没错。 当您手动加载程序时、它将自动运行到 main、然后在那里停止(如您的屏幕截图所示)。 然后、您可以手动按下"resume"按钮来执行 CPU2。 在我的视频中、CPU2也在 main 暂停、我手动按下"resume"按钮 (0:39)以继续执行。

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

    是的、如果我添加了一个不同的项目、这会起作用、但我尝试执行的操作是、在 CPU2中加载同一个项目、然后它给了我这个错误、不知道该怎么做。

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

    该程序到底有什么作用? 它的设计是否使其能够在多核目标的两个单独内核上运行? 在我的示例中、每个程序都用于特定的内核。 这就是它有两个独立项目的原因。 尝试在两个内核上加载/运行第一个程序会导致各种冲突。  

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

    这使 LLC 转换器保持11.6V 输出。 如果您打开 controlSUIT、则这是项目的位置、  

    C:\ti\controlSUITE\development_kits\TIDM_1001\v1_00_00\f2837x\HV2PHILLLC。

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

    此应用程序似乎是针对单个 CPU 器件编写的。 此外、它也可能从共享 RAM 中执行。 请注意屏幕截图中的以下消息:

     "如果正在一个内核上执行擦除/编程(E/P)操作、则另一个内核不应从共享 RAM (SR)执行、因为它们用于 E/P 代码。"

     这就是您看到错误的原因。 CPU1正在执行、而 CPU2正在对闪存进行编程。

    您可以在对 CPU2进行编程之前尝试先停止 CPU1。 这可能会使刷写成功。 但是、我认为在您尝试同时运行两个程序时会出现其他问题、除非您修改了要加载到 CPU2的程序以支持此双核环境。 这些都不是工具(也不是我的专业知识领域以及本论坛通常支持的内容)。

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

    感谢 Ki 的快速积极响应、因此我无法运行这两个相同的程序、或者另一个程序具有 E/P 如何确定项目是否使用了 E/P。

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

    E/P 只是闪存的擦除/编程。 加载程序是一个"E/P"操作。 基本上、如果另一个 CPU 从共享 RAM 运行、则无法为一个 CPU 加载程序。

    如何确定程序是否从共享 RAM 运行? 检查生成的映射文件或项目 的链接器命令文件。