最近在使用NXP MCU时,遇到ECC错误,导致程序无法运行。
原因是dflash某个扇区内的数据出现异常,出现多位错误,ECC无法纠正,导致程序一直进入硬件错误中断。程序复位,又重新读取该扇区内容这样一个死循环。
后续经过多次试验复现问题,发现是在写dflash时出现了异常掉电。
解决方法:
1 记录出错的扇区,擦除此扇区数据,并赋默认值;
2 避免在上电间隔很短时间内进行写flash/eeprom操作;例如上电2s内,不要进行写操作(上电初期电源可能存在抖动);
最近在使用NXP MCU时,遇到ECC错误,导致程序无法运行。
原因是dflash某个扇区内的数据出现异常,出现多位错误,ECC无法纠正,导致程序一直进入硬件错误中断。程序复位,又重新读取该扇区内容这样一个死循环。
后续经过多次试验复现问题,发现是在写dflash时出现了异常掉电。
解决方法:
1 记录出错的扇区,擦除此扇区数据,并赋默认值;
2 避免在上电间隔很短时间内进行写flash/eeprom操作;例如上电2s内,不要进行写操作(上电初期电源可能存在抖动);