操作eepROM时单片机掉电问题

2020-01-26 12:54发布

最近用的STC15F204EA,本来程序会在eepROM里保存数据的,测试的时候发现断几次电之后会有程序无法运行的情况,会不会是eepROM没有操作完成就返回导致单片机程序一直卡在eepROM中无法重新开始运行?
如果是这样的话,除了使用掉电检测电路,还有其他方法避免这个问题吗?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
28条回答
dadongleilei
1楼-- · 2020-01-27 08:31
另外 EEPROM操作程序也应该做个超时处理吧,不应该出错的话 永远卡死在那里;再者如果程序不出来,看门狗不复位吗
whatcanitbe
2楼-- · 2020-01-27 11:25
stirwl 发表于 2013-10-5 17:06
程序每次修改特定参数都会修改eepROM,
如果在操作eepROM时掉电会不会程序一直无法返回? ...

问题
1)你是不是在写参数的时候掉过电
2)关机的时候会不会有写EEPROM啊
stirwl
3楼-- · 2020-01-27 15:16
 精彩回答 2  元偷偷看……
stirwl
4楼-- · 2020-01-27 17:08
dadongleilei 发表于 2013-10-7 13:29
另外 EEPROM操作程序也应该做个超时处理吧,不应该出错的话 永远卡死在那里;再者如果程序不出来,看门狗不 ...

这个程序不能开看门狗的
eepROM就是设置好参数然后等待eepROM返回啊。
可能问题不是eepROM函数没有返回,而是操作eepROM时掉电导致的问题
schwarz
5楼-- · 2020-01-27 19:50
不加掉电检测的话,我的方案是备份两套数据,每套数据都有效验码,如果你的cpu够强就做过md5,不行就用CRC32之类的,上电后验证效验码,如果某套数据不能通过验证就用另一套数据覆盖掉。
whatcanitbe
6楼-- · 2020-01-27 20:53
stirwl 发表于 2013-10-9 22:50
确实有可能呢,毕竟掉电时随机的

那软件上基本无解

一周热门 更多>