借助EspExceptionDecoder工具分析定位esp8266或esp32异常问题

2023-10-27

借助EspExceptionDecoder工具分析定位esp8266或esp32异常问题

esp开发过程中,难免会出现异常跑死情况,然后就打印stack回调,一大堆数字,分析定位问题很是困难头大。这时候可以借助EspExceptionDecoder工具帮助分析。arduino,vscode platformIO项目,只要有ELF文件即可分析。

下边将以一个例子一步一步,交大家使用。

问题出现Exception stack

--------------- CUT HERE FOR EXCEPTION DECODER ---------------

Exception (3):
epc1=0x40106dbe epc2=0x00000000 epc3=0x40101415 excvaddr=0x400115d4 depc=0x00000000

>>>stack>>>

ctx: cont
sp: 3ffffbb0 end: 3fffffc0 offset: 0190
3ffffd40:  401004aa 00000001 3fff1ca4 40256644  
3ffffd50:  000000d7 000000d7 3ffe8678 40100b0f  
3ffffd60:  3ffffe50 3fff1ccb 00000245 3fff031c  
3ffffd70:  00000012 00000020 3fff1c94 40100cee  
3ffffd80:  3ffffe30 4025aa50 3ffffe30 40100698  
3ffffd90:  00000012 402566b7 3ffffe30 40256723  
3ffffda0:  3fff1c94 4025674c 3fff0a78 00000000  
3ffffdb0:  4020c7b7 00000000 3fff033c 4020c707  
3ffffdc0:  676e616c 746f6174 00686365 40100d50  
3ffffdd0:  00000000 00000018 3ffe9318 402182e6  
3ffffde0:  676e616c 746f6174 40686365 32383036  
3ffffdf0:  00003232 00000018 3ffe932f 3fff031c  
3ffffe00:  3fff033c 00000020 3ffffee0 40216e79  
3ffffe10:  00000000 3fff1c94 00000015 00000003  
3ffffe20:  5d73b000 0064a23b 00000020 40100d18  
3ffffe30:  676e616c 746f6174 00686365 40100d50  
3ffffe40:  00000000 00000018 3ffe9318 402182e6  
3ffffe50:  676e616c 746f6174 40686365 32383036  
3ffffe60:  00003232 00000018 3ffe932f 3fff031c  
3ffffe70:  3fff033c 00000020 3ffffee0 40216e79  
3ffffe80:  00000000 3fff1c94 00000015 00000004  
3ffffe90:  00000100 0000018f 3ffe8681 00000002  
3ffffea0:  00000000 3fff0a70 00000001 00000004  
3ffffeb0:  3fff0bb0 00000020 3fff2254 3fff031c  
3ffffec0:  3fff0bb0 3fff0a70 00000001 4020c834  
3ffffed0:  00000001 3fff0a70 00000001 402073f1  
3ffffee0:  00000000 0012001f 00000000 00000000  
3ffffef0:  000b000f 00000000 3fffff00 3fff06b0 <
3fffff00:  00000064 00000001 4021acb4 00000004  
3fffff10:  00000001 00000001 00000000 402075fb  
3fffff20:  4024f491 00186a00 3fff0bb0 4021a84c  
3fffff30:  4021a860 3dcccccd 3fff06b0 4020785c  
3fffff40:  00000000 00000000 00000000 4021a84c  
3fffff50:  4021a860 3fff06b0 3fff0bb0 4020aceb  
3fffff60:  00000000 00000000 00000000 4021a84c  
3fffff70:  00000000 0010001f 00000000 feefeffe  
3fffff80:  00000000 feefeffe feefeffe feefeffe  
3fffff90:  feefeffe feefeffe feefeffe 3fff0d78  
3fffffa0:  3fffdad0 00000000 3fff0d64 40218360  
3fffffb0:  feefeffe feefeffe 3ffe8674 401003a1  
<<<stack<<<

--------------- CUT HERE FOR EXCEPTION DECODER ---------------

EspExceptionDecoder安装

下载

github下载地址(需要科学上网):https://github.com/me-no-dev/EspExceptionDecoder

csdn下载地址: https://download.csdn.net/download/a554521655/87732857

安装

前提需要安装Arduino ide,没安装的请自行安装;因为EspExceptionDecoder是它的一个工具插件,使用需要借助Arduino

将EspExceptionDecoder-2.0.3.zip解压后,将里边的EspExceptionDecoder文件夹复制到Arduino安装目录的tools下

我这里路径是C:\Program Files (x86)\Arduino\tools

image-20230426183846098

使用

启动arduino ide,依次点击 工具>> Esp Exception Decoder , 然后弹窗选择Select ELF文件,之后在弹出Exception Decoder对话框中,将异常log粘贴进入即可获取对应可读的异常信息

image-20230426183333772

image-20230426183629987

image-20230426183229373

可以清楚的看出Exception (3)引起的原因是:

Exception 3: LoadStoreError: Processor internal physical address or data error during load or store
PC: 0x40106dbe
EXCVADDR: 0x400115d4

Decoding stack results
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

借助EspExceptionDecoder工具分析定位esp8266或esp32异常问题 的相关文章

  • 如何在 Eclipse 中启用列选择模式?

    News 写道 Eclipse 3 5 终于支持列选择 不幸的是我不知道如何启用它 我尝试按 ALT 键 就像我在 Visual Studio 和所有其他 Microsoft 产品中习惯的那样 但这没有效果 如何在 Eclipse 中标记垂
  • 哪个 IDE 支持 Node.js 应用程序的 CoffeeScript 调试(源映射、断点和调用堆栈)?

    我对整个 CoffeeScript 场景还很陌生 是否有任何 IDE 支持调试在 Node js 上运行的 CoffeeScript 源代码 我希望能够在 coffee 文件中设置断点并查看调用堆栈并检查变量 WebStorm 似乎还不符合
  • 如何在 IDE 中使用 Grails 依赖项

    So I finally https stackoverflow com questions 1867064 grails and local maven dependencies让我的依赖项与 Grails 一起工作 现在 我的 IDE
  • 在 Visual Studio 中进行嵌入式代码开发(尤其是使用 C18 的 PIC)

    我使用 Visual Studio 编写桌面应用程序 我发现它非常用户友好且易于使用 如果可能的话 我还想在Visual Studio中编写嵌入式代码 例如 是否可以使用 C18 或任何其他类似的基于 C 的语言为 PIC18Fxxx 系列
  • 设置 xamarin studio 以与 PCL 和 MVVMCross 配合使用

    我真的很喜欢 Xamarin Studio 并且正在寻找一个模板解决方案来开始使用 MvvmCross 开发跨设备应用程序 但我找不到如何将项目设置为与 Xamarin Studio 一起使用 PCL 和 MvvmCross 如果有人能给我
  • Visual Studio Professional 2013 Update 5 中的“在线服务不可用”问题

    我一直在 vscode 2013 工作直到今天 但是 当我今天早上尝试打开 IDE 时 它收到 您的许可证已过时 必须更新 错误消息 如下所示 在我尝试更新许可证和登录操作之后 当我尝试这两个时 它得到 在线服务不可用 请稍后重试 错误消息
  • IntelliJ Idea 15 显示依赖包和项目包

    IntelliJ Idea 15 CE 在项目的包视图中显示来自库 依赖项的包 仅当项目的根包与某些依赖项的根包相同时才会发生这种情况 对于前 我的项目的根包是org 所以所有的依赖关系也有org包状org apache logging也被
  • 如何在 IDE 中输入提示上下文?

    我在用Closure call http php net manual en closure call php http php net manual en closure call php 在类上下文中调用外部闭包 这是一个简单的重现 c
  • 最佳 Fortran IDE [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 stackoverflow上有人用Fortran吗 您使用什么 IDE 您认为哪一个是最好的 似乎我周围的很多人都对 Intel Visu
  • 防止 Visual Studio Code 或 IDE 泄露 Python 类私有方法

    只是想问一个简单的问题 本质上 我想知道是否可以从 Visual Studio Code 或其他 IDE 提供的建议列表中隐藏 Python 类私有方法 例如 假设我们有一个类 A Creating a class class A Decl
  • Selenium IDE-自动化Select2搜索框

    我正在尝试自动化 selenium IDE 中的 select2 搜索框 我打开它并输入了我正在搜索的搜索关键字 但是 即使我有用于显示结果的代码 它也不起作用 问题是我猜字符输入得太快 因此结果不会显示在搜索框中 我确信我在某个地方出错了
  • 如何忽略 Pydev Eclipse 中特定的未定义变量

    我正在使用 Eclipse 和 Pydev 插件在 Windows 上编写跨平台 python 脚本 该脚本利用os symlink and os readlink 如果当前平台不是 NT 则使用方法 自从os symlink and os
  • Oo 任何 IDE 中的 javascript 代码补全

    你知道有什么IDE可以自动完成这种代码吗 我这里有一个 javascript 类生成器 function var core bind function method scope if method instanceof Function t
  • 在 VS2008 的 XAML 编辑器中禁用 Intellisense?

    有没有办法在 Visual Studio 2008 的 XAML 编辑器中禁用 Intellisense 打字时通常会消耗很大的性能 有时我会等待十秒或更长时间 直到列表自动弹出 似乎在 选项 gt 文本编辑器 gt XAML 中 Inte
  • 有关 HTML 和 PHP 开发工具的帮助

    我是网络开发新手 我有使用原始 HTML 的经验 使用记事本 但我计划为我的最后一年项目制作一个网站 我之前曾就其想法提出过问题 现在我需要一些开发部分的帮助 我可以使用哪种工具来设计网站 请建议一些易于使用且功能强大的工具 利用这些工具我
  • Eclipse:C/C++ 插件下载链接?

    我下载了 Eclipse 3 5 1 的 Java EE 版本 我现在可以使用它通过适当的插件来编辑 C C 吗 我去了Help gt gt 安装新软件但我不知道使用哪个 URL 来获取 C C 插件 我在 Eclipse 网站上也找不到它
  • 为 PlayStation 3 Linux 开发 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有兴趣开发软件索尼 PlayStation 3 http en wikipedia org wiki
  • 适用于非 Web 应用程序的带有 Docker + IDE 的 Python 工作流程

    我目前正在尝试将 Docker 插入我的非 Web 应用程序的 Python 开发工作流程中 当前使用 Docker 和 IDE 进行 Python 开发的最佳实践是什么 我需要能够使用 Docker 隔离我的环境并调试我的代码 在网上我发
  • 如何在 PyCharm 社区版中运行 Django 项目的调试服务器?

    有人在 PyCharm 社区版中为 Django 项目设置调试配置时遇到问题吗 IDE 的社区版缺少项目设置中的项目类型选项 然后当我设置 调试 或 运行配置 时 它会要求我提供应该运行的脚本 Django 需要什么脚本 manage py
  • 如何在不使用 IDE 的情况下在 Linux 上运行 Java 项目

    我是 Java 新手 基本上 我开发了一个java项目 其中包含Eclipse中的多个Java包 该项目在我安装了 redhat Linux 的桌面上运行正常 然而 我需要在一个更强大的没有安装X11的Linux服务器 redhat ent

随机推荐