硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1393|回复: 6
收起左侧

[网络转载] eeprom掉电保护的思路

[复制链接]

102

主题

573

回帖

894

积分

金牌会员

积分
894
QQ
发表于 2024-7-23 14:41:39 | 显示全部楼层 |阅读模式
回复

使用道具 举报

102

主题

573

回帖

894

积分

金牌会员

积分
894
QQ
 楼主| 发表于 2024-7-23 14:42:44 | 显示全部楼层
可惜作者提供的代码是汇编的...有空了用C实现看看是否可行..
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2024-7-23 15:14:42 | 显示全部楼层
EPROM本身是不需要掉电保护的,你可以给你的数据末尾加个CRC校验值就行。写入时更新这个校验值,读取时验证校验值是否对, 如果读后校验值不对,可以恢复备份的默认值,这个默认值可以存储到EEPROM末尾地址。
回复

使用道具 举报

102

主题

573

回帖

894

积分

金牌会员

积分
894
QQ
 楼主| 发表于 2024-7-23 15:34:14 | 显示全部楼层
硬汉哥,我也觉得不需要。。但是不知道为什么不需要。
目前就是这样子做的,加了CRC,如果校验值不对,就恢复默认值。
目前也没出过问题。


如果不加保护的话,会不会有可能比如说,掉电到EEPROM工作临界电压左右的时候,写EEPROM。导致数据错乱,写到别的地方去了?
回复

使用道具 举报

3

主题

295

回帖

304

积分

高级会员

积分
304
发表于 2024-7-23 16:32:01 | 显示全部楼层
会飞的猪_2020 发表于 2024-7-23 15:34
硬汉哥,我也觉得不需要。。但是不知道为什么不需要。
目前就是这样子做的,加了CRC,如果校验值不对,就 ...

eeprom上存的每个数据都带CRC,默认值也带CRC,每次读都校验一下CRC,如果有错,先校验默认值,看默认值是否正常,再恢复默认值
回复

使用道具 举报

6

主题

683

回帖

701

积分

金牌会员

积分
701
QQ
发表于 2024-8-3 10:43:50 来自手机 | 显示全部楼层
感觉加crc校验有时候也不能解决问题。比如多机通信时,设备eeprom存放通信地址,如果出问题,都恢复默认值这时候,上位机就无法与目标设备正常通信了。客户投诉也就来了,
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2024-8-4 00:46:24 | 显示全部楼层
会飞的猪_2020 发表于 2024-7-23 15:34
硬汉哥,我也觉得不需要。。但是不知道为什么不需要。
目前就是这样子做的,加了CRC,如果校验值不对,就 ...

MCU可以配置掉电阈值,可以有效解决这个问题。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-12 06:33 , Processed in 0.039371 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表