当arm跑飞后,可以用ICE 追踪是哪边出错了:

1. 链接ICE, 修改Ice的mode,由 udf -> system. (因为跑飞了,在UDF)

2. 查看寄存器: LR对应callback function的地址; SP对应压栈的数据;

3. 在outFiles文件下输入: fromelf -c MICRON_ENTERPRISE_DEAN_B0KB_RAIN_DPP_DBG.axf > output.file 将axf转换文件格式:

4. LR对应的值查找对应的地址:

 假设: LR: 0x801c6300

 ClrAbortState
0x801c62f8: e59f23c0 .#.. LDR r2,[pc,#] ; [0x801c66c0] = 0x4003674
0x801c62fc: e92d4010 .@-. PUSH {r4,lr}
0x801c6300: e5d21001 .... LDRB r1,[r2,#]
0x801c6304: e5d23000 ... LDRB r3,[r2,#]
0x801c6308: e1831401 .... ORR r1,r3,r1,LSL #
0x801c630c: e1c10000 .... BIC r0,r1,r0

  那么出错的时候在函数 ClrAbortState里;

5.SP 对应压栈的地址

假设:0x04000B50

0x0C5208BC 0x04003A7C 0x0000032A 0x00000000 0x00000000 ********************
0x00000000 0x00000000 0x0001BDB4 0x00000000 0x00010770 ********************
0x04002604 0x00000001 0x00000000 0x000104E8 0x00000000 ********************

由于 0x0C5208BC 是一个无效的指向,所以看0x04003A7C ;

在map文件中看到

gWorkloadCtrl                            0x04003a7c   Data            Workload_Control.o(data_sram_zi)

所以跑飞的就跟这几个信息有关。

  

arm跑飞 分析的更多相关文章

  1. 痞子衡嵌入式:IVT里的不同entry设置可能会造成i.MXRT1xxx系列启动App后发生异常跑飞

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是IVT里的不同entry设置可能会造成i.MXRT1xxx系列启动App后发生异常跑飞问题的分析解决经验. 事情缘起恩智浦官方论坛上的一 ...

  2. 使用ffmepg的lib库调试,debug版本下调试无问题,但release版本会出现跑飞的现象

    如题(“使用ffmepg的lib库调试,debug版本下调试无问题,但release版本会出现跑飞的现象”). 今天使用ffmpeg进行宿放和颜色格式转换,很简单的代码,却折腾了我一天,这里说来就气啊 ...

  3. Atitit.线程 死锁 跑飞 的检测与自动解除 与手动解除死锁 java c# .net php javascript.

    Atitit.线程 死锁 跑飞 的检测与自动解除 与手动解除死锁 java c# .net php javascript. 1. 现象::主程序卡住无反应,多行任务不往下执行 1 2. 原因::使用j ...

  4. 记一次stm8l程序跑飞

    项目使用stm8l051f3做主控,CC2500做数据接收,不发送. 跑飞的现象就是,刚开始能运行,经过一段未知长度的时间,有可能是3分钟,有可能是30分钟,指示灯不再闪烁,中断按键单片机无反应. 接 ...

  5. RK3288 st7703 mipi屏指令过长,程序跑飞

    本文为博主原创文章,转载请注明出处:https://www.cnblogs.com/lialong1st/p/11218433.html CPU:RK3288 系统:Android 5.1 调试 mi ...

  6. ARM 链接脚本分析

    分析连接脚本的语法规则 /* ---------------------------------------------------------------------------- * Memory ...

  7. ffmpeg之YUYV转RGB ARM使用流程分析

    本例基于3.2.2 ffmpeg 一.应用调用API 二.头文件包含的API接口 对应于libswscale.so.libswscale.so.4.libswscale.so.4.2.100中 sws ...

  8. STM32启动代码分析及其汇编学习-ARM

    STM32 启动代码 Author By YuCloud 边看启动文件边学汇编 汇编 see ARM: Assembler User Guide see: https://blog.csdn.net/ ...

  9. ARM 开发工具 Keil和DS-5的比较。

    http://www.eeboard.com/bbs/thread-25219-1-1.html 如今ARM体系架构的处理器在嵌入式市场上呼风唤雨,从低端的MCU应用到高端的多媒体消费电子,移动设备领 ...

随机推荐

  1. MySQL 日期和时间戳互相转换

    ① 时间戳转换成日期 FROM_UNIXTIME 例如: 数据表中 invest_time 存储的是时间戳,如 1429063399 使用 FROM_UNIXTIME 可以把时间戳转换为日期: sel ...

  2. java build path->source folder分析

    1.build path下的source folde,指的是项目存放源码的位置,即存放Java代码的位置!!! 如果将一个文件夹设为java build path里的source folder下,则这 ...

  3. Yii源码阅读笔记(十六)

    Model类,集中整个应用的数据和业务逻辑—— /** * Generates a user friendly attribute label based on the give attribute ...

  4. jQuery 中 on 方法-----给未来元素添加事件

    <li class='clear dir-li'> <div class='left title'> 添加到目录:</div> <div class='lef ...

  5. Bootstrap页面布局5 - 响应式布局(格式)

    旨在优化不同上网设备中页面显示的优化 响应式布局:就是根据浏览窗口的尺寸,改变页面的变化 原理:利用css的media-queries判断浏览窗口的尺寸,在CSS样式表中设置一些规则! 例如: 在&l ...

  6. T-SQL笔记

    主要是查询: select *|Cols_Name|聚合函数 from Table_Name;#这是基本的语法 聚合函数: count(*|Cols_Name)   计算表的数量 max(*|Cols ...

  7. jquery easyui Combobox 实现 两级联动

    具体效果如下图:

  8. HW 研发体系机构的几个术语

    PDT(product development team)产品开发团队   类似于产品经理 程序员 --  PL -- PM  --开发代表 -- PDT LEADER --------------- ...

  9. IE 的resize事件问题

    window的resize事件,真的让人无语! 我在动态设置元素的HTML内容后,窗口高度变化了,可是却不触发resize事件. 但是我在访问document.documentElement.scro ...

  10. J2SE 1.6 特性:java.lang.instrument

    1. import java.lang.instrument.Instrumentation; public class ObjectSizeFetcher { private static Inst ...