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:调试脚本服务器终端

Guru**** 2589265 points
Other Parts Discussed in Thread: TMS320F28379D

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1114456/tms320f28379d-debug-script-server-termination

器件型号:TMS320F28379D

尊敬的专家:

我们的客户遇到以下问题

大家好、我正在使用 TMS320F28379D 板并尝试了解如何使用调试服务器脚本(DSS)功能来自动执行一些测试。 我尝试从示例程序的命令提示符加载 JS 文件。 在调用 exit()函数之前,此程序将 LED 闪烁20次。 当我运行测试时、LED 按预期闪烁20次。  但是、我没有看到任何从命令行终止的迹象。 这是预期的吗? 我附加了一个在命令行上看到的图像。 我还将附加我的 JS 文件。 我可能应该提到生成了日志文件、但我无法在 Edge 和 Chrome 中呈现、它只会显示空白页面。 您是否知道这可能是什么原因?

importPackage (Packages.com.ti.debug.engine.scripting);
 importPackage (Packages.com.ti.ccstudio.scripting.environment);
 importPackage (Packages.java.lang)

//修改以下两个变量以匹配您的环境。 使用正斜杠和完整路径。 
//(非 Windows 用户:而不是~μ s/使用主文件夹的完整路径)
//第一个变量应与传递给 setpath.bat 的参数匹配
//第二个变量应为 dss Workshop 文件夹的路径
 var ccsInstallDir ="C:/ti/ccs1011/ccs/"
var dss WorkDir ="C:/ti/ccs-workshop/dspotches/dss-workshop/workshop/workshop/workshop/workshop/shop/dspotchop/dsps 

//必需的文件
 var logfile = dsworkshopDir +"/lab1/log.xml"




ScriptingEnvironment.instance();



 var deviceLogFileStylesheet = ccsInstallDir +"/ccs_base/scription/examples/DebugServerSessions/DefaultScripteds.xsl";var deviceCCXstylesedFile = DebugWorkstopDir +"/target-config/examples/debugServer/env1.000v/env/env1.env/env1.env/env1&tracknv/env/env/env1.env/env1.env/env/env1.env/env1.env/env1.env/env1.env/env/env/env1.env/env1.env1.cs_env/env/env/profiles/ctrack/env/env/env/env/env/env/env/env/env/env/env/env/env1.env/env/env1.env/env/en




debugServer.setConfig(deviceCCXMLFile); 







debugSession.target.run();

debugServer.stop()

scriptEnv.traceEnd()


此致、
William

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

    遗憾的是、我们的 DSS 专家今天已经与会。  他们将在星期一看到您的帖子。

    谢谢、此致、

    乔治

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

    尊敬的 William:

    blinky_cpu01.out 程序是否曾达到出口点? 否则、它可能会卡在特意的循环中。 这不一定是程序的问题、但 DSS 脚本希望程序在某个点停止。 target.run() API 将一直阻止,直到目标停止。 因此、脚本永远无法完成运行。

    [引用 userid="475651" URL"~/support/microrims/C2000-microset-group/C2000/f/C2000-microriers-forum/1114456/tms320f28379d-debug-script-server-termination">我可能要提到生成了日志文件、但我无法在 Edge 和 Chrome 中呈现、它只会显示空白页面。 您是否知道这可能是什么原因?

    这意味着日志从未正确关闭。 基本上从未调用 traceEnd()。 可能是因为它滞留在 target.run()调用中。  

    您可以通过添加缺失的日志来"修复"日志  标记

    谢谢

    Ki

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

    尊敬的 Ki

    感谢你的答复。 我是否可以进一步说明如何设置程序的退出点? 我的代码仅包含 for 循环和 exit 函数。 我意识到 EXIT 函数会调用 exit.c 中的 abort 函数、该函数具有无限循环。 我曾尝试注释掉这一点、但在程序结束时调试不会终止。除此之外、我在未做任何更改的情况下查看了日志文件 hah。 我注意到、日志文件指出目标在0x00008579处暂停、这对应于代码目标文件的.text 段。 这可能是一个问题吗?

    此致、
    William

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [~ userid="475661" URL"μ C/support/microcontrollers/C2000-microcontrollers-group/C2000/f/C2000-microcontrollers-forum/1114456/tms320f28379d-debug-script-server-termination/4132343#413234334"]我的代码仅包含 for 循环和 exit 函数。 我意识到 exit 函数会调用 exit.c 中的 abort 函数、该函数具有无限循环。

    我只需更新 DSS 脚本、即可在 EXIT 函数的位置或 for 循环之后添加断点。 目标停止后、脚本执行将继续。

    谢谢

    Ki