能人文章: 嵌入式调试手段

转自: http://blog.csdn.net/zhenwenxian/article/list/2


调试嵌入式系统,比如手机,平板电脑。遇到bug要定位代码的位置。一般有下面的方法。

1,通过命令行参数将控制台重定性到某个串口,PC的串口连接到手机的UART串口,打开超级终端或者用secure_CRT工具,设置比特率,将手机的log输出到securecrt,从log大概判断到代码出错位置,再根据需要在代码添加log进行精确定位bug的位置。

2,如果手机没有串口,可以通过USB的连接用ADB调试,adb shell 进人控制台,用dmesg命令输出log。

3,TRACE32调试,手机出问题后,通过jtag接口连接trace32,查看寄存器或者内存,变量的值,进行定位出错位置。

4,如果没有trace32和串口,可以通过RAMDUMP模块,当手机crash的时候,将手机进入ramdump模式,将现在信息保存到EMMC或者T卡,然后通过PC将ramdump取出来分析。一般是通过设置ramdump的使能开关为开,当手机出问题进人panic的时候就进入ramdump模式。或者子系统出问题的时候通过fatal error中断触发panic,然后进入ramdump模式。通过PC,把手机当U盘,将ramdump信息导出来。

5,如果通过dump手段将出问题的时候整个内存dump出来,可以通过打开trace32的模拟器,将dump出来的内存镜像重新加载进去trace32,查看出问题的现场状态进行定位bug的位置。当然要有和镜像对应的符号表。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值