存放在stm32内部flash的数据会有一页数据丢失的现象

2019-12-27 19:02发布

flash的最后一页用来存储参数,设备重复进行上下电操作,存放在stm32内部flash的数据会有一页较低的概率出现数据丢失的现象,整页的数据变成0xFF,在上电经过延时后会读取保存的参数。
这会不会是电源因素导致的?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
40条回答
Llinuxu
1楼-- · 2019-12-29 21:58
STM32不是自带的有一个掉电检测中断吗?只要数据量不是太大,在掉电的时候是能够全部保存的
NIC
2楼-- · 2019-12-29 21:59
avr9299 发表于 2017-5-19 08:28
还可以在程序中加入一些汇编复位、ret、nop循环函数

能否具体说一下我这个问题应该应该怎么加
NIC
3楼-- · 2019-12-29 22:56
t3486784401 发表于 2017-5-19 22:23
对头,或者接一个外部电压监测器,发现电源即将不行了就给中断通知

然后在中断里做什么工作呢,能防止程序跑飞
lj123456
4楼-- · 2019-12-30 02:12
 精彩回答 2  元偷偷看……
tianxian
5楼-- · 2019-12-30 04:34
我之前的案子也发生过,丢大脸了,用的还是官方的 flash模拟EEPROM的代码,上下电有一定几率发生数据丢失,不敢用了 就外挂EEPROM
NIC
6楼-- · 2019-12-30 08:47
lj123456 发表于 2017-5-20 08:42
如果要更新数据的话,你可以延时更新flash里面的数据,这样应该就可以避免掉电过程中的更新 ...

怎么延时更新,现在是怀疑下电时程序跑飞导致误擦除flash数据

一周热门 更多>