如何从Trace32的PRACTICE II脚本中调度外部脚本?

1 投票
2 回答
2505 浏览
提问于 2025-04-16 19:57

可以通过Trace32的PRACTICE II脚本语言来调用一个外部的(Python)脚本吗?

2 个回答

2

为了帮助未来的搜索者,像我一样,这里介绍如何在Python中使用Lauterbach的c-API来执行PRACTICE命令。在运行你的脚本之前,必须先打开TRACE32应用程序。你还需要在你的config.t32文件中添加5行代码(包括两行空行):

#You must have an empty line before

RCL=NETASSIST
PACKLEN=1024
PORT=20010

#and after these three parameters

至少PORT参数的值是可以随意设置的,但它必须在你的配置和脚本中保持一致。这个参数定义了API可用的UDP端口。 下面的代码展示了如何在Python中使用这个API:

from ctypes import *

node = (c_char_p('NODE='),c_char_p('localhost'))
port = (c_char_p('PORT='),c_char_p('20010'))
plen = (c_char_p('PACKLEN='),c_char_p('1024'))

mydll = cdll.LoadLibrary(r'C:\T32\demo\api\capi\dll\T32api.dll')

error = mydll.T32_Config(*node)
error = mydll.T32_Config(*port)
error = mydll.T32_Config(*plen)
error = mydll.T32_Init()
error = mydll.T32_Attach(1)

#Try a PRACTICE command
cmd = c_char_p('DATA.DUMP 0xFF800000')
mydll.T32_Cmd(cmd)

确保T32api.dll文件在脚本指定的目录中。Lauterbach还提供了更多关于这个API的文档。可以查看demo\api\capi文件夹以及这份文档 http://www2.lauterbach.com/pdf/api_remote.pdf

1

使用 OS.Screen 来创建一个命令提示符的会话。

撰写回答