CN111198705A - 一种防止ecu刷死的内存备份方法、装置、存储介质及电子设备 - Google Patents
一种防止ecu刷死的内存备份方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN111198705A CN111198705A CN201911320063.4A CN201911320063A CN111198705A CN 111198705 A CN111198705 A CN 111198705A CN 201911320063 A CN201911320063 A CN 201911320063A CN 111198705 A CN111198705 A CN 111198705A
- Authority
- CN
- China
- Prior art keywords
- checksum
- data
- backup
- preset
- area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Retry When Errors Occur (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种防止ECU刷死的内存备份方法、装置、存储介质及电子设备,所述方法包括:获取预设第一校验和;获取预设备份区对应的第二校验和;当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果;基于所述判断结果完成内存数据备份。因此,采用本申请实施例,可以防止ECU刷死和数据丢失。
Description
技术领域
本发明涉及汽车电子控制领域,特别涉及一种防止ECU刷死的内存备份方法、装置、存储介质及电子设备。
背景技术
随着社会的快速发展,汽车已经成为了每家每户不可缺少的一部分。汽车中的ECU(电子控制单元),即行车电脑是汽车的核心配置。汽车启动后,上位机或刷写工具会对ECU进行数据刷写。
目现有技术中,ECU没有内存备份,当上位机或者刷写工具对ECU进行数据刷写时,当刷写数据不成功时,从而导致ECU刷死,增加了数据丢失的概率。
发明内容
本申请实施例提供了一种防止ECU刷死的内存备份方法、装置、存储介质及电子设备。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。
第一方面,本申请实施例提供了一种防止ECU刷死的内存备份方法,所述方法包括:
获取预设第一校验和;
获取预设备份区对应的第二校验和;
当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果;
基于所述判断结果完成内存数据备份。
可选的,所述获取预设第一校验和之前,还包括:
当接收到针对下线变量存储区域的数据更改指令时,将所述数据进行更改生成更改后的数据;
基于预设校验和算法计算所述更改后的数据生成所述更改后的数据对应的校验和,将所述更改后的数据对应的校验和作为第一校验和;
将所述更改后的数据和所述校验和刷写至所述下线变量存储区域中生成下线变量存储区域中的数据和第一校验和。
可选的,所述基于所述判断结果完成内存数据备份,包括:
当所述第一校验和正确时,将所述下线变量存储区域中的数据拷贝至所述预设备份区。
可选的,所述基于所述判断结果完成内存数据备份,包括:
当所述第一校验和不正确时,将所述预设备份区的备份数据拷贝至所述下线变量存储区域。
第二方面,本申请实施例提供了一种防止ECU刷死的内存备份装置,所述装置包括:
第一校验和获取模块,用于获取预设第一校验和;
第二校验和获取模块,用于获取预设备份区对应的第二校验和;
结果得到模块,用于当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果;
备份完成模块,用于基于所述判断结果完成内存数据备份。
可选的,所述装置还包括:
数据更改模块,用于当接收到针对下线变量存储区域的数据更改指令时,将所述数据进行更改生成更改后的数据;
校验和生成模块,用于基于预设校验和算法计算所述更改后的数据生成所述更改后的数据对应的校验和,将所述更改后的数据对应的校验和作为第一校验和;
数据保存模块,用于将所述更改后的数据和所述校验和刷写至所述下线变量存储区域中。
可选的,所述备份完成模块,具体用于:
当所述第一校验和正确时,将所述下线变量存储区域中的数据拷贝至所述预设备份区。
可选的,所述备份完成模块,具体用于:
当所述第一校验和不正确时,将所述预设备份区的备份数据拷贝至所述下线变量存储区域。
第三方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法步骤。
第四方面,本申请实施例提供一种电子设备,可包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行上述的方法步骤。
本申请实施例提供的技术方案可以包括以下有益效果:
在本申请实施例中,行车电脑首先获取预设第一校验和,再获取预设备份区对应的第二校验和,然后当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果,最后基于所述判断结果完成内存数据备份。由于本方案对经常进行数据刷写的下限变量存储区域,预先增加了相同大小的分区对下限变量存储区域进行数据备份,在刷写不成功的情况下,基于计算出的校验和可以将备份区的数据拷贝到下限变量存储区域中,这种方法不但有效防止ECU刷死,还可以防止数据丢失。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是本申请实施例提供的一种防止ECU刷死的内存备份方法的流程示意图;
图2是本申请实施例提供的一种防止ECU刷死的内存备份过程的过程示意图;
图3是本申请实施例提供的另一种防止ECU刷死的内存备份方法的流程示意图;
图4是本申请实施例提供的另一种防止ECU刷死的内存备份方法的流程示意图;
图5是本申请实施例提供的一种防止ECU刷死的内存备份装置的结构示意图;
图6是本申请实施例提供的另一种防止ECU刷死的内存备份装置的结构示意图;
图7是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
以下描述和附图充分地示出本发明的具体实施方案,以使本领域的技术人员能够实践它们。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,在本发明的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
到目前为止,ECU没有内存备份,当上位机或者刷写工具对ECU进行数据刷写时,当刷写数据不成功时,从而导致ECU刷死,增加了数据丢失的概率。为此,本申请提供了一种防止ECU刷死的内存备份方法、装置、存储介质及电子设备,以解决上述相关技术问题中存在的问题。本申请提供的技术方案中,由于本方案对经常进行数据刷写的下限变量存储区域,预先增加了相同大小的分区对下限变量存储区域进行数据备份,在刷写不成功的情况下,基于计算出的校验和可以将备份区的数据拷贝到下限变量存储区域中,这种方法不但有效防止ECU刷死,还可以防止数据丢失,下面采用示例性的实施例进行详细说明。
下面将结合附图1-附图4,对本申请实施例提供的防止ECU刷死的内存备份方法进行详细介绍。
请参见图1,为本申请实施例提供了一种防止ECU刷死的内存备份方法的流程示意图。如图1所示,本申请实施例的所述方法可以包括以下步骤:
S101,获取预设第一校验和;
其中,校验和是根据校验和算法对存储区域的数据进行计算后得到的。所述存储区域的数据是保存在例如EOL(下线变量存储区域)中的数据,存储在该区域的数据需要经常更改。所述EOL是EMS(Engine Management System)中的数据存储区域,EMS是ECU(电子控制单元)的应用程序区,表示ECU控制发动机正常工作需要的程序,ECU内部分区分为两个大区,分别为Bootloader和EMS区,其中Bootloader是用户更新EMS区的引导加载程序。
通常,在计算校验和之前,首先要对EOL区(下限变量存储区域)增加相同大小的分区进行数据备份,增加的备份分区此处称为备份区,然后设定计算校验和的算法,此处的校验和算法可自行设定,此处不做限制,当校验和算法设定之后,在EOL区及备份区中均分配四个字节的地址用来存放校验和,再根据校验和算法计算出EOL区和备份区的数据对应的校验和,最后将计算出的EOL区和备份区的数据对应的校验和保存至预先分配的地址中。
在本申请实施例中,用户利用上位机(INCA或刷写工具)对EOL区中的数据进行更改后生成更改后的数据,上位机需要按照预先设定的校验和算法对更改后的数据进行重新计算校验和,校验和计算完成后,上位机最后将更改后的数据和新的校验和刷写至EOL区中进行保存,此时将新的校验和看作第一校验和。当上位机刷写结束后ECU重新上电进入Bootloader后,ECU首先获取第一校验和。
S102,获取预设备份区对应的第二校验和;
其中,第二校验和是备份区的备份数据对应的校验和。
在本申请实施例中,当用户利用上位机对EOL区的数据进行更改后,此时需要判断EOL区的校验和是否正确,在判断过程中,ECU首先基于步骤S101获取了第一校验和,也就是保存在EOL区中更改后的数据对应的校验和。然后获取保存在备份区中的备份数据对应的校验和。
S103,当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果;
在一种可行的实现方式中,ECU首先基于步骤S101和步骤S102获取到第一校验和与第二校验和,然后根据第一校验和对应的数值和第二校验和对应的数值进行比较,此时由于用户利用上位机对EOL区数据进行了更改,因此此时保存在EOL区的第一校验和与第二校验和对应的值肯定不相等,此时需要判断EOL区保存的第一校验和是否正确,ECU根据设定的判断程序对第一校验和进行判断并生成了判断结果。
S104,基于所述判断结果完成内存数据备份。
在一种可能的实现方式中,基于步骤S103得到的判断结果可能是第一校验和正确,也可能出现第一校验和错误。
可选的,当ECU判断后的第一校验和正确时,ECU将EOL区更改后数据内容拷贝至备份区,数据刷写成功。
可选的,当ECU判断后的第一校验和错误时,ECU将备份区的数据内容拷贝至EOL区,数据刷写失败,这种方式可以有效保护EOL区保存的数据被恶意篡改。
在另一种可能的实现方式中,当用户没有对EOL区的数据进行刷写更改时,此时的EOL区数据和备份区的数据是一致的,在这种情况下,ECU也需要对EOL区的数据计算出校验和来判断校验和是否正确,当判断后正确时,此时说明EOL区和备份区数据一致,无需操作。当判断结果不正确时,此时说明数据被进行了恶意篡改,但是更改者此时并不知道校验和算法,导致未对校验和进行更改,因此可根据校验和可以判断出数据有没有更改,此时需要将备份区数据拷贝到EOL区,有效防止了数据恶意篡改。
利用上位机进行刷写过程中由于异常原因只对EOL区进行擦除,未进行刷写的情况,如果没有备份区,ECU就无法跳转至应用程序运行,添加备份区后,ECU根据校验和的判断结果,将备份区数据内容拷贝到EOL区,从而使得ECU能够正常运行。
例如图2所示,首先用户利用上位机对EOL区中的数据进行刷写更改时,此时生成了一个更改指令发送到ECU,ECU接收到该指令后,首先判断EOL区和备份区保存的校验和是否一致。
当校验和一致时,此时ECU判断EOL区校验和是否正确,如果正确,则无需操作,如果校验和错误,说明EOL区数据进行了更改,校验和未进行更改,此时需要将备份区内容拷贝至EOL区。
当校验和不一致时,此时ECU判断EOL区校验和是否正确,如果正确,EOL区数据及校验和进行更改,且都正确,需要将EOL区内容拷贝至备份区,刷写成功。如果判断错误,EOL区数据及校验和进行更改,但是校验和并不正确,需要备份区内容拷贝至EOL区。
在本申请实施例中,行车电脑首先获取预设第一校验和,再获取预设备份区对应的第二校验和,然后当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果,最后基于所述判断结果完成内存数据备份。由于本方案对经常进行数据刷写的下限变量存储区域,预先增加了相同大小的分区对下限变量存储区域进行数据备份,在刷写不成功的情况下,基于计算出的校验和可以将备份区的数据拷贝到下限变量存储区域中,这种方法不但有效防止ECU刷死,还可以防止数据丢失。
请参见图3,为本申请实施例提供的一种防止ECU刷死的内存备份方法的流程示意图。本实施例以图像处理方法应用于电子设备中来举例说明。该防止ECU刷死的内存备份方法可以包括以下步骤:
S201,当接收到针对下线变量存储区域的数据更改指令时,将所述数据进行更改生成更改后的数据;
在一种可能的实现方式中,用户利用上位机进行数据刷写时,首先将刷写的指令发送给ECU,当ECU接收到对EOL区的数据进行刷写时,根据刷写指令对EOL区中的数据进行更改生成更改后的数据。
S202,基于预设校验和算法计算所述更改后的数据生成所述更改后的数据对应的校验和,将所述更改后的数据对应的校验和作为第一校验和;
在一种可能的实现方式中,基于步骤S201得到更改后的数据,当数据更改后,ECU获取用户预先设定的校验和计算规则,例如对EOL区及备份区除校验和外的范围的数据(四个字节)乘因子再加上偏移,再进行累加,最后的和为校验和,或采用通用的CRC校验算法等。具体的校验和算法可根据实际情况而定,此处不做限定。根据校验和算法对更改后的数据进行计算后,生成更改后的数据对应的校验和,更改后的数据和可看作第一校验和。
S203,将所述更改后的数据和所述校验和刷写至所述下线变量存储区域中生成下线变量存储区域中的数据和第一校验和。
在本申请实施例中,基于步骤S202可得到更改后的数据对应的校验和,在得到更改后的数据对应的校验和时,ECU将更改后的数据和校验和刷写保存至EOL区中。
S204,获取预设第一校验和;
具体可参见步骤S101,此处不再赘述。
S205,获取预设备份区对应的第二校验和;
具体可参见步骤S102,此处不再赘述。
S206,当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果;
具体可参见步骤S103,此处不再赘述。
S207,当所述第一校验和正确时,将所述下线变量存储区域中的数据拷贝至所述预设备份区。
具体可参见步骤S104,此处不再赘述。
在本申请实施例中,行车电脑首先获取预设第一校验和,再获取预设备份区对应的第二校验和,然后当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果,最后基于所述判断结果完成内存数据备份。由于本方案对经常进行数据刷写的下限变量存储区域,预先增加了相同大小的分区对下限变量存储区域进行数据备份,在刷写不成功的情况下,基于计算出的校验和可以将备份区的数据拷贝到下限变量存储区域中,这种方法不但有效防止ECU刷死,还可以防止数据丢失。
请参见图4,为本申请实施例提供的一种防止ECU刷死的内存备份方法的流程示意图。本实施例以图像处理方法应用于电子设备中来举例说明。该防止ECU刷死的内存备份方法可以包括以下步骤:
S301,当接收到针对下线变量存储区域的数据更改指令时,将所述数据进行更改生成更改后的数据;
具体可参见步骤S201,此处不再赘述。
S302,基于预设校验和算法计算所述更改后的数据生成所述更改后的数据对应的校验和,将所述更改后的数据对应的校验和作为第一校验和;
具体可参见步骤S202,此处不再赘述。
S303,将所述更改后的数据和所述校验和刷写至所述下线变量存储区域中生成下线变量存储区域中的数据和第一校验和。
具体可参见步骤S203,此处不再赘述。
S304,获取预设第一校验和;
具体可参见步骤S101,此处不再赘述。
S305,获取预设备份区对应的第二校验和;
具体可参见步骤S102,此处不再赘述。
S306,当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果;
具体可参见步骤S103,此处不再赘述。
S307,当所述第一校验和不正确时,将所述预设备份区的备份数据拷贝至所述下线变量存储区域。
具体可参见步骤S104,此处不再赘述。
在本申请实施例中,行车电脑首先获取预设第一校验和,再获取预设备份区对应的第二校验和,然后当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果,最后基于所述判断结果完成内存数据备份。由于本方案对经常进行数据刷写的下限变量存储区域,预先增加了相同大小的分区对下限变量存储区域进行数据备份,在刷写不成功的情况下,基于计算出的校验和可以将备份区的数据拷贝到下限变量存储区域中,这种方法不但有效防止ECU刷死,还可以防止数据丢失。
下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
请参见图5,其示出了本发明一个示例性实施例提供的防止ECU刷死的内存备份装置的结构示意图。该防止ECU刷死的内存备份装置可以通过软件、硬件或者两者的结合实现成为设备的全部或一部分。该装置1包括第一校验和获取模块10、第二校验和获取模块20、结果得到模块30、备份完成模块40。
第一校验和获取模块10,用于获取预设第一校验和;
第二校验和获取模块20,用于获取预设备份区对应的第二校验和;
结果得到模块30,用于当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果;
备份完成模块40,用于基于所述判断结果完成内存数据备份。
可选的,如图6所示,所述防止ECU刷死的内存备份装置1还包括:
数据更改模块50,用于当接收到针对下线变量存储区域的数据更改指令时,将所述数据进行更改生成更改后的数据;
校验和生成模块60,用于基于预设校验和算法计算所述更改后的数据生成所述更改后的数据对应的校验和,将所述更改后的数据对应的校验和作为第一校验和;
数据保存模块70,用于将所述更改后的数据和所述校验和刷写至所述下线变量存储区域中。
需要说明的是,上述实施例提供的防止ECU刷死的内存备份装置在防止ECU刷死的内存备份方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的防止ECU刷死的内存备份装置与防止ECU刷死的内存备份方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请实施例中,行车电脑首先获取预设第一校验和,再获取预设备份区对应的第二校验和,然后当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果,最后基于所述判断结果完成内存数据备份。由于本方案对经常进行数据刷写的下限变量存储区域,预先增加了相同大小的分区对下限变量存储区域进行数据备份,在刷写不成功的情况下,基于计算出的校验和可以将备份区的数据拷贝到下限变量存储区域中,这种方法不但有效防止ECU刷死,还可以防止数据丢失。
本发明还提供一种计算机可读介质,其上存储有程序指令,该程序指令被处理器执行时实现上述各个方法实施例提供的防止ECU刷死的内存备份方法。
本发明还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各个方法实施例所述的防止ECU刷死的内存备份方法。
请参见图7,为本申请实施例提供了一种电子设备的结构示意图。如图7所示,所述电子设备1000可以包括:至少一个处理器1001,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。
其中,通信总线1002用于实现这些组件之间的连接通信。
其中,用户接口1003可以包括显示屏(Display)、摄像头(Camera),可选用户接口1003还可以包括标准的有线接口、无线接口。
其中,网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
其中,处理器1001可以包括一个或者多个处理核心。处理器1001利用各种借口和线路连接整个电子设备1000内的各个部分,通过运行或执行存储在存储器1005内的指令、程序、代码集或指令集,以及调用存储在存储器1005内的数据,执行电子设备1000的各种功能和处理数据。可选的,处理器1001可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器1001可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1001中,单独通过一块芯片进行实现。
其中,存储器1005可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选的,该存储器1005包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器1005可用于存储指令、程序、代码、代码集或指令集。存储器1005可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图7所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及防止ECU刷死的内存备份应用程序。
在图7所示的电子设备1000中,用户接口1003主要用于为用户提供输入的接口,获取用户输入的数据;而处理器1001可以用于调用存储器1005中存储的防止ECU刷死的内存备份应用程序,并具体执行以下操作:
获取预设第一校验和;
获取预设备份区对应的第二校验和;
当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果;
基于所述判断结果完成内存数据备份。
在一个实施例中,所述处理器1001在执行所述获取预设第一校验和之前时,还执行以下操作:
当接收到针对下线变量存储区域的数据更改指令时,将所述数据进行更改生成更改后的数据;
基于预设校验和算法计算所述更改后的数据生成所述更改后的数据对应的校验和,将所述更改后的数据对应的校验和作为第一校验和;
将所述更改后的数据和所述校验和刷写至所述下线变量存储区域中生成下线变量存储区域中的数据和第一校验和。
在一个实施例中,所述处理器1001在执行所述基于所述判断结果完成内存数据备份时,具体执行以下操作:
当所述第一校验和正确时,将所述下线变量存储区域中的数据拷贝至所述预设备份区。
在一个实施例中,所述处理器1001在执行所述基于所述判断结果完成内存数据备份时,具体执行以下操作:
当所述第一校验和不正确时,将所述预设备份区的备份数据拷贝至所述下线变量存储区域。
在本申请实施例中,行车电脑首先获取预设第一校验和,再获取预设备份区对应的第二校验和,然后当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果,最后基于所述判断结果完成内存数据备份。由于本方案对经常进行数据刷写的下限变量存储区域,预先增加了相同大小的分区对下限变量存储区域进行数据备份,在刷写不成功的情况下,基于计算出的校验和可以将备份区的数据拷贝到下限变量存储区域中,这种方法不但有效防止ECU刷死,还可以防止数据丢失。
本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。所属技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本文所披露的实施例中,应该理解到,所揭露的方法、产品(包括但不限于装置、设备等),可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
应当理解的是,附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。本发明并不局限于上面已经描述并在附图中示出的流程及结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (10)
1.一种防止ECU刷死的内存备份方法,其特征在于,所述方法包括:
获取预设第一校验和;
获取预设备份区对应的第二校验和;
当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果;
基于所述判断结果完成内存数据备份。
2.根据权利要求1所述的方法,其特征在于,所述获取预设第一校验和之前,还包括:
当接收到针对下线变量存储区域的数据更改指令时,将所述数据进行更改生成更改后的数据;
基于预设校验和算法计算所述更改后的数据生成所述更改后的数据对应的校验和,将所述更改后的数据对应的校验和作为第一校验和;
将所述更改后的数据和所述校验和刷写至所述下线变量存储区域中生成下线变量存储区域中的数据和第一校验和。
3.根据权利要求1所述的方法,其特征在于,所述基于所述判断结果完成内存数据备份,包括:
当所述第一校验和正确时,将所述下线变量存储区域中的数据拷贝至所述预设备份区。
4.根据权利要求1所述的方法,其特征在于,所述基于所述判断结果完成内存数据备份,包括:
当所述第一校验和不正确时,将所述预设备份区的备份数据拷贝至所述下线变量存储区域。
5.一种防止ECU刷死的内存备份装置,其特征在于,所述装置包括:
第一校验和获取模块,用于获取预设第一校验和;
第二校验和获取模块,用于获取预设备份区对应的第二校验和;
结果得到模块,用于当所述第一校验和与所述第二校验和不一致时,判断所述第一校验和是否正确后得到判断结果;
备份完成模块,用于基于所述判断结果完成内存数据备份。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
数据更改模块,用于当接收到针对下线变量存储区域的数据更改指令时,将所述数据进行更改生成更改后的数据;
校验和生成模块,用于基于预设校验和算法计算所述更改后的数据生成所述更改后的数据对应的校验和,将所述更改后的数据对应的校验和作为第一校验和;
数据保存模块,用于将所述更改后的数据和所述校验和刷写至所述下线变量存储区域中。
7.根据权利要求5所述的装置,其特征在于,所述备份完成模块,具体用于:
当所述第一校验和正确时,将所述下线变量存储区域中的数据拷贝至所述预设备份区。
8.根据权利要求5所述的装置,其特征在于,所述备份完成模块,具体用于:
当所述第一校验和不正确时,将所述预设备份区的备份数据拷贝至所述下线变量存储区域。
9.一种计算机存储介质,其特征在于,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如权利要求1~4任意一项的方法步骤。
10.一种电子设备,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1~4任意一项的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911320063.4A CN111198705A (zh) | 2019-12-19 | 2019-12-19 | 一种防止ecu刷死的内存备份方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911320063.4A CN111198705A (zh) | 2019-12-19 | 2019-12-19 | 一种防止ecu刷死的内存备份方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111198705A true CN111198705A (zh) | 2020-05-26 |
Family
ID=70746569
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911320063.4A Pending CN111198705A (zh) | 2019-12-19 | 2019-12-19 | 一种防止ecu刷死的内存备份方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111198705A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111796839A (zh) * | 2020-07-07 | 2020-10-20 | 北京经纬恒润科技有限公司 | 控制器程序管理方法和装置 |
CN112579135A (zh) * | 2020-12-22 | 2021-03-30 | 潍柴动力股份有限公司 | 用于车辆控制单元的刷写控制方法、系统及车辆 |
CN112698857A (zh) * | 2021-01-04 | 2021-04-23 | 潍柴动力股份有限公司 | 一种数据刷写的方法及设备 |
CN112783056A (zh) * | 2021-01-04 | 2021-05-11 | 潍柴动力股份有限公司 | Ecu的数据烧写方法、装置、设备及存储介质 |
CN113551856A (zh) * | 2021-07-21 | 2021-10-26 | 安徽江淮汽车集团股份有限公司 | 燃油车管路泄漏下线检测方法 |
CN114265382A (zh) * | 2021-11-12 | 2022-04-01 | 潍柴动力股份有限公司 | Ecu刷写故障处理方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593265A (zh) * | 2012-08-16 | 2014-02-19 | 现代自动车株式会社 | 用于防止车辆中行程数据丢失的方法和系统 |
CN108062259A (zh) * | 2017-11-01 | 2018-05-22 | 联创汽车电子有限公司 | Mcu内部数据存储ecc处理系统及其处理方法 |
GB201903088D0 (en) * | 2019-03-07 | 2019-04-24 | Delphi Tech Ip Ltd | Automotive bootloader |
CN110083374A (zh) * | 2019-03-25 | 2019-08-02 | 深圳猛犸电动科技有限公司 | 一种升级回滚方法、系统及终端设备 |
-
2019
- 2019-12-19 CN CN201911320063.4A patent/CN111198705A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593265A (zh) * | 2012-08-16 | 2014-02-19 | 现代自动车株式会社 | 用于防止车辆中行程数据丢失的方法和系统 |
CN108062259A (zh) * | 2017-11-01 | 2018-05-22 | 联创汽车电子有限公司 | Mcu内部数据存储ecc处理系统及其处理方法 |
GB201903088D0 (en) * | 2019-03-07 | 2019-04-24 | Delphi Tech Ip Ltd | Automotive bootloader |
CN110083374A (zh) * | 2019-03-25 | 2019-08-02 | 深圳猛犸电动科技有限公司 | 一种升级回滚方法、系统及终端设备 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111796839A (zh) * | 2020-07-07 | 2020-10-20 | 北京经纬恒润科技有限公司 | 控制器程序管理方法和装置 |
CN111796839B (zh) * | 2020-07-07 | 2024-04-09 | 北京经纬恒润科技股份有限公司 | 控制器程序管理方法和装置 |
CN112579135A (zh) * | 2020-12-22 | 2021-03-30 | 潍柴动力股份有限公司 | 用于车辆控制单元的刷写控制方法、系统及车辆 |
CN112698857A (zh) * | 2021-01-04 | 2021-04-23 | 潍柴动力股份有限公司 | 一种数据刷写的方法及设备 |
CN112783056A (zh) * | 2021-01-04 | 2021-05-11 | 潍柴动力股份有限公司 | Ecu的数据烧写方法、装置、设备及存储介质 |
CN112698857B (zh) * | 2021-01-04 | 2023-09-19 | 潍柴动力股份有限公司 | 一种数据刷写的方法及设备 |
CN113551856A (zh) * | 2021-07-21 | 2021-10-26 | 安徽江淮汽车集团股份有限公司 | 燃油车管路泄漏下线检测方法 |
CN114265382A (zh) * | 2021-11-12 | 2022-04-01 | 潍柴动力股份有限公司 | Ecu刷写故障处理方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111198705A (zh) | 一种防止ecu刷死的内存备份方法、装置、存储介质及电子设备 | |
CN109491671B (zh) | 诊断软件下载方法、装置、终端设备及存储介质 | |
CN109814524B (zh) | 一种车辆诊断方法、装置及系统 | |
CN110930131A (zh) | 一种车辆维修方法、装置、设备及介质 | |
CN111209343B (zh) | 节点数据同步方法、装置、设备以及存储介质 | |
CN105573787A (zh) | 基于车载T-Box实现软件升级的方法及装置 | |
CN108271150B (zh) | 支持同时对多台手机进行刷机或数据清除的方法及系统 | |
CN110515871A (zh) | 一种中断方法、装置及fpga和存储介质 | |
WO2019077607A1 (en) | SYSTEM AND METHOD FOR MANAGING PROGRAM MEMORY ON A STORAGE DEVICE | |
CN110192178B (zh) | 程序打补丁的方法、装置、微控制单元和终端设备 | |
CN105589699A (zh) | 序列号信息的更新方法、装置及终端 | |
CN113504918A (zh) | 设备树配置优化方法、装置、计算机设备和存储介质 | |
CN107341074B (zh) | 一种升级异常修复方法、升级异常修复装置及智能终端 | |
CN114265613B (zh) | 一种整车所有电控单元固件差分升级方法及系统 | |
CN114915554A (zh) | 远程升级方法、装置、计算机设备和存储介质 | |
CN109165712A (zh) | 分布式分期号的生成方法、装置和计算机存储介质 | |
CN110674050B (zh) | 内存越界检测方法、装置、电子设备及计算机存储介质 | |
US20170090820A1 (en) | Method and device for operating a many-core system | |
CN113227968B (zh) | 一种版本管理方法和装置 | |
CN109308327A (zh) | 基于子图模型兼容点中心模型的图计算方法装置介质设备 | |
CN107967160B (zh) | 一种通过Boot Loader更新操作系统文件的方法及装置 | |
CN116710899A (zh) | 一种数据冗余备份方法、装置、存储介质及电子设备 | |
CN108241578B (zh) | 汽车电控单元软件兼容性检查方法及装置 | |
CN113672258A (zh) | 车辆的系统升级方法、装置、计算机设备和存储介质 | |
CN111143360B (zh) | 一种基于空间索引算法的道路上下行识别方法、装置、存储介质及终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |