[发明专利]汽车里程数据在EEPROM中的存储方法有效
| 申请号: | 201310194940.4 | 申请日: | 2013-05-23 |
| 公开(公告)号: | CN103309814A | 公开(公告)日: | 2013-09-18 |
| 发明(设计)人: | 于金泳;魏丽娜;王大伟;臧军望;张志远;邓春云;王博玉 | 申请(专利权)人: | 航天科技控股集团股份有限公司 |
| 主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F12/16 |
| 代理公司: | 哈尔滨市松花江专利商标事务所 23109 | 代理人: | 杨立超 |
| 地址: | 150060 黑龙*** | 国省代码: | 黑龙江;23 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 汽车 里程 数据 eeprom 中的 存储 方法 | ||
技术领域
本发明涉及一种汽车里程数据在EEPROM中的存储方法,属于EEPROM的存储技术领域。
背景技术
汽车仪表上的里程数据对用户来说至关重要,一旦里程数据丢失或是不准确,对车辆的保养及售后质保都有很大的影响,随着汽车电子技术的飞速发展,传统的机械式里程计数都已经被电子式里程计数所取代,对于电子式仪表,里程数据都存储在仪表内的EEPROM中,EEPROM受刷写次数以及外部电磁环境的影响,有可能造成数据的丢失或存储单元损坏。现在普遍采用的EEPROM数据存储多为在EEPROM中开辟固定的单元,存储到已设定的次数后,再开辟一个新的单元进行存储,避免刷写次数过多对EEPROM的寿命造成影响,但此方法的缺点是不能对数据进行校验,一旦数据受环境干扰发生变化或丢失,无法恢复。另外,数据整体的存储占用的字节多,刷写时间长,影响程序运行效率。
一般情况下要求仪表存储的总里程最大值为999999,如果将这个数据存储在一个固定的地址,里程变化一次,就将数据刷写到该地址中一次,那么这个地址将被刷写近100万次,而EEPROM的刷写寿命仅为100万次。
发明内容
本发明解决了现有汽车仪表内EEPROM的里程数据存储方法不能对数据进行校验,一旦数据受环境干扰发生变化或丢失,无法恢复的问题,同时解决了数据整体存储占用字节多,刷写时间长,影响程序运行效率的问题;进而提供了一种汽车里程数据在EEPROM中的存储方法。
本发明为解决上述技术问题采取的技术方案是:
一种汽车里程数据在EEPROM中的存储方法,所述存储方法的具体过程为:
步骤一、设定Mod为被存储数据(汽车里程数据)除以16后的整数;
步骤二、判断被存储数据除以16后的余数是否为零,如果不为零(即被存储数据不能够整除16)那么执行步骤三;如果为零(即被存储数据能够整除16)那么执行步骤四;
步骤三、Mod=Mod+1;
步骤四、求得数据存储地址偏移量Addr的值,Addr等于(被存储数据-1)除以16后的余数;
步骤五、将Mod存储到Addr+AddrBase确定的存储地址中;这里AddrBase为基地址,是第一个数据的存储地址;
步骤六、存储完成后,读取Addr+AddrBase地址中数据Temp;
步骤七、进行读取判断,如果写入的数据Mod与读出的数据Temp不一致,则进行存储数据异常处理后再执行步骤八;否则直接执行步骤八;
步骤八、完成存储过程。
本发明的有益效果是:
本发明方法将里程数存储到16个地址中,这样每个单元被刷写的次数为62500次,仅为其耐用次数的6.3%。另外,本发明方法可以对存储里程数据进行校验,正常情况下,16个数据单元中的数据符合一定的规律,即16个数据单元中最多有两种不同的数,如果出现3种不同的数则确认异常,可以通过存储规律进行校验,校验方法多样,可以把出现次数最多的数作为有效数据,存储到16个单元中,也可以将跳点处的两个数据作为有效数据。同时,本发明方法通过校验判断,如果存储里程数据的某个单元已经损坏,将重新开辟一个连续的16个EEPROM单元,把里程存储到新单元中,并将受损丢失的数据通过校验恢复。
本发明方法将数据分成16个单元之后,每个单元的字节长度可以设置的相对小,每次只需要存储其中一个单元的数据,这样在EEPROM数据存储的时间大大缩短,提高程序的运行效率。
附图说明
图1是本发明的存储数据流程框图,图2是图1中的存储数据异常处理过程的流程框图,图3是读取数据校验过程的流程框图。
具体实施方式
具体实施方式一:如图1所示,本实施方式所述的一种汽车里程数据在EEPROM中的存储方法的具体过程为:
步骤一、设定Mod为被存储数据(汽车里程数据)除以16后的整数;
步骤二、判断被存储数据除以16后的余数是否为零,如果不为零(即被存储数据不能够整除16)那么执行步骤三;如果为零(即被存储数据能够整除16)那么执行步骤四;
步骤三、Mod=Mod+1;
步骤四、求得数据存储地址偏移量Addr的值,Addr等于(被存储数据-1)除以16后的余数;
步骤五、将Mod存储到Addr+AddrBase确定的存储地址中;这里AddrBase为基地址,是第一个数据的存储地址;
步骤六、存储完成后,读取Addr+AddrBase地址中数据Temp;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于航天科技控股集团股份有限公司,未经航天科技控股集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310194940.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





