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.
您好!
我在脚本控制台中使用 Java 脚本运行各种调试和测试方案。 但我在使用脚本将焦点从一个处理器更改为另一个处理器时遇到了问题。 例如、我可以使用 debug_session_1_target.connect()连接到 F28375D Delfino 双核处理器的内核1、其中 debug_Session_1与 CPU1关联。 然后、我加载符号、设置断点并运行到该断点。 此时、我要使用脚本将焦点更改为内核2/CPU2、以便我也可以在那里加载符号并启动它运行(通过脚本)。 但当我转到加载符号时、它会将这些符号加载到核心1/CPU1、因为焦点仍然在那里。 如何使用 Java Scripting 将 Debug 窗口中的焦点从 CPU1更改为 CPU2。 通过脚本执行 debug_session_2.target.connect()不起作用。 它连接到处理器、但仍专注于 CPU1。 在脚本编写之外、我会右键单击 CPU2并选择连接目标。 但我需要通过自动脚本执行所有这些操作。
此致、
Robert
您好、Robert、
请注意、DSS 用于自动执行实际的调试引擎。 没有 GUI 依赖项。 因此、没有用于控制 GUI 的 DSS API。 在"Debug"视图中更改调试上下文是 GUI 操作。
在任何情况下、DSS 都无关紧要。 您可以为每个 CPU (CPU1和 CPU2)打开调试连接、并使用每个 CPU 的相应调试会话对象来指定需要执行操作的 CPU。 DSS 将始终按使用的调试会话对象而不是调试上下文进行。
谢谢
Ki
您好 Ki、
感谢您的回复。 我为每个 CPU 打开了新的调试会话、如下所示
VAR 脚本= ScriptingEnvironment.instance();
var debug_server = script.getServer("DebugServer.1");
var debug_Session_1 = debug_server.openSession("Texas Instruments XDS2xx USB Debug Probe_0/C28xx_CPU1");
var debug_Session_2 = debug_server.openSession("Texas Instruments XDS2xx USB Debug Probe_0/C28xx_CPU2");
但是、加载符号时会出现问题。 在我看到的内容中,或者至少在我用于执行此操作的调用 symLoad()中,没有调试会话的选择。 它仅加载到活动的 GUI 会话。 除 symLoad 外、是否有其他调用会将符号加载到指定的调试会话?
Robert
啊、您使用的是脚本控制台命令、而不是 DSS API。 我现在了解这个问题。 在您的情况下、我建议使用等效的 DSS API:
debug_session_2.symbol.load ( );
谢谢
Ki
谢谢 Ki、她的工作很顺利。 您是否知道可以在其中找到此类呼叫及其排列的任何集中位置?
Robert
我参考 DSS API 文档:
/ccs/ccs_base/scripting/docs/DS_API/index.html
谢谢
Ki