Trace32函数运行时无法正常工作

问题描述 投票:0回答:1

我正在尝试调试从A点到函数调用B的一段代码的执行流程。

为此,我正在使用cmm脚本激活一些Trace图形

SYStem.RESetTarget
Break.Delete
Break EcuM_Prv_StartOS
Go
WAIT !STATE.RUN() 5.s
Trace.Init
Trace.METHOD SNOOPer
Trace.Mode PC
Trace.Arm
Break  RE_CS_S_SquibDrv_Reset_func
Go
WAIT !STATE.RUN() 5.s
Trace.CHART.FUNC

我希望在图表图中看到从A(EcuM_Prv_StartOS)到B(RE_CS_S_SquibDrv_Reset_func)的所有函数调用和所有函数花费的时间。但是相反,我只看到它们之间的一些函数,当我探查是否执行了哪些函数时,我还在图中附加了带有堆栈框架的窗口,该窗口有效地显示了所有调用,直到我在B中的断点为止enter image description here

因此,我想知道我是在做错什么,还是只是该图没有按我的预期工作,这意味着显示了代码的所有执行流程。

注:uC是Infineon tricore TC27X;该内核实际上没有内部TRACE功能。但是此功能位于Perf TAB下,而不是TRACE TAB下,并且Powerview GUI不会阻止使用这些图表,因此我想它可以与其他TRACE功能一起使用]]

[我正在尝试调试从A点到函数调用B的一段代码的执行流程。为此,我正在使用cmm脚本SYStem.RESetTarget Break.Delete激活一些Trace图形。

runtime trace32
1个回答
0
投票

您已选择Trace.METHOD SNOOPer。该方法意味着需要定期采样某些项目(在您的情况下为PC)。对于复杂的运行时分析,这不是合适的跟踪方法。

© www.soinside.com 2019 - 2024. All rights reserved.