当前位置: 代码迷 >> Brew >> brew真机调试,出现蓝屏死机,求解决方法
  详细解决方案

brew真机调试,出现蓝屏死机,求解决方法

热度:2642   发布时间:2013-02-26 00:00:00.0
brew真机调试,出现蓝屏死机,求解决办法。
我在三星M609上测试我的程序,有个错误总是找不到。在模拟器上运行无误。

奇怪的是,我在真机上用DBGPRINTF();定位错误的地方。完全一致的操作环境和输入,发现这个错误的位置不定!

当时蓝屏死机状态的显示提示是:

HTML code
data abort exceptionaddr(r14) = 0x11a3sdram uploader


求解决办法。如何定位错误位置,及找到错误指针变量的方法!

谢谢关注!

我给50分!

------解决方案--------------------------------------------------------
你有T32么?有的话很简单的~ 先确定M609是哪个平台的~
------解决方案--------------------------------------------------------
是trace 32,用于真机调试用的,网上有的下载,然后再下一个你那手机的驱动。或者你可以检查一下是不是有些指针或者变量没有初始化,这个很容易造成不定死机的~

www.brewmpchina.com brew和brewMP的技术论坛,欢迎加入
------解决方案--------------------------------------------------------
这个明显就是你的程序有越界,或者函数的参数个数不一致,把r14寄存器中的值给修改了,r14寄存器的值明显不正确了,r14是程序的返回寄存器。
------解决方案--------------------------------------------------------
就是程序越界呀,数组越界,字符串操作越界,或者函数参数个数比实际定义的多等等操作引用的,你可以把死机时的堆栈里的内容都打印出来通过打印r13寄存器偏移值,这种问题需要靠自己调试的,完全靠经验,如果想快速定位用trace32。
------解决方案--------------------------------------------------------
http://www.brewmpchina.com/OEM/thread-129-1-1.aspx

这里我上传了trace32的使用教程,不过这东西很复杂,如果你代码量不高的话自己用排除法找吧
------解决方案--------------------------------------------------------
QPST/Memory Debug抓DUMP。
T32 Simulator加载分析。看具体死在哪。
  相关解决方案