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/TMS320F28020:DSS 在第一个 target.run()命令上挂起

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/789349/ccs-tms320f28020-dss-hangs-on-first-target-run-command

器件型号:TMS320F28020

工具/软件:Code Composer Studio

您好!

我设法将 DSS 服务器用于多个设备、如 software-dl.ti.com/.../sdto_dss_handbook.html 中所述。 该脚本在所有器件中正确加载程序,但随后在第一个 debugSession.target.run()命令上挂起。 调试器也挂起。 第一个器件开始运行、但所有其他器件仍保持暂停状态。 是否有人建议如何解决此问题?

提前感谢。

Martin

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Martin、
    您的配置是什么样的? 它是一个定制板、在同一个 JTAG 扫描链上具有多个 F28020器件吗? 还是多仿真器设置?

    此外、请描述您在运行目标时"挂起"的含义。 API 调用永远不会返回? 是否设置了超时? 请注意,target.run()是阻塞调用。 在目标停止(通过断点、应用程序的退出点等)或触发超时时引发异常之前、它不会返回。

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

    您好 Ki、

    我的实际设置包括两个 DIMM100扩展坞中的两个 C28343。 我希望能够使用与一个链相同的代码并在多调试器模式下对所有这些代码进行编程。 但是、我的最终设置将包含多个使用多个调试器和连接的 JTAG 链的 Piccolos。

    在这最后的设置中、我希望能够通过适当的命令文件使用 ON 命令对所有 piccolos 进行编程和启动。 如果我理解正确、我的问题是运行命令目标不会停止。 它们不应该这样做。 命令启动后、所有用户都应立即运行并按照程序进行操作、而不会中断。

    您建议的解决方案是将异常抛出超时。 您能否提供一个简单的示例或提示、以便我可以在其中找到有关此策略的更多信息?

    谢谢
    Martin

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

    [引用 user="User1164857"]如果我理解正确,我的问题是运行命令目标不会停止[/quot]

    没错。 target.run()是同步运行命令

    [引用 user="User1164857">您建议的解决方案是将异常抛出超时。 您能否提供一个简单的示例或提示、以便我可以在其中找到有关此策略的更多信息?

    setScriptTimeout() API 可用于设置超时。 传递给 API 的值以毫秒为单位。 示例:

    //创建脚本实例
    脚本= ScriptingEnvironment.instance();

    //设置30秒超时以补偿首次启动调试器的潜在长延迟
    script.setScriptTimeout(30000);

    它将引发异常。 您可以抓住并处理它:

    http://software-dl.ti.com/ccs/esd/documents/users_guide/sdto_dss_handbook.html#exception-handling

    请注意还有另一个运行 API:target.runAsynch。 此运行命令不会阻止等待暂停。 这可能是您正在寻找的内容。

    谢谢

    Ki

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

    您好 Ki、

    非常感谢您的建议。

    "target.runAsynch()"命令可以完美地解决我的问题。 下一次我先转速。

    此致、
    Martin