以前程序在sdk1.3.0版本时,运行正常,但升级到 1.5.2后,运行异常。
现象为: 开机正常运行,但写flash后,重启,异常,log如后。
查好像是 写flash ”user param“区出错。我的一些参数 想保存在 16kb的 ”user param“区:
struct device_param {
uint16 a;
uint16 b;
uint16 c;
uint8 pad[2];//填充, 4字节对齐
};
#define USER_PARAM_START_ADDR (0x7C)
int ret = spi_flash_write(USER_PARAM_START_ADDR * SPI_FLASH_SEC_SIZE, (uint32 *) p, sizeof(struct device_param));
查ret为0,
写完后重启,就出现异常。
请帮助,谢谢!
------------------------------------------------------------------------------------------
ets Jan 8 2013,rst cause:2, boot mode:(3,7)
load 0x40100000, len 1856, room 16
tail 0
chksum 0x63
load 0x3ffe8000, len 776, room 8
tail 0
chksum 0x02
load 0x3ffe8310, len 552, room 8
tail 0
chksum 0x79
csum 0x79
2nd boot version : 1.5
SPI Speed : 40MHz
SPI Mode : DOUT
SPI Flash Size & Map: 8Mbit(512KB+512KB)
jump to run user1 @ 1000
Fatal exception (28):
epc1=0x40001800, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000054, depc=0x00000000
Fatal exception (28):
epc1=0x40001800, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000054, depc=0x00000000
Fatal exception (28):
epc1=0x40001800, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000054, depc=0x00000000
。。。
。。。
Statistics: Posted by Goland — Tue Feb 23, 2016 8:05 pm
]]>