TRACE32SimulatorforARM
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 前言
Trace32 ICD ARM USB能实时DEBUG代码在手机中的运行情况,功能强大,但需要连接TRACE32硬件才能工作。更重要的是,对于概率性死机的BUG,用Trace32 ICD ARM USB应该是很难找到问题,因为你不能确定手机什么时候crash。
其实TRACE32还有一个WIN32版本,用户只需要把手机crash时候的寄存器信息dump出来,就能在WIN32下定位到死在代码的那一行,非常类似于EMP 平台的CHKARM工具。
这就是本文将要描述的Trace32 Simulator for ARM工具。
2 安装
WIN32版的TRACE32需要重新安装,安装文件和硬件版TRACE32是一样的,只是安装时候的选项不同,而且WIN32版的需要安装在不同的目录下(比如trace32-win32)。
z运行安装文件\trace32\bin\setup\setup.exe。首先设置安装路径,注意不要和硬件版TRACE32安装在同一个目录下,请新建一个文件夹(比如
trace32-win32)
z选择【New Installation】,然后Next
z选择【Simulator】,这个是WIN32版TRACE32的选项(硬件版TRACE32是选择第2项,注意不要搞错了)
z选择默认值,然后Next
z选择【SIM ARM7 ARM9 ARM10 ARM11】,和硬件版TRACE32一样
z安装中,安装完毕后就可以使用了。
3 使用
首先请确保你有保存当前手机软件的原始ARM文件。
手机死机时,按“#”键进入downloading模式。
z运行【QPST】→【Memory Debug】,制指定数据线端口
z点击【Get Regions】显示将要dump的信息
z点击【SaveTo】保存dump数据
z创建保存dump数据的文件夹,建议放到Arm/ms/dump目录下
z保存dump数据,这个过程花的时间比较长
z保存完毕dump数据后,运行软件【Trace32 Simulator for ARM】首先把工作路径切换到\source\Arm\ms下
z在命令行中输入do load_log,然后按回车
z根据屏幕上的提示,选择【2. Call stack or memory compression log (.cmm file)】,然后按回车
z根据屏幕上的提示,直接按回车
z选中刚才dump出来的load.cmm文件并导入
z导入load.cmm中……
z完成load.cmm导入后,在命令行输入do load_rex_cor e 命令,并按回车
z TRACE32定位到死机的代码行(高亮显示部分),和硬件版的TRACE32一样,可以查看当前变量值等有用的信息……
分析,代码如下图所示。
4 后记
本文旨在给出一个WIN32版TRACE32的快速使用指南,预知更多细节,
请查阅TRACE32帮助文档或请教有使用经验的同事。
TRACE32提供的功能是非常强大的,使用的细节和技巧需要我们在实际工作中不断去摸索总结。
希望大家把使用心得分享出来,让TRACE32在我们的工作中发挥更大的作
用。