一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

车载ECU的软件刷新方法、装置和计算机可读介质与流程

2021-11-05 23:04:00 来源:中国专利 TAG:

车载ecu的软件刷新方法、装置和计算机可读介质
技术领域
1.本发明主要涉及汽车电子领域,尤其涉及一种车载ecu的软件刷新方法、装置和计算机可读介质。


背景技术:

2.软件定义汽车(software defined vehicles,sdv)的蓬勃发展,让车辆使用者对汽车新功能的使用需求越来越多,体验要求也越来越高,而这些新功能的实现都是通过车载ecu的软件迭代实现的。
3.目前针对车载ecu刷新的主流工具有两种,一种是车用主机厂基于vflash流程开发的通用刷新工具,虽然其适用大多数车载工具的刷新,但是开发成本较高,费用可达数十万元。另外一种是车用主机厂的供应商开发的各种专用工具,使用的技术各不相同,且不具备通用性,只能针对自用的ecu进行刷新。基于以上,开发一款通用、便捷、低成本的车载ecu软件刷新工具,快速进行车载ecu的软件迭代势在必行。


技术实现要素:

4.本发明要解决的技术问题是提供一种车载ecu的软件刷新方法、装置和计算机可读介质,实现车载ecu软件刷新的高效、便捷进行。
5.为解决上述技术问题,本发明提供了一种车载ecu的软件刷新方法,包括以下步骤:
6.通过软件刷新上位机接收请求id、响应id和刷新文件,所述请求id用于确定待进行软件刷新的车载ecu;基于所述刷新文件的内容构成规则从所述刷新文件中读取刷新所述车载ecu所需的数据段;检查车辆当前的状态参数是否满足软件刷新的前置条件;如果满足所述软件刷新的前置条件,则根据所述请求id和所述数据段,刷新所述车载ecu的软件。
7.在本发明的一实施例中,所述刷新文件包括s19文件或hex文件。
8.在本发明的一实施例中,所述软件刷新上位机的显示界面包括对所述刷新文件的选择按钮。
9.在本发明的一实施例中,刷新所述车载ecu所需的数据段包括ecu刷新地址、刷新数据总长度和刷新数据。
10.在本发明的一实施例中,所述前置条件包括所述车辆当前的车速、电源模式和蓄电池电压。
11.在本发明的一实施例中,所述刷新数据分为多次发送;根据所述请求id和所述刷新所述车载ecu所需的数据段,刷新所述车载ecu的软件包括,在每一次发送所述刷新数据时,接收所述车载ecu返回的响应id,并判断所述返回的响应id和所述通过所述上位机接收的响应id是否一致;如果一致,则确认该次发送所述刷新数据成功。
12.在本发明的一实施例中,在刷新所述车载ecu的软件后,还对传输到所述车载ecu上的刷新数据进行循环冗余校验。
13.在本发明的一实施例中,对传输到所述车载ecu上的刷新数据进行循环冗余校验包括,读取所述传输到所述车载ecu上的刷新数据;基于所述读取的数据进行校验多项式计算,得到第一校验码;基于所述刷新文件中包括的刷新数据进行校验多项式计算,得到第二校验码;比较所述第一校验码和所述第二校验码,确定所述车载ecu的软件刷新是否成功。
14.在本发明的一实施例中,所述软件刷新上位机显示软件刷新过程的进度。
15.本发明还提供一种车载ecu的软件刷新装置,包括:存储器,用于存储可由处理器执行的指令;以及处理器,用于执行所述指令以实现如前述任一项所述的方法。
16.本发明还提供一种存储有计算机程序代码的计算机可读介质,所述计算机程序代码在由处理器执行时实现如前述任一项所述的方法。
17.与现有技术相比,本发明具有以下优点:通过软件刷新上位机获取请求id、响应id和刷新文件,读取刷新车载ecu所需的数据段,实现车载ecu软件刷新的高效、快捷和准确进行。
附图说明
18.附图是为提供对本技术进一步的理解,它们被收录并构成本技术的一部分,附图示出了本技术的实施例,并与本说明书一起起到解释本发明原理的作用。附图中:
19.图1是本技术一实施例的车载ecu的软件刷新方法的流程图。
20.图2是本技术一实施例的软件刷新上位机的显示界面示意图。
21.图3是本技术一实施例示出的车载ecu的软件刷新装置的系统实施环境示意图。
具体实施方式
22.为让本发明的上述目的、特征和优点能更明显易懂,以下结合附图对本发明的具体实施方式作详细说明。
23.在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其它不同于在此描述的其它方式来实施,因此本发明不受下面公开的具体实施例的限制。
24.如本技术所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其他的步骤或元素。
25.本技术中使用了流程图用来说明根据本技术的实施例的系统所执行的操作。应当理解的是,前面或下面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各种步骤。同时,或将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
26.本技术的实施例描述一种车载ecu的软件刷新方法、装置和计算机可读介质。
27.图1是本技术一实施例的车载ecu的软件刷新方法的流程图。
28.如图1所示,车载ecu的软件刷新方法包括,步骤101,通过软件刷新上位机接收请求id、响应id和刷新文件,所述请求id用于确定待进行软件刷新的车载ecu;步骤102,于所述刷新文件的内容构成规则从所述刷新文件中读取刷新所述车载ecu所需的数据段;步骤103,检查车辆当前的状态参数是否满足软件刷新的前置条件;步骤104,如果车辆当前的状
态参数满足所述前置条件,则根据所述请求id和所述数据段,刷新所述车载ecu的软件。
29.具体地,在步骤101,通过软件刷新上位机接收请求id、响应id和刷新文件,所述请求id用于确定待进行软件刷新的车载ecu。
30.在一些实施例中,所述软件刷新上位机的显示界面包括对所述刷新文件的选择按钮。
31.图2是本技术一实施例的软件刷新上位机的显示界面示意图。
32.如图2所示,软件刷新上位机的显示界面200包括对所述刷新文件的选择按钮201。显示界面200还可包括对刷新文件的路径选择按钮203。
33.在步骤102,基于所述刷新文件的内容构成规则从所述刷新文件中读取刷新所述车载ecu所需的数据段。
34.在一些实施例中,刷新所述车载ecu所需的数据段包括ecu刷新地址、刷新数据总长度和刷新数据。
35.在一些实施例中,所述刷新文件包括s19文件或hex文件。
36.为了在不同的计算机平台之间传输程序代码和数据,摩托罗拉(motorola)将程序和数据文件以一种可打印的格式(具体为ascii格式)编码成s格式文件。s格式文件是freescale推荐使用的标准文件传送格式。具体的,在s格式文件编译完成之后,freescale的编译器(例如freescale code warrior)将在编译文件夹中的bin文件夹下,自动生成格式为“*.abs.s19”文件,这个文件包含最终下载带单片机中的所有内容。s19文件即可指该后缀格式为.s19类型的文件。
37.hex文件(或称为hex文件、hex文件)格式是可以烧写到单片机等器件中,被单片机执行的一种文件格式。生成hex文件的方式有很多种,可以通过不同的编译器将c语言程序、capl语言程序或者汇编程序编译生成hex文件。
38.在步骤103,检查车辆当前的状态参数是否满足软件刷新的前置条件。
39.在一些实施例中,所述前置条件包括所述车辆当前的车速、电源模式和蓄电池电压。检查车辆当前的状态参数是否满足软件刷新的前置条件,具体例如检查车辆当前的车速是否为0km/h,车辆的电源模式是否为「非ready状态」,蓄电池的电压是否在设定范围。
40.在步骤104,如果车辆当前的状态参数满足软件刷新的前置条件,则根据所述请求id和所述数据段,刷新所述车载ecu的软件。
41.如前述,刷新所述车载ecu所需的数据段例如包括ecu刷新地址、刷新数据总长度和刷新数据。刷新数据指将被写入车载ecu,以实现刷新车载ecu的软件的数据。
42.在一些实施例中,所述刷新数据分为多次发送;根据所述请求id和所述刷新所述车载ecu所需的数据段,刷新所述车载ecu的软件包括,在每一次发送所述刷新数据时,接收所述车载ecu返回的响应id,并判断所述返回的响应id和所述通过所述上位机接收的响应id是否一致;如果一致,则确认该次发送所述刷新数据成功。
43.在一些实施例中,在刷新所述车载ecu的软件后,还对传输到所述车载ecu上的刷新数据进行循环冗余校验。
44.对传输到所述车载ecu上的刷新数据进行循环冗余校验包括,步骤301,读取所述传输到所述车载ecu上的刷新数据;步骤302,基于所述读取的数据进行校验多项式计算,得到第一校验码;步骤303,基于所述刷新文件中包括的刷新数据进行校验多项式计算,得到
第二校验码;步骤304,比较所述第一校验码和所述第二校验码,确定所述车载ecu的软件刷新是否成功。
45.在一些实施例中,本技术的车载ecu的软件刷新方法还包括终止刷新流程、展示刷新过程报告。在图2所例示的显示界面200上,也可包括终止刷新按钮205、展示刷新过程报告按钮207。显示界面200例如还可包括刷新开始按钮211。
46.在一些实施例中,还可从软件刷新上位机观察刷新进度。在图2所示的显示界面200上,例如还包括刷新进度条209。进度条的进度显示值,例如通过已传输到车载ecu的程序代码行数与该刷新文件中的总的程序代码行数的比值确定。进度显示值可随着刷新过程的进行而动态增加。
47.在一些实施例中,软件刷新上位机还可对车载ecu的刷新文件的类型进行相应的选项设置,在显示界面200上例如包括进行选项设置的控件213。控件215则可为是否选择相应选项的按钮。
48.本技术的车载ecu的软件刷新方法,通过软件刷新上位机获取请求id、响应id和刷新文件,读取刷新车载ecu所需的数据段,具体可包括ecu刷新地址、刷新数据总长度和刷新数据,并对车辆当前状态是否满足ecu软件刷新进行前置条件校验,从而实现车载ecu软件刷新的高效、快捷和准确进行。
49.本技术还提供一种车载ecu的软件刷新装置,包括:存储器,用于存储可由处理器执行的指令;以及处理器,用于执行所述指令以实现如前所述的方法。
50.图3示出了根据本技术一实施例示出的车载ecu的软件刷新装置的系统实施环境示意图。车载ecu的软件刷新装置300可包括内部通信总线301、处理器(processor)302、只读存储器(rom)303、随机存取存储器(ram)304、以及通信端口305。车载ecu的软件刷新装置300通过通信端口连接网络,并可与其他模块连接。内部通信总线301可以实现车载ecu的软件刷新装置300组件间的数据通信。处理器302可以进行判断和发出提示。在一些实施例中,处理器302可以由一个或多个处理器组成。通信端口305可以实现从网络发送和接受信息及数据。车载ecu的软件刷新装置300还可以包括不同形式的程序储存单元以及数据储存单元,例如只读存储器(rom)303和随机存取存储器(ram)304,能够存储计算机处理和/或通信使用的各种数据文件,以及处理器302所执行的可能的程序指令。处理器执行这些指令以实现方法的主要部分。处理器处理的结果可通过通信端口传给用户设备,在用户界面,例如计算机设备的显示界面上呈现。
51.上述的车载ecu的软件刷新装置300可以实施为计算机程序,保存在存储器中,并可记载到处理器302中执行,以实施本技术的车载ecu的软件刷新方法。
52.本技术还提供了一种存储有计算机程序代码的计算机可读介质,所述计算机程序代码在由处理器执行时实现如上所述的车载ecu的软件刷新方法。
53.本技术的一些方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。处理器可以是一个或多个专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理器件(dapd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、处理器、控制器、微控制器、微处理器或者其组合。此外,本技术的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。例
如,计算机可读介质可包括,但不限于,磁性存储设备(例如,硬盘、软盘、磁带
……
)、光盘(例如,压缩盘cd、数字多功能盘dvd
……
)、智能卡以及闪存设备(例如,卡、棒、键驱动器
……
)。
54.计算机可读介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等等、或合适的组合形式。计算机可读介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机可读介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、射频信号、或类似介质、或任何上述介质的组合。
55.同理,应当注意的是,为了简化本技术披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本技术实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本技术对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
56.虽然本技术已参照当前的具体实施例来描述,但是本技术领域中的普通技术人员应当认识到,以上的实施例仅是用来说明本技术,在没有脱离本技术精神的情况下还可作出各种等效的变化或替换,因此,只要在本技术的实质精神范围内对上述实施例的变化、变型都将落在本技术的权利要求书的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献