找回密码
 注册
关于网站域名变更的通知
查看: 298|回复: 1
打印 上一主题 下一主题

EEPROM的几种保护方法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-3-5 13:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
EEPROM的几种保护方法  Z( X5 o, f4 q! U0 o

) w4 G3 b$ Z" q) F

7 ]9 n6 k! y: U9 o2 p7 |9 P

瞧瞧:

1. EEPROM 读写的时序可能有小小的不对

2. 是在掉电时,在电压降低到一定程度后到完全没电之间的一段时间内,在mcu与EEPROM 的读写信号线上出现非控制的快速随机电平,这些电平可能会组合出一些被EEPROM 认为合法的写命令,结果将EEPROM 中的值修改掉了;

3. 在上电的复位期间,I/O 脚上电平未定,也可能随机组合出一些写命令;

4. 在读EEPROM 操作过程中,出现了复位(如充电复位)等,形成类似于(二)的情况;

5. 在电压降低后,可能会出现MCU 跑飞了,结果运行到了写EEPROM 的底层驱动程序中,强来将数据写入了进去!嘿嘿!让我们尝尝强扭的瓜不甜!

对待敌人可不能手软,怎样扼杀他们在萌芽状态!看我的绝招:

1. 摆阔气:按Datasheet 上的时序,发现多数时候读写正确,但有时偶尔不对,这时可以降低读写的速度,多几个NOP,不要太小气吗?咱们度量(ROM)还是能容的下的!

2. 避风头:为防止读EEPROM 的过程中出现复位,我们可以在MCU 复位后200ms 内禁止读写EEPROM,因充电引起的复位抖动,一般在数十毫秒内,过了这段时间,再出现复位的可能性不大,

3. 查证件:在写EEPROM 的底层驱动程序中,在执行写动作时,判断一下某些标志,有良名证的才能通过,否则,只好打回原籍(跳到复位地址)

4. 多买保险(3份最佳)以自救:对于重要的数据(如通信密码、参数设置等,这些部分信息量不大,我们要采用三次备份的手段。这些信息存放在三个不同的PAGE 内,最好PAGE 内的地址也不一样。在我们写这些数据时,要针对不同的地址写三次,而读时,对于三处读来的数据,如果全相同,没什么可说的了,如果有两个相同,一个不同,则使用大数判决,使用相同的那个值,并将这个数值写到不同的那个地址去。当然,如果三个值全不同,只好随便取一个(如第一个),再将其写入另两个地址中去。这种方法非常有效,因为一般误擦除不会是全部数据,而只是某一处而已,我们可以允许EEPROM 某单元被误擦除,只要读了一次,就恢复了。

) n8 [3 [( O% K2 i; x6 g

该用户从未签到

2#
发表于 2019-3-5 23:47 | 只看该作者
研究一下EEPROM的几种保护方法,谢谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-18 12:51 , Processed in 0.078125 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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