如何从 t32start 命令行界面启动和关闭 Trace32 实例?

How to start and close Trace32 instances from t32start command line interface?

我发现 Lauterbach Trace32 允许从命令行启动 Trace32 实例。

我有一个 ts2 文件。我正在尝试使用 t32start.exe 来启动和关闭 Trace32 实例。我大致尝试了以下内容:

t32start ts2_file_path -RUNITEM core_item_from_tree

但是我无法使用相同的方法关闭 Trace32 实例。谁能告诉我打开和关闭 Trace32 实例的正确方法?

更新

有时,可能必须强制关闭 GUI,而目标仍然是 运行。 (可能因为挂了或者DAP配置失败)

在这些情况下,重新启动 GUI 时会出现以下弹出窗口:

这会阻止使用 Trace32,因为此后远程访问总是 returns 通信失败。有什么方法可以通过将标志传递给 trace32.exe 命令或以其他方式自动重置目标(按 "yes")?

从命令行启动 TRACE32:

T32Start 是一种工具,可帮助您生成 TRACE32 配置文件,然后使用该临时生成的配置文件为您的目标架构系列启动实际的 TRACE32 应用程序。

因此,要启动 TRACE32,您可以:

  • 使用您建议的命令行通过 T32Start 启动 TRACE32(仅适用于 Windows)
  • 生成一个永久配置文件并直接用它启动TRACE32。

TRACE32 安装的 PDF 子文件夹中的文档 "installation.pdf" 告诉您如何创建配置文件。您还可以使用 T32Start 创建永久配置文件,如下所示:

  1. 使用 T32Start 创建您需要的配置。确保为每个具有唯一端口的内核启用 "Advanced > Interfaces > API Port",以便稍后能够从命令行关闭 TRACE32。
  2. 然后右键单击核心(带有劳特巴赫徽标的节点)并从上下文菜单中选择 "Show Start Environment..."。
  3. 然后打开的 window 在右下角有一个 "Save Batch Job As..." 按钮和一个 "Save Config As..." 按钮。使用这两个按钮来保存这两个文件。假设您已将配置保存在名称 myconfig.t32.
  4. 调整保存的批处理作业,使调用TRACE32的命令行指向配置文件。最后,您应该有一行 t32m<cpu> -c <configfile.t32> -s <startscript.cmm> 形式的行,其中 是您所在的 CPU 体系结构系列的简称去调试(比如 ARM、PPC、RISCV——你会在批处理文件中看到它)。例如。 c:\t32\bin\windows64\t32marm -c c:\t32\myconfig.t32 -s c:\t32\mytestcase.cmm
  5. 如果您有 AMP 多核设置,请对配置的所有核心重复步骤 2 到 4。
  6. 合并所有保存的批处理文件并使用批处理文件启动所有 TRACE32 实例。 (最好在启动第一个 TRACE32 GUI 后等待几秒钟)。

正在从命令行关闭 TRACE32:

确保在您要关闭的所有 TRACE32 GUI 上启用远程 API。 您会在 "Advanced > Interfaces > API Port"
的每个核心节点的 T32Start 中找到该设置 最后,每个 TRACE32 GUI 的配置文件包含以下几行:

RCL=NETASSIST
PORT=20000

该块前后必须有一个空行(而该块也可能包含以 PACKLEN= 开头的行)
PORT= 之后的值定义了一个 UDP/IP 端口并且对于每个 TRACE32 GUI 必须是唯一的。

如果您有一个打开的 TRACE32 GUI 并启用了 API 端口,您可以通过 TRACE32 远程 API 向它发送命令。 (请参阅 TRACE32 安装中的 api_remote.pdf。)使用远程 API 向 TRACE32 实例发送简单命令的命令行工具是 t32rem.exe(您可以在 "bin/windows/" TRACE32 安装的子文件夹)。

使用t32rem如下:

t32rem localhost port=<myport> <command>

对于 选择您在配置文件中 PORT= 之后使用的端口号。对于 使用您要发送的任何 TRAC32 命令。例如。命令 QUIT 关闭 TRACE32 GUI。

但是,如果您对 TRACE32 命令使用 QUIT,t32rem 将拼命等待一段时间以等待您刚刚关闭的 GUI 的响应。为避免创建测试文件“quit.cmm”并将以下行放入该脚本中:

WAIT 800.ms
QUIT

然后通过命令行关闭GUI:

c:\t32\bin\windows64\t32rem.exe localhost port=20000 "DO ""c:\t32\quit.cmm"" "

(CMM 文件路径两边的双引号仅在路径包含空格时才需要。)