一种减少EEPROM的数据读写出错的方法技术

技术编号:8241508 阅读:707 留言:0更新日期:2013-01-24 22:26
本发明专利技术提供一种减少EEPROM的数据读写出错的方法,包括以下步骤:数组定义步骤,在SRAM定义一个缓冲数组?,在EEPROM中定义数据区数组和备份区数组,所述数据区数组和备份区数组中均包括CRC校验数据;向EEPROM中写数据的数据写入步骤;校验数据计算步骤,将计算出的CRC检验数据写到数据区数组和备份区数组的校验数据区域;数据校验步骤,通过CRC校验数据对数据区数组和备份区数组的有效性进行校验;数据修复步骤;以及,默认重写步骤。本发明专利技术能够有效地减少EEPROM在读写掉电、强干扰和强静电等异常情况的数据读写出错几率,而且不需要占用较多的EEPROM空间,软件开销小、程序稳定可靠。

【技术实现步骤摘要】

本专利技术涉及一种数据保护方法,尤其涉及一种低成本的减少EEPROM的数据读写出错的方法
技术介绍
EEPR0M,属于“非易失性数据存储器”,它不能直接参与ALU运算,只是用于掉电后不丢失的重要数据的存储;重新上电后读出这些数据,以维持系统在关机前的状态,如汽车音响和汽车空调关机后需要记忆一些功能状态。EEPROM和片内RAM类似,也属于数据存储器,它的特点是数据掉电可保持,而程序存储器一般指R0M,用于存储用户程序代码。 FLASH是用于存储程序代码的,有些场合也可能用它来保存数据,当然前提是该单片机的FLASH工艺是可以自写的(运行中可擦写),FLASH的擦写次数通常小于一万次,而且通常FLASH只能按块擦除。EEPROM的擦写次数能达到百万次,而且可以按字节擦写。而FLSAH则必须先擦除成BLANK,然后再写入,而一般没有单字节擦除的功能,至少一个扇区擦除。但是EEPROM在写入时可能受外界干扰(辐射,静电,强电,高温高湿等)或系统内部设计缺陷(软件,硬件等)而造成写入的数据错误或程序跑飞写到了错误的EEPROM的地址,进而导致在读EEPROM时读入了无效或错误的数据,可能本文档来自技高网...

【技术保护点】
一种减少EEPROM的数据读写出错的方法,其特征在于,包括以下步骤:数组定义步骤,在SRAM定义一个缓冲数组?,在EEPROM中定义两个数组,所述EEPROM中定义的两个数组分别为数据区数组和备份区数组,所述数据区数组和备份区数组中均包括CRC校验数据;数据写入步骤,向EEPROM中写数据时,先把数据放到缓冲数组中,并调用写入函数将缓冲数组的数据按顺序写入数据区数组和备份区数组;校验数据计算步骤,调用校验函数计算出当前备份的CRC检验数据,并将该CRC检验数据写到数据区数组和备份区数组的校验数据区域;数据校验步骤,系统上电复位后通过CRC校验数据对数据区数组和备份区数组的有效性进行校验,若均有...

【技术特征摘要】

【专利技术属性】
技术研发人员:唐江宋方博周国茂孙立华林汉超黎中有
申请(专利权)人:深圳市航盛电子股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1