spi_flash_erase_sector(ESP_PARAM_START_SEC); reboot

dongkaipo
Posts: 3
Joined: Thu Jun 08, 2017 11:46 am

spi_flash_erase_sector(ESP_PARAM_START_SEC); reboot

Postby dongkaipo » Thu Jun 08, 2017 4:10 pm

Code: Select all

spi_flash_erase_sector(ESP_PARAM_START_SEC);

其中ESP_PARAM_START_SEC=0x3D,擦除了这个 Flash扇区之后,重启ESP会一直重启。找到的问题是 epc1=0x4023d358 。地址对应的描述

Code: Select all

4023d358 <wpa_sm_set_state>:
。我是不是把系统的Flash给擦除了,所以一直无法正常启动?但是0X3D这个是文档给出的用户可操作带保护Flash扇区啊。也尝试过0X3D000,但是这个地址是超出uint16范围的,无法编译。

Her Mary
Posts: 537
Joined: Mon Oct 27, 2014 11:09 am

Re: spi_flash_erase_sector(ESP_PARAM_START_SEC); reboot

Postby Her Mary » Fri Jun 09, 2017 1:37 pm

ESP8266 入门指南 第 4 章和第 5 章,用户参数区是随着 flash size 变化的,在你的应用中,0x3D 估计是程序区

dongkaipo
Posts: 3
Joined: Thu Jun 08, 2017 11:46 am

Re: spi_flash_erase_sector(ESP_PARAM_START_SEC); reboot

Postby dongkaipo » Fri Jun 09, 2017 6:04 pm

已经解决了,如楼上所说。例子程序中的地址不是固定的,要根据实际情况来定地址,我开始以为那个地址是固定的,也一直对3D地址抱有怀疑,因为查看Flash Map,该地址是SDK的地址范围,但是API文档是写的是该地址,就一直没有没有修改。后来修改成正确的地址就工作正常了

Who is online

Users browsing this forum: No registered users and 64 guests