一种数字仪表电度分区存储方法技术

技术编号:8980688 阅读:215 留言:0更新日期:2013-07-31 22:48
本发明专利技术公开了一种数字仪表电度分区存储方法,若CPU发送电度写入指令,首先读取存储芯片中的各个分区的数据标识码,并找到(t-1)时刻电度值的数据标识码;在找到的(t-1)时刻电度值的数据标识码基础上递增1得到t时刻电度值的数据标识码;将得到的t时刻电度值的数据标识码和电度值一起存入到存储芯片中。本发明专利技术提供的数字仪表电度分区存储方法,首先设置数据标识码,将数据标识码与电度值一起存储,通过数据标识码的唯一性保证数字仪表不同时刻的电度值存入存储芯片的不同分区内,充分有效的利用存储芯片的存储空间,不仅提高了存储芯片的利用率,而且延长了数字仪表的使用寿命,保证数字仪表的可靠性以及能长时间稳定运行。

【技术实现步骤摘要】

本专利技术涉及信息存储
,具体涉及。
技术介绍
随着智能数字仪表的发展,对电度的测量和存储时间要求越来越高,一旦存储芯片的使用寿命到了,必将造成实时数据的丢失,产生严重的后果。但是在现有技术中,由于芯片的生产工艺和材料的影响导致了在现有的电度存储技术上(将不同的时刻电度存储到AT24C64固定的存储区里),限制了该芯片的使用寿命,从而缩短了智能数字仪表的使用寿命O
技术实现思路
本专利技术的目的在于针对上述现有技术的不足,提供,将数字仪表电度值存储到存储器的不同存储区域,延长数字仪表的使用寿命,保证数字仪表的可靠性以及能长时间稳定运行。为达到上述目的,本专利技术采取的技术方案是:提供,其特征在于,包括以下步骤:A、开始,等待CPU发送电度写入指令;B、存入t时刻电度值,若CPU发送电度写入指令,进入下一步;若CPU没有发送电度与入指令,继续等待;C、读取数据标识码,读取存储芯片中的各个分区的数据标识码,并找到(t-Ι)时刻电度值的数据标识码;D、产生t时刻电度值的数据标识码,在找到的(t-Ι)时刻电度值的数据标识码基础上递增I得到t时刻电度值的数据标识码;E、存储t时刻的数据标识码和电度值;将得到的t时刻电度值的数据标识码和电度值一起存入到存储芯片中;F、结束,返回到步骤A,继续等待CPU发送电度写入指令。所述存储芯片的各个分区由以下方法得到:根据用户输入的分区指令,按照一个逻辑块只属于一个分区的原则,将存储芯片划分为至少两个区;每个分区至少包括两个逻辑块;第一个逻辑块包括起始地址,最后一个逻辑块包括结束地址。将所述存储芯片划分为256个分区。所述存储芯片型号为AT24C64。所述数据标识码存入存储芯片各个分区的第一个位置。所述t=l时刻,存储芯片的各个分区没有数据标识码,此时产生的数据标识码为0x01, t=l时刻的电度值和电度值的数据标识码存入存储芯片第一区。本专利技术提供的数字仪表电度分区存储方法具有以下有益效果:首先设置数据标识码,将数据标识码与电度值一起存储,通过数据标识码的唯一性保证数字仪表不同时刻的电度值存入存储芯片的不同分区内,充分有效的利用存储芯片的存储空间,不仅提高了存储芯片的利用率,而且延长了数字仪表的使用寿命,保证数字仪表的可靠性以及能长时间稳定运行。附图说明图1为数字仪表电度分区存储方法流程图;图2为数字仪表电度值读取方法流程图;图3为存储芯片分区存储不意图。具体实施例方式下面结合附图对本专利技术进行详细的说明,但它们不是对本专利技术的进一步限制。以采用AT24C64存储芯片的数字仪表为例,对本专利技术的实施方式进行详细的描述,但它们不是对本专利技术的进一步限制。AT24C64存储芯片是数字仪表中常用的存储芯片,简单、方便,一般只具有读、写功能,不分区。这样就造成,在使用过程中,将不同时刻仪表的电度值存储到固定的存储区里,由于一块存储芯片的读写次数有限,这样就会缩短存储芯片的使用寿命,进而影响数字仪表的正常使用。用户可以根据用户输入的分区指令,按照一个 逻辑块只属于一个分区的原则,将存储芯片划分为至少两个区;每个分区至少包括两个逻辑块;第一个逻辑块包括起始地址,最后一个逻辑块包括结束地址。AT24C64存储芯片存储容量(最大存储容量为8192字节),按照每个区存储容量为32个字节,将存储芯片最多划分为256个区,具体方法如下:对存储芯片写入地址(0x00)定义为第一区的起始地址,地址(Oxlf)定义为第一区的结束地址,通过以上方式第一区的分区就完成了(起始地址为0x00,结束地址为Oxlf,存储容量为32个字节);按照创建第一区的方式完成第二区的创建,第二期的起始地址0x20,结束地址0X3f,存储容量为32个字节;依次类推,第二百五十六区的起始地址为OxlfeO,结束地址为Oxlfff,存储容量为32个字节。如图1所示,当数字仪表需要电度存储时,可以实现在不同的时刻存储到不同的分区,数字仪表电度分区存储方法,包括以下步骤:A、开始,等待CPU发送电度写入指令;B、存入t时刻电度值,若CPU发送电度写入指令,进入下一步;若CPU没有发送电度与入指令,继续等待;C、读取数据标识码,读取存储芯片中的各个分区的数据标识码,并找到(t-Ι)时刻电度值的数据标识码[以所有数据标识码数值最大者为(t-Ι)时刻电度值的数据标识码];D、产生t时刻电度值的数据标识码,在找到的(t-Ι)时刻电度值的数据标识码基础上递增I得到t时刻电度值的数据标识码;E、存储t时刻的数据标识码和电度值;将得到的t时刻电度值的数据标识码和电度值一起存入到存储芯片中;F、结束,返回到步骤A,继续等待CPU发送电度写入指令。数据标识码存入存储芯片各个分区的第一个位置。如图3所示,对于t=l时刻,存储芯片的各个分区没有数据标识码,此时产生的数据标识码为0x01,t=l时刻的电度值和电度值的数据标识码存入存储芯片第一区的第一个位置上;再将t=l时刻电度值存储到第一区的其它位置,由此完成t=l时刻电度值的存储;t=2时刻电度值的存储具体操作为,当CPU发出电度写入命令后,CPU先读取存储芯片中的各个分区的数据标识码,并找到t=l时刻电度值的数据标识码(0x01 ),在此基础上递增I得到t=2时刻电度值的数据标识码(0x02),将t=2时刻电度值的数据标识码(0x02)存储到存储芯片的第二区第一个位置,再将t=2时刻电度值存储到第二区的其它位置,通过上述方式完成t=2时刻电度值的存储;依次类推当t= 256时刻的电度值存储时,对应的数据标识码为(OxfT),存储在第二百五十六区第一个位置后,再将电度值存储在第二百五十六区的其它位置,完成t=256时刻电度值的存储;此时,存储芯片分区已存满,当t=257时刻的电度值又从第一区开始存储,如此循环。通过上述这种存储方法存储,大大延长了 AT24C64存储芯片的使用寿命,延长了数字仪表的使用寿命。如图2所示,当数字仪表需要读取t-Ι时刻(以t时刻为当前时刻,t-Ι为前一时亥IJ)的电度值时,其读取方法包括以下步骤:A、开始,等待CPU发送电度读取指令;B、读取t-Ι时刻电度值,若CPU发送电度读取指令,进入下一步;若CPU没有发送电度读取指令,继续等待;C、读取数据标识码,读取存储芯片中的各个分区的数据标识码,并找到(t-Ι)时刻电度值的数据标识码[以所有数据标识码数值最大者为(t-Ι)时刻电度值的数据标识码];D、根据读取的数据标识码确定t-Ι时刻电度值的分区;E、读取t-Ι时刻电度值;F、结束,返回到步骤A,继续等待CPU发送电度读取指令。若要读取O (t-Ι)之间某一时刻t’的电度值,首先要找到t-Ι时刻电度值的数据标识码,然后CPU采用t’/n(n表示为分区数)得到整数“m”和余数“z”,“m”标示为存储的循环周期个数,“z”表示未存满一个循环周期中的时刻,最后CPU根据t-Ι时刻的数据标识码减去(mXn+z)并转换为十六进制得到t’时刻的数据标识码,根据t’时刻的数据标识码确定t’时刻电度值的存储分区,即可得到O (t-Ι)时刻中的某一时刻t’的电度值。本文档来自技高网...

【技术保护点】
一种数字仪表电度分区存储方法,其特征在于,包括以下步骤:A、开始,等待CPU发送电度写入指令;B、存入t时刻电度值,若CPU发送电度写入指令,进入下一步;若CPU没有发送电度写入指令,继续等待;C、读取数据标识码,读取存储芯片中的各个分区的数据标识码,并找到(t?1)时刻电度值的数据标识码;D、产生t时刻电度值的数据标识码,在找到的(t?1)时刻电度值的数据标识码基础上递增1得到t时刻电度值的数据标识码;E、存储t时刻的数据标识码和电度值;将得到的t时刻电度值的数据标识码和电度值一起存入到存储芯片中;F、结束,返回到步骤A,继续等待CPU发送电度写入指令。

【技术特征摘要】
1.一种数字仪表电度分区存储方法,其特征在于,包括以下步骤: A、开始,等待CPU发送电度写入指令; B、存入t时刻电度值,若CPU发送电度写入指令,进入下一步;若CPU没有发送电度写入指令,继续等待; C、读取数据标识码,读取存储芯片中的各个分区的数据标识码,并找到(t-1)时刻电度值的数据标识码; D、产生t时刻电度值的数据标识码,在找到的(t-Ι)时刻电度值的数据标识码基础上递增I得到t时刻电度值的数据标识码; E、存储t时刻的数据标识码和电度值;将得到的t时刻电度值的数据标识码和电度值一起存入到存储芯片中; F、结束,返回到步骤A,继续等待CPU发送电度写入指令。2.根据权利要求1所述的数字仪表电度分区存储方法,其特征在于:所述存储芯片的各个分区由以下方法得到 :根据用...

【专利技术属性】
技术研发人员:李正兵
申请(专利权)人:成都瑞科电气有限公司
类型:发明
国别省市:

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

1