一种多块存储提高可靠性的方法与流程

文档序号:20996992发布日期:2020-06-05 22:16阅读:253来源:国知局
一种多块存储提高可靠性的方法与流程

本发明涉及翻页笔接收器技术领域,具体为一种多块存储提高可靠性的方法。



背景技术:

对于目前的翻页笔,有些翻页笔会在接收器中存储一些数据,比如配对的id码、型号参数信息等,这些数据以比较合理的方式时直接存储在微控制器内置的flash中,或者存储在外接的可擦写存储eeprom中,而由于内置的flash和外接的可擦写存储eeprom的存储特性,存在丢失数据的可能性,一旦丢失存储的数据,接收器和发射器就无法正常配对工作,需要重新配对给客户带来极大的不便,也给售后带来不必要的工作。鉴于此,我们提出一种多块存储提高可靠性的方法。



技术实现要素:

本发明的目的在于提供一种多块存储提高可靠性的方法,以解决上述背景技术中提出的问题。

为实现上述目的,本发明提供如下技术方案:

一种多块存储提高可靠性的方法,所述方法包括如下步骤:

步骤1:原始数据储存,微控制器首先对原始数据组做第一次crc校验值计算得到原始crc校验值,将原始数据组和计算得到的原始crc校验值捆绑成数据包进行存储,并且在存储时,将数据包至少分成两份,分别为第一数据包和第二数据包;

步骤2:插入接收器,微控制器读取接收器数据组并对该数据组进行第二次crc校验值计算得到标准crc校验值;

步骤3:第一次crc校验,将标准crc校验值与第一数据包内的原始crc校验值进行比对,比对失败进行步骤4,比对成功施行步骤6;

步骤4:第二次crc校验,将标准crc校验值与第二数据包内的原始crc校验值进行比对,比对失败进行步骤6,比对成功施行步骤5;

步骤5:配对成功;

步骤6:确认原始数据丢失。

作为本发明的优选,步骤1中第一数据包和第二数据包均包括原始数据组和原始crc校验值,即两个数据包内的数据内容相同。

作为本发明的优选,步骤1中第一数据包和第二数据包均储存在微控制器内置flash中的两个不同地址内。

作为本发明的优选,步骤2中接收器数据组包括配对id、生产日期、接收器型号、接收器软件版本号和接收器硬件版本号等数据。

作为本发明的优选,步骤1和步骤2中第一次crc校验值计算和第二次crc校验值计算时的校验强度可根据需要设置为不同的长度,如crc-8、crc-16、crc-32等。

作为本发明的优选,步骤1中,数据包也可存储三份或者更多,用以增加复杂度,提供更高的可靠性。

与现有技术相比,本发明的有益效果是:本发明方法只要求设置的多个包中至少存在一个原始crc校验值与测试crc校验值比对成功,即表示收器数据组正常,只有当所有的原始crc校验值均与测试crc校验值比对失败才能确认接收器数据丢失,使用微控制器内置的flash来存储时,整体电路更简单,且成本更低,通过多区块存储和crc校验结合的方式来提高存储可靠性,从而使内置的flash存储也能够达到相当高的存储可靠性,极大的降低使用flash作为内置存储的翻页笔出现丢失配对码而无法使用等情况,使用微控制器内置的flash来存储时,整体电路更简单,且成本更低,通过多区块存储和crc校验结合的方式来提高存储可靠性,从而使内置的flash存储也能够达到相当高的存储可靠性,极大的降低使用flash作为内置存储的翻页笔出现丢失配对码而无法使用等情况。

附图说明

图1为本发明中原始数据储存框图;

图2为本发明中第一数据包和第二数据包框图;

图3为本发明的流程框图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例,对本发明的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供了一种多块存储提高可靠性的方法,所述方法包括如下步骤:

步骤1:原始数据储存,微控制器首先对接收器原始数据组做第一次crc校验值计算得到原始crc校验值,将原始数据组和计算得到的原始crc校验值捆绑成数据包进行存储,并且在存储时,将数据包至少分成两份,分别为第一数据包和第二数据包,同时,第一数据包和第二数据包均储存在微控制器内置flash中的两个不同地址内,第一数据包和第二数据包均包括原始数据组和原始crc校验值,两个数据包内的数据内容相同,确保原始数据组和原始crc校验值的准确度,便于进行crc校验;

步骤2:插入接收器,微控制器读取接收器数据组并对该数据组进行第二次crc校验值计算得到标准crc校验值,一般接收器数据组是在生产的接收器和发射器的配对工位写入接收器微控制器内置的flash中,数据包括配对的id、生产日期、产品型号、版本号等;

步骤3:第一次crc校验,将标准crc校验值与第一数据包内的原始crc校验值进行比对,比对失败进行步骤4,比对成功施行步骤6;

步骤4:第二次crc校验,将标准crc校验值与第二数据包内的原始crc校验值进行比对,比对失败进行步骤5,比对成功施行步骤6;

步骤5:配对成功,即第一数据包和第二数据包中储存的原始crc校验值至少有一个与标准crc校验值比对成功,即表明原始数据组中的数据没有发生丢失;

步骤6:确认原始数据丢失,当第一数据包和第二数据包内储存的原始crc校验值与标准crc校验值两次检验均不通过时,才能确认接收器数据组内存在数据的丢失,对于微控制器内置flash存储,将各种导致存储的数据丢失的可能性考虑在内,假设丢失比例在1/200左右,那么通过两次crc检验以后,数据丢失的比例就可以降低到1/(200x200)=1/40000,丢失比例降低到可以忽略不记的程度,得到相当可靠程度的存储数据。

具体的,步骤1中,数据包也可存储三份或者更多,用以增加复杂度,提供更高的可靠性,分成的数据包数量越多,数据丢失的风险也就越低。

值得注意的是,步骤1和步骤2中第一次crc校验值计算和第二次crc校验值时,crc计算校验值发生在接收器数据组写入接收器微控制器内置的flash前,crc校验根据校验强度有多种不同的种类,如crc-8、crc-16、crc-32等,这里根据接收器微控制器的性能,使用的检验强度为crc-16,计算得到一个双字节的值,以此完成crc校验值的计算。

本发明的多块存储提高可靠性的方法在使用时,产品到客户手中以后,当接收器第一次插入计算机端的usb接口的时候,微控制器会先读取接收器的原始数据组,读取以后进行第一次crc校验值计算,将原始数据组和计算得到的原始crc校验值捆绑成数据包,并且将数据包至少分成两份完全相同的数据包储存在微控制器内置flash中不同的地址内,两份份数据包分别为第一数据包和第二数据包,以后每次当客户将接收器插入计算机端的usb接口时,微控制器依旧先读取接收器的测试数据组,并进行第二次crc校验值计算,再将计算得到的测试crc校验值依次与第一数据包和第二数据包进行比对,在进行比对的过程中,如果测试crc校验值与任意一数据包内的原始crc校验值相同,则表明接收器数据组是正常的,其中没有丢失任何数据,并结束比对,完成配对,如果测试crc校验值与原始crc校验值两次比对结果均不同,那么就说明接收器数据组有部分数据丢失,即第一数据包和第二数据包中至少存在一个原始crc校验值与测试crc校验值比对成功,即表示收器数据组正常,只有当两份原始crc校验值均与测试crc校验值比对失败才能确认接收器数据丢失,按照一般情况下的flash的丢失可能性,保存两份数据包即能得到相当程度的存储的数据的可靠性且占用内存较小,使用微控制器内置的flash来存储时,整体电路更简单,且成本更低,通过多区块存储和crc校验结合的方式来提高存储可靠性,从而使内置的flash存储也能够达到相当高的存储可靠性,极大的降低使用flash作为内置存储的翻页笔出现丢失配对码而无法使用等情况,便于普及和推广。

以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的仅为本发明的优选例,并不用来限制本发明,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1