劳特巴赫脚本:检查程序是否在断点处停止
lauterbach scripting: checking if program stops at breakpoint
我必须通过脚本检查程序是否在断点处停止:
示例:
break.set func1 /程序
开始
IF(程序在断点处停止)
(
做某事
)
我是这门语言的新手,我似乎无法在 google 上找到相关信息。
谢谢
如果您不知道程序是否停止在您需要等待一定时间(由您定义)的程序处,然后检查处理器的运行-状态,如果停止然后检查PC是否在你的符号处。
; set breakpoint
Break.Set func1 /Program
; start processor
Go
; wait until processor stopped or 5 seconds elasped
WAIT !STATE.RUN() 5.0s
IF STATE.RUN()
(
PRINT %ERROR "Processor still running!"
ENDDO
)
; check PC
IF R(PC)!=sYmbol.BEGIN(func1)
(
PRINT %ERROR "Processor stopped but wrong PC!"
ENDDO
)
PRINT "Test passed!"
ENDDO
如果您的实际目标是在遇到断点时执行脚本,我建议使用 Break.Set
的选项 /CMD
。
例如:
Break.Set func1 /Program /CMD "DO smth.cmm"
我必须通过脚本检查程序是否在断点处停止: 示例:
break.set func1 /程序
开始
IF(程序在断点处停止) ( 做某事 )
我是这门语言的新手,我似乎无法在 google 上找到相关信息。 谢谢
如果您不知道程序是否停止在您需要等待一定时间(由您定义)的程序处,然后检查处理器的运行-状态,如果停止然后检查PC是否在你的符号处。
; set breakpoint
Break.Set func1 /Program
; start processor
Go
; wait until processor stopped or 5 seconds elasped
WAIT !STATE.RUN() 5.0s
IF STATE.RUN()
(
PRINT %ERROR "Processor still running!"
ENDDO
)
; check PC
IF R(PC)!=sYmbol.BEGIN(func1)
(
PRINT %ERROR "Processor stopped but wrong PC!"
ENDDO
)
PRINT "Test passed!"
ENDDO
如果您的实际目标是在遇到断点时执行脚本,我建议使用 Break.Set
的选项 /CMD
。
例如:
Break.Set func1 /Program /CMD "DO smth.cmm"