本发明涉及车辆,特别是涉及一种车载ecu的升级方法、装置及介质。
背景技术:
1、随着汽车的电动化、智能化方向的快速发展,其电子控制单元(electroniccontrol unit,ecu)越来越多,对于在线升级(over-the-air technology,ota)和统一诊断服务(unified diagnostic services,uds)功能普及,ecu实现软件自升级的系统引导程序(bootloader,boot)功能成为必备选项。
2、通常一个ecu搭载的是一个boot和一个应用程序(app),boot作为引导程序,实现can总线完成app升级功能。由于ota的普及,其boot升级app软件需要按照原始委托生产(original entrusted manufacture,oem)提出的需求进行升级,然而每个oem厂家提出的ota功能要求均有不同,且ota的需求不断更新,搭载一个boot的ecu无法方便快捷地完成对自身boot的升级,对于这种情况,通常会附加仿真器工具,进而拆除机器通过硬件刷写boot,导致刷写升级成本较大。
3、因此,如何根据ota需求进行boot软件升级以提升升级效率是本领域技术人员亟需要解决的。
技术实现思路
1、本发明的目的是提供一种车载ecu的升级方法、装置及介质,通过多级boot除完成ota功能需求之外,还可以利用多级boot完成自身boot升级,避免现有的通过附加仿真器,拆除机器硬件刷写boot造成的刷写成本大的问题,通过软件即可实现刷写升级,提高升级效率。
2、为解决上述技术问题,本发明提供一种车载ecu的升级方法,包括:
3、获取车载的存储区域内总线编号信息,其中所述总线编号信息用于区分多级boot的级别信息,所述多级boot基于ota功能预先划分;
4、根据所述总线编号信息确定所述多级boot的目标升级级别;
5、根据所述目标升级级别和写入所述存储区域的标识信息之间的关系确定所述目标升级级别下的刷写流程;
6、根据所述刷写流程进行对应的升级操作。
7、优选地,在所述获取车载的存储区域内总线编号信息之前,还包括:
8、获取上位机发送的升级请求信息;
9、判断所述升级请求信息对应的当前状态是否满足升级需求;
10、若是,则开启预升级模式,并进入至所述获取车载的存储区域内总线编号信息的步骤。
11、优选地,所述总线编号信息包括多个总线编号,所述多级boot对应的所述总线编号不同。
12、优选地,所述多级boot的目标升级级别包括一级boot,所述一级boot包含一套总线编号信息;
13、所述根据所述目标升级级别和写入所述存储区域的标识信息之间的关系确定所述目标升级级别下的刷写流程,包括:
14、当所述目标升级级别为所述一级boot时,根据所述目标升级级别和写入所述存储区域的所述标识信息之间的关系,获取所述一级boot对应的标识信息,其中,所述标识信息包括所述一级boot的各刷写流程对应的擦除地址和长度;
15、根据所述标识信息确定所述一级boot的刷写流程,所述一级boot的刷写流程包括app升级、所述一级boot升级至二级boot,各所述刷写流程对应的擦除地址和长度均不同。
16、优选地,所述多级boot的目标升级级别包括二级boot,所述二级boot包含两套总线编号信息;
17、所述根据所述目标升级级别和写入所述存储区域的标识信息之间的关系确定所述目标升级级别下的刷写流程,包括:
18、当所述目标升级级别为所述二级boot时,根据所述目标升级级别和所述存储区域的所述标识信息的关系,获取所述二级boot对应的所述标识信息,其中,所述标识信息包括标识符、所述二级boot的各刷写流程对应的擦除地址和长度;
19、根据所述标识信息确定所述二级boot的刷写流程,其中,所述二级boot的刷写流程包括自身boot升级、所述一级boot升级和app升级,所述自身boot升级与所述一级boot升级的刷写流程相同;
20、对应地,所述根据所述标识信息确定所述二级boot的刷写流程,包括:
21、根据所述标识符确定对应的总线编号信息;
22、根据所述总线编号信息确定对应的升级对象,其中所述升级对象与所述二级boot的刷写流程预先建立映射关系;
23、根据所述升级对象、所述擦除地址和所述长度确定所述二级boot的刷写流程。
24、优选地,在所述根据所述目标升级级别和写入所述存储区域的标识信息之间的关系确定所述目标升级级别下的刷写流程之前,还包括:
25、根据所述总线编号信息确定对应的所述升级级别的安全认证方式,其中所述一级boot的安全认证方式基于供应商自拟的安全算法确定,所述二级boot的安全认证方式基于整车厂企业定制的各安全算法确定;
26、获取所述ota功能的安全访问以发送随机种子,便于上位机根据所述随机种子利用所述安全认证方式对应的安全算法进行密钥加密;
27、接收所述上位机发送的密钥信息;
28、将所述密钥与所述密钥信息对比;
29、若相同,则解锁以获取升级权限,并进入至所述根据所述目标升级级别和写入所述存储区域的标识信息之间的关系确定所述目标升级级别下的刷写流程的步骤。
30、优选地,还包括:
31、在升级所述二级boot异常时,利用所述一级boot进行升级。
32、优选地,在所述根据所述刷写流程进行对应的升级操作之后,还包括:
33、将所述升级操作对应的数据包下载至所述存储区域;
34、对所述数据包进行校验;
35、若校验成功,则确定升级成功。
36、优选地,在所述根据所述刷写流程进行对应的升级操作之前,还包括:
37、对所述升级操作进行上电时序;
38、当所述上电时序完成后,进入至所述根据所述刷写流程进行对应的升级操作的步骤进行升级操作。
39、为解决上述技术问题,本发明还提供一种车载ecu的升级装置,包括:
40、获取模块,用于获取车载的存储区域内总线编号信息,其中所述总线编号信息用于区分多级boot的级别信息,所述多级boot基于ota功能预先划分;
41、第一确定模块,用于根据所述总线编号信息确定所述多级boot的目标升级级别;
42、第二确定模块,用于根据所述目标升级级别和写入所述存储区域的标识信息之间的关系确定所述目标升级级别下的刷写流程;
43、升级操作模块,用于根据所述刷写流程进行对应的升级操作。
44、为解决上述技术问题,本发明还提供一种车载ecu的升级装置,包括:
45、存储器,用于存储计算机程序;
46、处理器,用于执行所述计算机程序时实现如上述所述的车载ecu的升级方法的步骤。
47、为解决上述技术问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的车载ecu的升级方法的步骤。
48、本发明提供的一种车载ecu的升级方法,包括获取车载的存储区域内总线编号信息,其中总线编号信息用于区分多级boot的级别信息,多级boot基于ota功能预先划分;根据总线编号信息确定多级boot的目标升级级别;根据目标升级级别和写入存储区域的标识信息之间的关系确定目标升级级别下的刷写流程;根据刷写流程进行对应的升级操作。该方法通过在存储区域基于ota功能需求划分多级boot,通过多级boot除完成ota功能需求之外,还可以利用多级boot完成自身boot升级,避免现有的通过附加仿真器,拆除机器硬件刷写boot造成的刷写成本大的问题,通过软件即可实现刷写升级,提高升级效率。
49、另外,本发明还提供了一种车载ecu的升级装置及介质,具有如上述车载ecu的升级方法相同的有益效果。