当前位置:网站首页>TRACE32——Break
TRACE32——Break
2022-08-05 06:42:00 【Rainmicro】
TRACE32——Break
Break 是TRACE32中使用频率非常高的一组命令,主要包含以下几个功能:
- 控制CPU的暂停 (Break)
- 设置各种断点 (Break.Set)
- 设置跟踪数据的过滤条件 (使用Break.Set配合相应选项, 例如**/TraceOn /TraceData等**)
- 编写CTL,实现复杂触发断点的编程 (Break.Program)
Break命令控制CPU的暂停
这是Break命令最常用的功能,当CPU/内核处于running状态时:

如果需要停下CPU,可以执行命令:
Break.direct//命令等同于如下简写:Break//或者b
也可以在TRACE32界面中点击暂停按钮:

或者使用键盘快捷键F8:

如果CPU/内核能够成功响应调试器的暂停请求,TRACE32右下角会出现stopped字样。此时便可以查看当前代码运行位置、内存以及寄存器等资源。

如果发现无法停住CPU,TRACE32会提示"emulation running"等字样:


原因一般是CPU/内核处于安全、异常、复位、休眠等状态下,无法响应外部调试器的暂停请求,具体分析方法可参考如下链接:
Break command returns “emulation running”
有时,当调试CPU中的从核时,由于从核需要主核运行相应的代码来解复位/初始化/激活/唤醒从核。这时我们可以使用命令:
Break.request
给从核发送停止请求,但并不要求从核立即停住。从核在被初始化/唤醒后,会响应停止请求并停住。该命令适用于调试从核的前期代码。
Break.Set设置断点
断点功能可以参考:
- <T32安装目录>\pdf\training_debugger.pdf
- https://www2.lauterbach.com/pdf/training_debugger.pdf
Break.Set设置跟踪数据的过滤条件
使用TRACE32 的 On-chip/Off-chip 跟踪时,如果需要对跟踪数据进行过滤,可以使用Break.Set 配合相关选项来进行设置:
/TraceEnable
/TraceOn
/TraceOFF
/TraceData
不同芯片采用不同的跟踪方案,可以在TRACE32安装目录的pdf文件夹中根据对应的芯片架构找到相应的文档:
ARM Cortex-A/R ETM:
training_arm_etm.pdf
ARM Cortex-M ETM:
training_cortexm_etm.pdf
AURIX Trace:
training_aurix_trace.pdf
NEXUS Trace :
training_nexus.pdf
Break.Program实现复杂断点的编程
TRACE32新功能CTL(Complex Trigger Language), 可以使用Break.Program 命令进行复杂断点的编程,可以实现跟芯片时间、性能相关的高级断点功能。
例如,当中断被禁用100ms后,对CPU进行暂停:

边栏推荐
- 《基于R语言的自动数据收集》--第3章 XML和JSON
- 文本特征化方法总结
- 【JVM调优】Xms和Xmx为什么要保持一致
- Hash these knowledge you should also know
- re正则表达式
- 今天虚竹哥又发现了一款好用的国产化API工具
- typescript65-映射类型(keyof)
- 技术分析模式(九)三重顶部和底部
- Japan Sanitary Equipment Industry Association: Japan's warm water shower toilet seat shipments reached 100 million sets
- MySQL:order by排序查询,group by分组查询
猜你喜欢

UDP group (multi)cast

MySQL:连接查询 | 内连接,外连接

在anaconda Promat界面import torch通过,在jupyter notebook中报错的问题(仅提供思路理解!)

2022熔化焊接与热切割操作证考试题及模拟考试

共享内存+inotify机制实现多进程低延迟数据共享

Tencent Internship Summary

typescript62-泛型工具类型(record)

Modeling of the MAYA ship

Using printf function in STM32

Falsely bamboo brother today and found a localization of API to use tools
随机推荐
re正则表达式
蓝牙gap协议
Kioxia and Aerospike Collaborate to Improve Database Application Performance
2022起重机司机(限桥式起重机)考试题库及模拟考试
TCP sticky packet unpacking problem + solution
How to avoid online memory leaks
After working for 3 years, I recalled the comparison between the past and the present when I first started, and joked about my testing career
typescript67-索引查询类型
腾讯实习总结
Cannot compare or sort text, ntext, and image data types
ndk编译so库
【LeetCode】235.二叉搜索树的最近公共祖先
Hong Kong International Jewellery Show and Hong Kong International Diamond, Gem and Pearl Show kick off
HR:这样的简历我只看了5秒就扔了,软件测试简历模板想要的进。
typescript59-泛型工具类型(partial )
在anaconda Promat界面import torch通过,在jupyter notebook中报错的问题(仅提供思路理解!)
The NDK compiler so libraries
binary search tree problem
[上海]招聘.Net高级软件工程师&BI数据仓库工程师(急)
原来使Maya Arnold也能渲染出高质量作品!超赞小技巧