System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及控制器软件更新,尤其涉及一种ecu无感刷新方法及相关装置。
技术介绍
1、随着汽车电子技术的不断发展,电子控制单元(electronic control unit,ecu)作为汽车的核心控制部件,其性能和功能也在不断提升。为了确保ecu的稳定性和可靠性,同时满足日益增长的驾驶需求,对ecu进行定期的软件更新和刷新变得尤为重要。然而,传统的ecu刷新方法往往需要拆卸ecu或中断其正常运行,这不仅增加了维修成本和时间成本,还可能对车辆的正常使用造成不便。因此,开发一种能够在不影响车辆正常运行的情况下实现ecu无感刷新的方法显得尤为重要。
技术实现思路
1、鉴于上述问题,本申请提供了一种ecu无感刷新方法及相关装置,用于实现ecu无感刷新的目的。具体方案如下:
2、本申请第一方面提供一种ecu无感刷新方法,包括:
3、运行第一分区内的第一引导启动程序,以便所述第一引导启动程序在监测到软件刷新请求时,基于为目标程序预配置的地址分配信息,将所述目标程序刷入第二分区的对应地址处,其中,所述软件刷新请求用于将所述电子控制单元的软件程序更新为所述目标程序,所述第一分区和所述第二分区通过对所述电子控制单元的存储区进行划分得到;
4、在所述目标程序刷新完成后切换到所述第二分区,以依次运行所述第二分区内的第二引导启动程序和所述第二分区内的目标程序,其中,在所述第二分区内的目标程序运行之前,所述第二引导启动程序能够基于所述地址分配信息对所述第二分区内的目标程序
5、若所述第二分区内的目标程序未成功运行,则运行所述第二分区内的默认程序,其中,所述默认程序为包含所述电子控制单元的基本功能且能够正常运行的程序。
6、可选的,所述目标程序由多个数据段组成,每个所述数据段均预配置有地址分配信息;
7、所述基于为目标程序预配置的地址分配信息,将所述目标程序刷入第二分区的对应地址处,包括:
8、基于为所述多个数据段分别预配置的地址分配信息,将所述多个数据段分别刷入所述第二分区的对应地址处。
9、可选的,为每个所述数据段预配置的地址分配信息存储于为该数据段预配置的头文件内。
10、可选的,还包括:
11、若所述第二分区内的目标程序成功运行,则将所述第二分区内的目标程序刷入所述第一分区。
12、可选的,所述第二分区内的目标程序是否成功运行的确定过程,包括:
13、确定在预设时长内所述第二引导启动程序重复运行的次数是否达到预设次数;
14、若是,则确定所述第二分区内的目标程序成功运行;
15、若否,则确定所述第二分区内的目标程序未成功运行。
16、可选的,所述电子控制单元的主控芯片具有ab swap功能,所述ab swap功能使得所述第一分区和所述第二分区具有相同的存储空间和相同的存储地址。
17、本申请第二方面提供一种ecu无感刷新装置,包括:
18、第一运行模块,用于运行第一分区内的第一引导启动程序,以便所述第一引导启动程序在监测到软件刷新请求时,基于为目标程序预配置的地址分配信息,将所述目标程序刷入第二分区的对应地址处,其中,所述软件刷新请求用于将所述电子控制单元的软件程序更新为所述目标程序,所述第一分区和所述第二分区通过对所述电子控制单元的存储区进行划分得到;
19、第二运行模块,用于在所述目标程序刷新完成后切换到所述第二分区,以依次运行所述第二分区内的第二引导启动程序和所述第二分区内的目标程序,其中,在所述第二分区内的目标程序运行之前,所述第二引导启动程序能够基于所述地址分配信息对所述第二分区内的目标程序进行校验;
20、第三运行模块,用于若所述第二分区内的目标程序未成功运行,则运行所述第二分区内的默认程序,其中,所述默认程序为包含所述电子控制单元的基本功能且能够正常运行的程序。
21、本申请第三方面提供一种计算机程序产品,包括计算机可读指令,当所述计算机可读指令在电子设备上运行时,使得所述电子设备实现上述第一方面或第一方面任一实现方式的ecu无感刷新方法。
22、本申请第四方面提供一种电子设备,包括至少一个处理器和与所述处理器连接的存储器,其中:
23、所述存储器用于存储计算机程序;
24、所述处理器用于执行所述计算机程序,以使所述电子设备能够实现上述第一方面或第一方面任一实现方式的ecu无感刷新方法。
25、本申请第五方面提供一种计算机存储介质,所述存储介质承载有一个或多个计算机程序,当所述一个或多个计算机程序被电子设备执行时,能够使所述电子设备实现上述第一方面或第一方面任一实现方式的ecu无感刷新方法。
26、借由上述技术方案,本申请提供的ecu无感刷新方法可以在运行第一分区的同时在第二分区刷新目标程序,刷新完成后再运行第二分区内的目标程序即可,由于刷新目标程序的同时可以运行第一分区内的旧程序,使得本申请可以在车辆正常运行的过程中完成刷新,实现了ecu无感刷新。
27、进一步,本申请能够为目标程序预配置地址分配信息,使得本申请可以根据目标程序的大小及硬件地址空间资源动态地设置地址分配信息,一方面提高了硬件地址空间资源的利用率,另一方面通过不约束待刷新程序的地址分配的方式,可以实现任意地址划分的软件刷新策略,灵活性更高。而当刷入的目标程序出现运行问题时,能够跳转运行默认程序,避免了因目标程序出现问题导致电子控制单元卡死而出现行车安全问题。
本文档来自技高网...【技术保护点】
1.一种ECU无感刷新方法,其特征在于,包括:
2.根据权利要求1所述的ECU无感刷新方法,其特征在于,所述目标程序由多个数据段组成,每个所述数据段均预配置有地址分配信息;
3.根据权利要求2所述的ECU无感刷新方法,其特征在于,为每个所述数据段预配置的地址分配信息存储于为该数据段预配置的头文件内。
4.根据权利要求1所述的ECU无感刷新方法,其特征在于,还包括:
5.根据权利要求4所述的ECU无感刷新方法,其特征在于,所述第二分区内的目标程序是否成功运行的确定过程,包括:
6.根据权利要求1所述的ECU无感刷新方法,其特征在于,所述电子控制单元的主控芯片具有AB Swap功能,所述AB Swap功能使得所述第一分区和所述第二分区具有相同的存储空间和相同的存储地址。
7.一种ECU无感刷新装置,其特征在于,包括:
8.一种计算机程序产品,其特征在于,包括计算机可读指令,当所述计算机可读指令在电子设备上运行时,使得所述电子设备实现如权利要求1至6中任意一项所述的ECU无感刷新方法。
9.
10.一种计算机存储介质,其特征在于,所述存储介质承载有一个或多个计算机程序,当所述一个或多个计算机程序被电子设备执行时,能够使所述电子设备实现如权利要求1至6中任意一项所述的ECU无感刷新方法。
...【技术特征摘要】
1.一种ecu无感刷新方法,其特征在于,包括:
2.根据权利要求1所述的ecu无感刷新方法,其特征在于,所述目标程序由多个数据段组成,每个所述数据段均预配置有地址分配信息;
3.根据权利要求2所述的ecu无感刷新方法,其特征在于,为每个所述数据段预配置的地址分配信息存储于为该数据段预配置的头文件内。
4.根据权利要求1所述的ecu无感刷新方法,其特征在于,还包括:
5.根据权利要求4所述的ecu无感刷新方法,其特征在于,所述第二分区内的目标程序是否成功运行的确定过程,包括:
6.根据权利要求1所述的ecu无感刷新方法,其特征在于,所述电子控制单元的主控芯片具有ab swap功...
【专利技术属性】
技术研发人员:姜丰伟,许永莉,虞兮凡,杜逸康,
申请(专利权)人:上海汽车集团股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。