首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在运行cmm脚本后从T32获得反馈?

如何在运行cmm脚本后从T32获得反馈?
EN

Stack Overflow用户
提问于 2017-01-12 01:00:48
回答 2查看 3.3K关注 0票数 0

我正在通过命令行运行一个T32 CMM脚本(放入一个python包装程序),但是我想知道T32的状态是否已经成功地运行了,或者是否有错误,如何从T32得到反馈呢?

代码语言:javascript
复制
cd C:\T32\bin\windows64

Config.t32:

代码语言:javascript
复制
RCL=NETASSIST
PORT=20000
PACKLEN=1024

; Environment variables
OS=
ID=T32
TMP=C:\Users\jhigh\AppData\Local\Temp
SYS=C:\T32


PBI=
USB

; Printer settings 
PRINTER=WINDOWS

用途:-

代码语言:javascript
复制
t32marm.exe -s c:\Temp\vi_chip_cmd_line.cmm \\Filerlocation\data\files

EN

回答 2

Stack Overflow用户

发布于 2017-01-12 16:49:05

TRACE32“用于远程控制和JTAG访问的API”允许您与正在运行的TRACE32应用程序进行通信。

要为TRACE32应用程序启用API,只需将以下两行添加到TRACE32启动配置文件("config.t32")中。这两行之前和之后的空行是强制性的。

代码语言:javascript
复制
RCL=NETASSIST
PORT=20000

API的使用在PDF api_remote.pdf中描述,它位于TRACE32安装的PDF文件夹中,也可以从http://www.lauterbach.com/manual.html下载。

您可以在http://www.lauterbach.com/scripts.html上找到关于如何将远程API与Python一起使用的示例(只需在页面中搜索"Python")。

若要检查实践脚本("vi_chip_cmd_line.cmm")是否仍在运行,请使用API函数T32_GetPracticeState();

我还建议在脚本的开头使用Var.NEWGLOBAL int \state创建一个人工变量。在编写脚本的测试期间,将变量"\state“设置为使用Var.Set \state=42增加值。通过TRACE32命令EVAL Var.VALUE(\state)和API调用T32_EvalGet(),您可以获得变量"\ state“的当前值,通过这样做,您可以检查脚本是否达到了其最终状态。

另一种方法是使用TRACE32命令APPEND从实践脚本(“APPEND”)编写日志文件,并从您的APPEND脚本中读取日志文件。

票数 3
EN

Stack Overflow用户

发布于 2017-01-13 18:08:23

请查看您的T32安装,了解如何使用T32 API ( demo /api/python)。请记住,如果没有有效的许可证,它将无法工作。同样重要的是,如果在64位主机上使用32位cygwin内部的Python,则需要加载32位DLL。

配置:

代码语言:javascript
复制
RCL=NETASSIST
PORT=20000
PACKLEN=1024

Python脚本:

代码语言:javascript
复制
import platform
import ctypes

# Adjust the path / name to the DLL
t32api = ctypes.CDLL("./t32api64.dll")

t32api.T32_Config(b"NODE=",b"localhost")
t32api.T32_Config(b"PORT=",b"20000")
t32api.T32_Config(b"PACKLEN=",b"1024")

t32api.T32_Init()
t32api.T32_Attach(1)
t32api.T32_Ping()

t32api.T32_Cmd(b"AREA")

t32api.T32_Exit()

然后,您可以使用Holger建议的命令/技术:

代码语言:javascript
复制
T32_GetPracticeState()

才能达到目前的跑步状态。和/或在脚本中设置一个变量

代码语言:javascript
复制
Var.Assign \state=1
Var.Assign \state=2
....

然后使用T32_ReadVariableValue()轮询它

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41603475

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档