ESP8266 Fatal exception (3) 无法正常启动

liuqiang
Posts: 2
Joined: Thu Jan 04, 2018 3:58 pm

ESP8266 Fatal exception (3) 无法正常启动

Postby liuqiang » Thu Jan 04, 2018 4:47 pm

1. 相关背景
使用的模块为esp12-f,使用arduino-esp8266,版本为2.3。在开关电的时候会有一定概率出现ESP8266 Fatal exception (3)的错误,然后一直无法启动,打印如下信息:
ets Jan 8 2013,rst cause:2, boot mode:(3,7)

load 0x4010f000, len 1384, room 16
tail 8
chksum 0x2d
csum 0x2d
v6000001c
~ld
Fatal exception (3):
epc1=0x40233e2c, epc2=0x00000000, epc3=0x00000000, excvaddr=0x40000000, depc=0x00000000
Fatal exception (3):
epc1=0x40233e2c, epc2=0x00000000, epc3=0x00000000, excvaddr=0x40000000, depc=0x00000000
Fatal exception (3):
epc1=0x40233e2c, epc2=0x00000000, epc3=0x00000000, excvaddr=0x40000000, depc=0x00000000
Fatal exception (3):

2. 相关分析
采用arduino的工具查看了下错误信息,显示是system_get_checksum函数中出错了,由于是SDK里面的函数,具体实现看不到。
然后在网上找了下这个函数,大概是和最后一个系统扇区有关。我的扇区数据如下:
扇区.png
扇区.png (3.81 KiB) Viewed 144 times


我想了解下,为什么会出现这样的错误呢?我的程序应该是不会操作这个扇区的,那么是否是在SDK启动的某个时候,如果异常断电的话,会存在bug?

谢谢!

Her Majesty
Posts: 231
Joined: Mon Oct 27, 2014 11:09 am

Re: ESP8266 Fatal exception (3) 无法正常启动

Postby Her Majesty » Mon Jan 08, 2018 5:51 pm

你可以做开关机测试,dump flash 对比正常启动的 flash 数据,和异常后的 flash 数据是否发生了变化。
当然这样最好就烧个啥事也没做的应用程序,排除是应用程序改写了 flash。

liuqiang
Posts: 2
Joined: Thu Jan 04, 2018 3:58 pm

Re: ESP8266 Fatal exception (3) 无法正常启动

Postby liuqiang » Thu Jan 11, 2018 2:15 pm

Her Majesty wrote:你可以做开关机测试,dump flash 对比正常启动的 flash 数据,和异常后的 flash 数据是否发生了变化。
当然这样最好就烧个啥事也没做的应用程序,排除是应用程序改写了 flash。


Hi, 感谢你的回复!

你说的很对,确实有差别的,但是差别都是在系统参数那几个扇区,应用程序的数据是没有变化的。我是感觉非常大的可能就是SDK在修改系统扇区里的数据时候发生了断电,再次启动后就发生了错误。

Who is online

Users browsing this forum: No registered users and 15 guests