CN104391714A - 一种车辆的软件更新方法和装置 - Google Patents

一种车辆的软件更新方法和装置 Download PDF

Info

Publication number
CN104391714A
CN104391714A CN201410604602.8A CN201410604602A CN104391714A CN 104391714 A CN104391714 A CN 104391714A CN 201410604602 A CN201410604602 A CN 201410604602A CN 104391714 A CN104391714 A CN 104391714A
Authority
CN
China
Prior art keywords
boot loader
ecu
application program
vehicle
date
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
Application number
CN201410604602.8A
Other languages
English (en)
Inventor
蔡交明
罗晓
王瑛
陈立冲
王金磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chery New Energy Automobile Technology Co Ltd
Original Assignee
Chery Automobile Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chery Automobile Co Ltd filed Critical Chery Automobile Co Ltd
Priority to CN201410604602.8A priority Critical patent/CN104391714A/zh
Publication of CN104391714A publication Critical patent/CN104391714A/zh
Pending legal-status Critical Current

Links

Abstract

本发明公开了一种车辆的软件更新方法和装置,属于电子技术领域。该方法包括:判断车辆的电子控制单元ECU中的启动加载程序是否需要更新;如果需要更新,通过车辆的控制器局域网CAN总线从上位机中获取最新的启动加载程序,ECU中的启动加载程序包括第一启动加载程序和第二启动加载程序,且第一启动加载程序和第二启动加载程序相同;设置第一启动加载程序处于工作状态,将第二启动加载程序更新为最新的启动加载程序;在第二启动加载程序更新完成时,设置第二启动加载程序处于工作状态,将第一启动加载程序更新为最新的启动加载程序。该装置包括:第一判断模块,第一获取模块,第一更新模块和第二更新模块。本发明提高了更新成功率。

Description

一种车辆的软件更新方法和装置
技术领域
本发明涉及电子技术领域,特别涉及一种车辆的软件更新方法和装置。
背景技术
随着电子技术的发展,现在车辆的ECU(Electronic Control Unit,电子控制单元)中的软件越来越多,例如,ECU中的软件包括启动加载程序,为了给用户带来更好的用户体验,车辆需要每隔一段时间对ECU中的软件进行更新,以便使ECU中的软件更加完善。
现有技术中车辆的软件更新方法可以为:在车辆的ECU上设置一个串行通信端口,通过串行通信端口将ECU和上位机进行连接;ECU通过串行通信端口接收上位机发送的最新的启动加载程序,并将ECU中的启动加载程序更新为最新的启动加载程序。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
需要在ECU上设置串行通信端口,增加了硬件设计的复杂性;并且,串行通信端口的通信距离太短,抗干扰能力太差,在车辆复杂的电磁环境下很容易导致更新失败。
发明内容
为了使解决现有技术的问题,本发明提供了一车辆的软件更新方法和装置。技术方案如下:
一方面,本发明提供了一种车辆的软件更新方法,所述方法包括:
判断车辆的电子控制单元ECU中的启动加载程序是否需要更新;
如果需要更新,通过所述车辆的控制器局域网CAN总线从上位机中获取最新的启动加载程序,所述ECU中的启动加载程序包括第一启动加载程序和第二启动加载程序,且所述第一启动加载程序和第二启动加载程序相同;
设置所述第一启动加载程序处于工作状态,将所述第二启动加载程序更新为所述最新的启动加载程序;
在所述第二启动加载程序更新完成时,设置所述第二启动加载程序处于工作状态,将所述第一启动加载程序更新为所述最新的启动加载程序。
优选的,所述判断车辆的电子控制单元ECU中的启动加载程序是否需要更新,包括:
判断指定存储单元中是否存在启动加载程序的更新标识;
如果存在,则确定所述车辆的电子控制单元ECU中的启动加载程序需要更新;
如果不存在,则确定所述车辆的电子控制单元ECU中的启动加载程序不需要更新。
优选的,所述方法还包括:
通过所述车辆的CAN总线接收所述上位机发送的更新命令,所述更新命令携带所述启动加载程序的程序标识;
为所述启动加载程序分配更新标识;
将所述启动加载程序的更新标识存储在指定存储单元中。
优选的,所述方法还包括:
判断所述车辆的ECU中的应用程序是否需要更新;
如果需要更新,通过所述车辆的CAN总线从所述上位机中获取最新的应用程序;
将所述ECU中的应用程序更新为所述最新的应用程序。
优选的,所述判断所述车辆的ECU中的应用程序是否需要更新,包括:
获取所述车辆的ECU中应用程序的存储地址;
判断所述存储地址对应的存储空间中是否存在完整的应用程序;
如果所述存储地址对应的存储空间中不存在完整的应用程序,则确定所述车辆的ECU中的应用程序需要更新;
如果所述存储地址对应的存储空间中存在完整的应用程序,则确定所述车辆的ECU中的应用程序不需要更新。
另一方面,本发明提供了一种车辆的软件更新装置,所述装置包括:
第一判断模块,用于判断车辆的电子控制单元ECU中的启动加载程序是否需要更新;
第一获取模块,用于如果需要更新,通过所述车辆的控制器局域网CAN总线从上位机中获取最新的启动加载程序,所述ECU中的启动加载程序包括第一启动加载程序和第二启动加载程序,且所述第一启动加载程序和第二启动加载程序相同;
第一更新模块,用于设置所述第一启动加载程序处于工作状态,将所述第二启动加载程序更新为所述最新的启动加载程序;
第二更新模块,用于在所述第二启动加载程序更新完成时,设置所述第二启动加载程序处于工作状态,将所述第一启动加载程序更新为所述最新的启动加载程序。
优选的,所述第一判断模块,包括:
第一判断单元,用于判断指定存储单元中是否存在启动加载程序的更新标识;
第一确定单元,用于如果存在,则确定所述车辆的电子控制单元ECU中的启动加载程序需要更新;
第二确定单元,用于如果不存在,则确定所述车辆的电子控制单元ECU中的启动加载程序不需要更新。
优选的,所述装置还包括:
接收模块,用于通过所述车辆的CAN总线接收所述上位机发送的更新命令,所述更新命令携带所述启动加载程序的程序标识;
分配模块,用于为所述启动加载程序分配更新标识;
存储模块,用于将所述启动加载程序的更新标识存储在指定存储单元中。
优选的,所述装置还包括:
第二判断模块,用于判断所述车辆的ECU中的应用程序是否需要更新;
第二获取模块,用于如果需要更新,通过所述车辆的CAN总线从所述上位机中获取最新的应用程序;
第三更新模块,用于将所述ECU中的应用程序更新为所述最新的应用程序。
优选的,所述第二判断模块,包括:
获取单元,用于获取所述车辆的ECU中应用程序的存储地址;
第二判断单元,用于判断所述存储地址对应的存储空间中是否存在完整的应用程序;
第三确定单元,用于如果所述存储地址对应的存储空间中不存在完整的应用程序,则确定所述车辆的ECU中的应用程序需要更新;
第四确定单元,用于如果所述存储地址对应的存储空间中存在完整的应用程序,则确定所述车辆的ECU中的应用程序不需要更新。
在本发明中,通过车辆的CAN总线从上位机中获取最新的启动加载程序,从而不需要在ECU上设置串行通信端口,减少了硬件设计的复杂性;并且,CAN总线通信距离长,抗干扰能力强,从而提高了车辆软件的更新成功率;并且,ECU中的启动加载程序包括第一启动加载程序和第二启动加载程序,在更新ECU中的启动加载程序时,设置第一启动加载程序处于工作状态,更新第二启动加载程序;在第二启动程序更新完成时,设置第二启动加载程序处于工作状态,更新第一启动加载程序,从而避免了在更新启动加载程序断电无法运行启动加载程序的问题。
附图说明
图1是本发明实施例1提供的一种车辆的软件更新方法流程图;
图2是本发明实施例2提供的一种车辆的软件更新方法流程图;
图3是本发明实施例3提供的一种车辆的软件更新装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
本发明实施例提供了一种车辆的软件更新方法,该方法的执行主体可以为ECU,参见图1,其中,该方法包括:
步骤101:判断车辆的电子控制单元ECU中的启动加载程序是否需要更新;
步骤102:如果需要更新,通过车辆的控制器局域网CAN总线从上位机中获取最新的启动加载程序,ECU中的启动加载程序包括第一启动加载程序和第二启动加载程序,且第一启动加载程序和第二启动加载程序相同;
步骤103:设置第一启动加载程序处于工作状态,将第二启动加载程序更新为最新的启动加载程序;
步骤104:在第二启动加载程序更新完成时,设置第二启动加载程序处于工作状态,将第一启动加载程序更新为最新的启动加载程序。
优选的,判断车辆的电子控制单元ECU中的启动加载程序是否需要更新,包括:
判断指定存储单元中是否存在启动加载程序的更新标识;
如果存在,则确定车辆的电子控制单元ECU中的启动加载程序需要更新;
如果不存在,则确定车辆的电子控制单元ECU中的启动加载程序不需要更新。
优选的,该方法还包括:
通过车辆的CAN总线接收上位机发送的更新命令,更新命令携带启动加载程序的程序标识;
为启动加载程序分配更新标识;
将启动加载程序的更新标识存储在指定存储单元中。
优选的,该方法还包括:
判断车辆的ECU中的应用程序是否需要更新;
如果需要更新,通过车辆的CAN总线从上位机中获取最新的应用程序;
将ECU中的应用程序更新为最新的应用程序。
优选的,判断车辆的ECU中的应用程序是否需要更新,包括:
获取车辆的ECU中应用程序的存储地址;
判断存储地址对应的存储空间中是否存在完整的应用程序;
如果存储地址对应的存储空间中不存在完整的应用程序,则确定车辆的ECU中的应用程序需要更新;
如果存储地址对应的存储空间中存在完整的应用程序,则确定车辆的ECU中的应用程序不需要更新。
在本发明中,通过车辆的CAN总线从上位机中获取最新的启动加载程序,从而不需要在ECU上设置串行通信端口,减少了硬件设计的复杂性;并且,CAN总线通信距离长,抗干扰能力强,从而提高了车辆软件的更新成功率;并且,ECU中的启动加载程序包括第一启动加载程序和第二启动加载程序,在更新ECU中的启动加载程序时,设置第一启动加载程序处于工作状态,更新第二启动加载程序;在第二启动程序更新完成时,设置第二启动加载程序处于工作状态,更新第一启动加载程序,从而避免了在更新启动加载程序断电无法运行启动加载程序的问题。
实施例2
本发明实施例提供了一种车辆的软件更新方法,该方法的执行主体可以为ECU,其中,车辆的软件包括启动加载程序和应用程序。并且,启动加载程序和应用程序存储在车辆的ECU中。当车辆的ECU中的启动加载程序需要更新时,在指定存储单元中存储启动加载程序的更新标识。参见图2,其中,该方法包括:
步骤201:判断指定存储单元中是否存在启动加载程序的更新标识,如果存在,执行步骤202;如果不存在,结束;
当车辆的启动加载程序需要更新时,上位机通过车辆的CAN(ControllerArea Network,控制器局域网)总线发送更新命令给车辆的ECU,该更新命令携带启动加载程序的程序标识;ECU通过CAN总线接收上位机发送的更新命令;根据该更新命令为启动加载程序分配更新标识;将启动加载程序的更新标识存储在指定存储单元中。
启动加载程序的程序标识可以为启动加载程序的名称等;指定存储单元可以为ECU的Flash(闪存)单元等。
在步骤201中判断指定存储单元中是否存在启动加载程序的更新标识;如果存在,执行步骤202;如果不存在,则确定车辆的ECU中的启动加载程序不需要更新,结束。
需要说明的是,在本步骤之前,初始化车辆的各个模块,如CAN总线等。
步骤202:如果存在,则确定车辆的ECU中的启动加载程序需要更新;
如果指定存储单元中存在启动加载程序的程序标识,则上位机已经发过更新命令给ECU,也即确定车辆的ECU中的启动加载程序需要更新。
步骤203:通过车辆的CAN总线从上位机中获取最新的启动加载程序,ECU中的启动加载程序包括第一启动加载程序和第二启动加载程序,且第一启动加载程序和第二启动加载程序相同;
其中,第一启动加载程序和第二启动加载程序相同,但第一启动加载程序和第二启动加载程序的存储地址不同,从而实现了启动加载程序的备份,避免了启动加载程序运行出错时,ECU无法运行的问题。并且,有效的避免了启动加载程序更新失败时导致打开ECU重新写入启动加载程序的问题。
其中,通过车辆的CAN总线从上位机中获取最新的启动加载程序可以通过以下步骤(1)至(3)实现,包括:
(1):ECU通过车辆的CAN总线发送第一更新请求给上位机,该第一更新请求携带启动加载程序的程序标识;
具体地,如果确定出ECU中的启动加载程序需要更新,获取启动加载程序的程序标识,将启动加载程序的程序标识添加到第一更新请求中,并通过CAN总线发送第一更新请求给上位机,以请求获取最新的启动加载程序。
(2):上位机接收ECU通过车辆的CAN总线发送的第一更新请求,根据启动加载程序的程序标识获取最新的启动加载程序,并通过车辆的CAN总线发送最新的启动加载程序给ECU;
具体地,上位机接收ECU通过CAN总线发送的第一更新请求,从第一更新请求中获取启动加载程序的程序标识,根据启动加载程序的程序标识,从程序标识和最新的程序中获取最新的启动加载程序,并通过CAN总线发送最新的启动加载程序给ECU。
需要说明的是,上位机中存储有一个程序列表,该程序列表中存储有程序标识和程序的对应关系,当上位机接收到最新的启动加载程序时,根据启动加载程序的程序标识,从程序列表中获取该启动加载程序的程序标识对应的启动加载程序,并将该获取的启动加载程序替换为最新的启动加载程序,从而实现程序列表中存储的启动加载程序为最新的启动加载程序。
(3):ECU接收上位机通过CAN总线发送的最新的启动加载程序。
步骤204:设置第一启动加载程序处于工作状态,将第二启动加载程序更新为最新的启动加载程序;
步骤204具体可以通过以下步骤(1)至(3)实现,包括:
(1):ECU设置第一启动加载程序处于工作状态;
ECU设置启动加载程序的工作标识位为1,也即设置第一启动加载程序处于工作状态。
进一步地,当ECU中的引导程序运行时,读取启动加载程序的工作标识位的值,根据启动加载程序的工作标识位的值加载启动加载程序。也即启动加载程序的工作标识位为1,则获取第一启动加载程序的存储地址,并加载第一启动加载程序的存储地址对应的存储空间中的启动加载程序。
需要说明的是,引导程序在ECU出厂时写入引导区,由于引导区存储地址固定,所以无需对引导程序进行更新。
(2):根据第二启动加载程序的程序标识获取第二启动加载程序的存储地址;
在将第二启动加载程序写入车辆的ECU时,在车辆的ECU中为该第二启动加载程序分配一个存储空间,获取该存储空间的存储地址,将第二启动加载程序的程序标识和第二启动加载程序的存储地址存储在程序标识和存储地址的对应关系中。
相应的,步骤(2)可以为:根据第二启动加载程序的程序标识,从程序标识和存储地址的对应关系中获取第二启动加载程序的存储地址。
(3):将第二启动加载程序的存储地址对应的存储空间中的启动加载程序删除,并将最新的启动加载程序写入第二启动加载程序的存储地址对应的存储空间中。
需要说明的是,由于ECU的存储空间很多,而启动加载程序本身占用存储空间很少,因此设置ECU中包括两个启动加载程序对ECU的存储空间的开销可以忽略。
步骤205:在第二启动加载程序更新完成时,设置第二启动加载程序处于工作状态,将第一启动加载程序更新为最新的启动加载程序;
步骤205具体可以通过以下步骤(1)至(3)实现,包括:
(1):在第二启动加载程序更新完成时,ECU设置第二启动加载程序处于工作状态;
在第二启动加载程序更新完成时,ECU设置启动加载程序的工作标识位为2,也即设置第二启动加载程序处于工作状态。
进一步地,当ECU中的引导程序运行时,读取启动加载程序的工作标识位的值,根据启动加载程序的工作标识位的值加载启动加载程序。也即启动加载程序的工作标识位为2,则获取第二启动加载程序的存储地址,并加载第二启动加载程序的存储地址对应的存储空间中的启动加载程序。
(2):根据第一启动加载程序的程序标识获取第一启动加载程序的存储地址;
在将第一启动加载程序写入车辆的ECU时,在车辆的ECU中为该第一启动加载程序分配一个存储空间,获取该存储空间的存储地址,将第一启动加载程序的程序标识和第一启动加载程序的存储地址存储在程序标识和存储地址的对应关系中。
相应的,步骤(2)可以为:根据第一启动加载程序的程序标识,从程序标识和存储地址的对应关系中获取第一启动加载程序的存储地址。
(3):将第一启动加载程序的存储地址对应的存储空间中的启动加载程序删除,并将最新的启动加载程序写入第一启动加载程序的存储地址对应的存储空间中。
进一步地,当第一启动加载程序和第二启动加载程序都更新完成时,重新启动第一启动加载程序和/或第二启动加载程序。
步骤206:判断车辆的ECU中的应用程序是否需要更新,如果需要更新,执行步骤207;如果不需要更新,结束;
其中,步骤206可以通过以下步骤(1)至(4)实现,包括:
(1):获取车辆的ECU中应用程序的存储地址;
在将应用程序写入车辆的ECU时,在车辆的ECU中为该应用程序分配一个存储空间,获取该存储空间的存储地址,将应用程序的程序标识和应用程序的存储地址存储在程序标识和存储地址的对应关系中。
相应的,步骤(1)可以为:根据车辆的ECU中应用程序的程序标识,从程序标识和存储地址的对应关系中获取应用程序的存储地址。
(2):判断存储地址对应的存储空间中是否存在完整的应用程序,如果不存在,执行步骤(3),如果存在,执行步骤(4);
具体地,判断存储地址对应的存储空间中是否存在应用程序,如果不存在应用程序,执行步骤(3);如果存在应用程序,判断存在的应用程序是否为完整的应用程序,如果是完整的应用程序,执行步骤(4);如果存在的应用程序不是完整的应用程序执行步骤(3)。
判断存在的应用程序是否为完整的应用程序的步骤可以为:判断是否存在应用程序的完整性标识;如果存在,则确定存在的应用程序是完整的应用程序;如果不存在,则确定存在的应用程序不是完整的应用程序。
(3):如果存储地址对应的存储空间中不存在完整的应用程序,则确定车辆的ECU中的应用程序需要更新;
具体地,如果存储地址对应的存储空间中不存在应用程序,或者存在应用程序但不是完整的应用程序,则确定车辆的ECU中的应用程序需要更新。
(4):如果存储地址对应的存储空间中存在完整的应用程序,则确定车辆的ECU中的应用程序不需要更新。
具体地,如果存储地址对应的存储空间中存在应用程序且该应用程序是完整的应用程序,则确定车辆的ECU中的应用程序不需要更新。
步骤207:如果需要更新,通过车辆的CAN总线从上位机中获取最新的应用程序;
步骤207可以通过以下步骤(1)至(3)实现,包括:
(1):ECU通过车辆的CAN总线发送第二更新请求给上位机,该第二更新请求携带应用程序的程序标识;
具体地,如果确定出ECU中的应用程序需要更新时,获取应用程序的程序标识,将应用程序的程序标识添加到第二更新请求中,并通过CAN总线发送第二更新请求给上位机。
应用程序的程序标识可以为应用程序的名称等。
(2):上位机接收ECU通过CAN总线发送的第二更新请求,根据应用程序的程序标识获取最新的应用程序,并通过CAN总线发送最新的应用程序给ECU;
具体地,上位机接收ECU通过CAN总线发送的第二更新请求,从第二更新请求中获取应用程序的程序标识,根据应用程序的程序标识,从程序标识和最新的程序中获取最新的应用程序,并通过CAN总线发送最新的应用程序给ECU。
需要说明的是,上位机中存储有一个程序列表,该程序列表中存储有程序标识和程序的对应关系,当上位机接收到最新的应用程序时,根据应用程序的程序标识,从程序列表中获取该应用程序的程序标识对应的应用程序程序,并将该获取的应用程序替换为最新的应用程序,从而实现程序列表中存储的应用程序为最新的应用程序。
(3):ECU接收上位机发送的最新的应用程序。
步骤208:将ECU中的应用程序更新为最新的应用程序。
根据应用程序的程序标识,从程序标识和存储地址的对应关系中获取应用程序的存储地址;将应用程序的存储地址对应的存储空间中的应用程序删除,并将最新的应用程序写入应用程序的存储地址对应的存储空间中。
进一步地,当应用程序更新完成时,重新启动应用程序。并且,设置应用程序的完整性标识。
在本发明中,通过车辆的CAN总线从上位机中获取最新的启动加载程序,从而不需要在ECU上设置串行通信端口,减少了硬件设计的复杂性;并且,CAN总线通信距离长,抗干扰能力强,从而提高了车辆软件的更新成功率;并且,ECU中的启动加载程序包括第一启动加载程序和第二启动加载程序,在更新ECU中的启动加载程序时,设置第一启动加载程序处于工作状态,更新第二启动加载程序;在第二启动程序更新完成时,设置第二启动加载程序处于工作状态,更新第一启动加载程序,从而避免了在更新启动加载程序断电无法运行启动加载程序的问题。
实施例3
本发明实施例提供了一种车辆的软件更新装置,参见图3,其中,该装置包括:
第一判断模块301,用于判断车辆的电子控制单元ECU中的启动加载程序是否需要更新;
第一获取模块302,用于如果需要更新,通过车辆的控制器局域网CAN总线从上位机中获取最新的启动加载程序,ECU中的启动加载程序包括第一启动加载程序和第二启动加载程序,且第一启动加载程序和第二启动加载程序相同;
第一更新模块303,用于设置第一启动加载程序处于工作状态,将第二启动加载程序更新为最新的启动加载程序;
第二更新模块304,用于在第二启动加载程序更新完成时,设置第二启动加载程序处于工作状态,将第一启动加载程序更新为最新的启动加载程序。
优选的,第一判断模块301,包括:
第一判断单元,用于判断指定存储单元中是否存在启动加载程序的更新标识;
第一确定单元,用于如果存在,则确定车辆的电子控制单元ECU中的启动加载程序需要更新;
第二确定单元,用于如果不存在,则确定车辆的电子控制单元ECU中的启动加载程序不需要更新。
优选的,该装置还包括:
接收模块,用于通过车辆的CAN总线接收上位机发送的更新命令,更新命令携带启动加载程序的程序标识;
分配模块,用于为启动加载程序分配更新标识;
存储模块,用于将启动加载程序的更新标识存储在指定存储单元中。
优选的,该装置还包括:
第二判断模块,用于判断车辆的ECU中的应用程序是否需要更新;
第二获取模块,用于如果需要更新,通过车辆的CAN总线从上位机中获取最新的应用程序;
第三更新模块,用于将ECU中的应用程序更新为最新的应用程序。
优选的,第二判断模块,包括:
获取单元,用于获取车辆的ECU中应用程序的存储地址;
第二判断单元,用于判断存储地址对应的存储空间中是否存在完整的应用程序;
第三确定单元,用于如果存储地址对应的存储空间中不存在完整的应用程序,则确定车辆的ECU中的应用程序需要更新;
第四确定单元,用于如果存储地址对应的存储空间中存在完整的应用程序,则确定车辆的ECU中的应用程序不需要更新。
在本发明中,通过车辆的CAN总线从上位机中获取最新的启动加载程序,从而不需要在ECU上设置串行通信端口,减少了硬件设计的复杂性;并且,CAN总线通信距离长,抗干扰能力强,从而提高了车辆软件的更新成功率;并且,ECU中的启动加载程序包括第一启动加载程序和第二启动加载程序,在更新ECU中的启动加载程序时,设置第一启动加载程序处于工作状态,更新第二启动加载程序;在第二启动程序更新完成时,设置第二启动加载程序处于工作状态,更新第一启动加载程序,从而避免了在更新启动加载程序断电无法运行启动加载程序的问题。
需要说明的是:上述实施例提供的车辆的软件更新装置在车辆的软件更新时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的车辆的软件更新装置与车辆的软件更新方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种车辆的软件更新方法,其特征在于,所述方法包括:
判断车辆的电子控制单元ECU中的启动加载程序是否需要更新;
如果需要更新,通过所述车辆的控制器局域网CAN总线从上位机中获取最新的启动加载程序,所述ECU中的启动加载程序包括第一启动加载程序和第二启动加载程序,且所述第一启动加载程序和第二启动加载程序相同;
设置所述第一启动加载程序处于工作状态,将所述第二启动加载程序更新为所述最新的启动加载程序;
在所述第二启动加载程序更新完成时,设置所述第二启动加载程序处于工作状态,将所述第一启动加载程序更新为所述最新的启动加载程序。
2.如权利要求1所述的方法,其特征在于,所述判断车辆的电子控制单元ECU中的启动加载程序是否需要更新,包括:
判断指定存储单元中是否存在启动加载程序的更新标识;
如果存在,则确定所述车辆的电子控制单元ECU中的启动加载程序需要更新;
如果不存在,则确定所述车辆的电子控制单元ECU中的启动加载程序不需要更新。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
通过所述车辆的CAN总线接收所述上位机发送的更新命令,所述更新命令携带所述启动加载程序的程序标识;
为所述启动加载程序分配更新标识;
将所述启动加载程序的更新标识存储在指定存储单元中。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
判断所述车辆的ECU中的应用程序是否需要更新;
如果需要更新,通过所述车辆的CAN总线从所述上位机中获取最新的应用程序;
将所述ECU中的应用程序更新为所述最新的应用程序。
5.如权利要求4所述的方法,其特征在于,所述判断所述车辆的ECU中的应用程序是否需要更新,包括:
获取所述车辆的ECU中应用程序的存储地址;
判断所述存储地址对应的存储空间中是否存在完整的应用程序;
如果所述存储地址对应的存储空间中不存在完整的应用程序,则确定所述车辆的ECU中的应用程序需要更新;
如果所述存储地址对应的存储空间中存在完整的应用程序,则确定所述车辆的ECU中的应用程序不需要更新。
6.一种车辆的软件更新装置,其特征在于,所述装置包括:
第一判断模块,用于判断车辆的电子控制单元ECU中的启动加载程序是否需要更新;
第一获取模块,用于如果需要更新,通过所述车辆的控制器局域网CAN总线从上位机中获取最新的启动加载程序,所述ECU中的启动加载程序包括第一启动加载程序和第二启动加载程序,且所述第一启动加载程序和第二启动加载程序相同;
第一更新模块,用于设置所述第一启动加载程序处于工作状态,将所述第二启动加载程序更新为所述最新的启动加载程序;
第二更新模块,用于在所述第二启动加载程序更新完成时,设置所述第二启动加载程序处于工作状态,将所述第一启动加载程序更新为所述最新的启动加载程序。
7.如权利要求6所述的装置,其特征在于,所述第一判断模块,包括:
第一判断单元,用于判断指定存储单元中是否存在启动加载程序的更新标识;
第一确定单元,用于如果存在,则确定所述车辆的电子控制单元ECU中的启动加载程序需要更新;
第二确定单元,用于如果不存在,则确定所述车辆的电子控制单元ECU中的启动加载程序不需要更新。
8.如权利要求6所述的装置,其特征在于,所述装置还包括:
接收模块,用于通过所述车辆的CAN总线接收所述上位机发送的更新命令,所述更新命令携带所述启动加载程序的程序标识;
分配模块,用于为所述启动加载程序分配更新标识;
存储模块,用于将所述启动加载程序的更新标识存储在指定存储单元中。
9.如权利要求6所述的装置,其特征在于,所述装置还包括:
第二判断模块,用于判断所述车辆的ECU中的应用程序是否需要更新;
第二获取模块,用于如果需要更新,通过所述车辆的CAN总线从所述上位机中获取最新的应用程序;
第三更新模块,用于将所述ECU中的应用程序更新为所述最新的应用程序。
10.如权利要求9所述的装置,其特征在于,所述第二判断模块,包括:
获取单元,用于获取所述车辆的ECU中应用程序的存储地址;
第二判断单元,用于判断所述存储地址对应的存储空间中是否存在完整的应用程序;
第三确定单元,用于如果所述存储地址对应的存储空间中不存在完整的应用程序,则确定所述车辆的ECU中的应用程序需要更新;
第四确定单元,用于如果所述存储地址对应的存储空间中存在完整的应用程序,则确定所述车辆的ECU中的应用程序不需要更新。
CN201410604602.8A 2014-10-30 2014-10-30 一种车辆的软件更新方法和装置 Pending CN104391714A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410604602.8A CN104391714A (zh) 2014-10-30 2014-10-30 一种车辆的软件更新方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410604602.8A CN104391714A (zh) 2014-10-30 2014-10-30 一种车辆的软件更新方法和装置

Publications (1)

Publication Number Publication Date
CN104391714A true CN104391714A (zh) 2015-03-04

Family

ID=52609622

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410604602.8A Pending CN104391714A (zh) 2014-10-30 2014-10-30 一种车辆的软件更新方法和装置

Country Status (1)

Country Link
CN (1) CN104391714A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106020870A (zh) * 2016-05-12 2016-10-12 浙江中科领航汽车电子有限公司 一种全液晶仪表快速升级固件的系统及方法
CN106250196A (zh) * 2016-08-12 2016-12-21 上海金脉电子科技有限公司 通过can通讯更新车载启动加载程序的方法
CN106598597A (zh) * 2016-12-14 2017-04-26 普华基础软件股份有限公司 一种电控单元应用软件刷新方法
CN106886424A (zh) * 2015-12-15 2017-06-23 德尔福电子(苏州)有限公司 一种根据智能设备升级汽车软件的装置及方法
CN107438832A (zh) * 2017-05-31 2017-12-05 深圳市爱夫卡科技股份有限公司 一种数据刷新方法、装置及计算机可读存储介质
CN110727450A (zh) * 2019-10-11 2020-01-24 上海元城汽车技术有限公司 启动加载程序更新方法和装置
CN113360175A (zh) * 2021-08-11 2021-09-07 新石器慧通(北京)科技有限公司 车辆控制器的应用更新方法及车辆控制器
CN113631429A (zh) * 2018-10-16 2021-11-09 株式会社自动网络技术研究所 车载更新装置、更新处理程序及程序的更新方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050204123A1 (en) * 2004-03-09 2005-09-15 Chun-Liang Lee Boot swap method for multiple processor computer systems
CN102023876A (zh) * 2009-09-14 2011-04-20 漳州科能电器有限公司 一种可软件在线升级的嵌入式系统及在线升级方法
CN102110005A (zh) * 2011-02-28 2011-06-29 上海华为技术有限公司 软件升级方法、装置及系统
CN202773080U (zh) * 2012-07-31 2013-03-06 石家庄开发区天远科技有限公司 一种车载电控单元的远程升级系统
CN103116507A (zh) * 2012-12-14 2013-05-22 惠州市亿能电子有限公司 一种基于can的ecu程序下载方法
CN103699421A (zh) * 2014-01-08 2014-04-02 金三立视频科技(深圳)有限公司 嵌入式设备系统升级方法及其装置
CN103995712A (zh) * 2014-04-16 2014-08-20 潍柴动力股份有限公司 一种自动更新的bootloader装置及更新方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050204123A1 (en) * 2004-03-09 2005-09-15 Chun-Liang Lee Boot swap method for multiple processor computer systems
CN102023876A (zh) * 2009-09-14 2011-04-20 漳州科能电器有限公司 一种可软件在线升级的嵌入式系统及在线升级方法
CN102110005A (zh) * 2011-02-28 2011-06-29 上海华为技术有限公司 软件升级方法、装置及系统
CN202773080U (zh) * 2012-07-31 2013-03-06 石家庄开发区天远科技有限公司 一种车载电控单元的远程升级系统
CN103116507A (zh) * 2012-12-14 2013-05-22 惠州市亿能电子有限公司 一种基于can的ecu程序下载方法
CN103699421A (zh) * 2014-01-08 2014-04-02 金三立视频科技(深圳)有限公司 嵌入式设备系统升级方法及其装置
CN103995712A (zh) * 2014-04-16 2014-08-20 潍柴动力股份有限公司 一种自动更新的bootloader装置及更新方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
李铁军: "《柴油机电控技术实用教程第2版》", 31 March 2013, 机械工业出版社 *
陈洪霞: "汽车电控单元在线升级系统的设计与实现", 《万方学术》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106886424A (zh) * 2015-12-15 2017-06-23 德尔福电子(苏州)有限公司 一种根据智能设备升级汽车软件的装置及方法
CN106886424B (zh) * 2015-12-15 2021-08-27 安波福电子(苏州)有限公司 一种根据智能设备升级汽车软件的装置及方法
CN106020870A (zh) * 2016-05-12 2016-10-12 浙江中科领航汽车电子有限公司 一种全液晶仪表快速升级固件的系统及方法
CN106250196A (zh) * 2016-08-12 2016-12-21 上海金脉电子科技有限公司 通过can通讯更新车载启动加载程序的方法
CN106598597A (zh) * 2016-12-14 2017-04-26 普华基础软件股份有限公司 一种电控单元应用软件刷新方法
CN107438832A (zh) * 2017-05-31 2017-12-05 深圳市爱夫卡科技股份有限公司 一种数据刷新方法、装置及计算机可读存储介质
CN113631429A (zh) * 2018-10-16 2021-11-09 株式会社自动网络技术研究所 车载更新装置、更新处理程序及程序的更新方法
CN110727450A (zh) * 2019-10-11 2020-01-24 上海元城汽车技术有限公司 启动加载程序更新方法和装置
CN113360175A (zh) * 2021-08-11 2021-09-07 新石器慧通(北京)科技有限公司 车辆控制器的应用更新方法及车辆控制器

Similar Documents

Publication Publication Date Title
CN104391714A (zh) 一种车辆的软件更新方法和装置
CN100507773C (zh) 实现固化程序在线升级的方法和装置
CN103777983A (zh) 一种星载软件在轨维护及升级方法
CN106020861B (zh) 一种智能手表的fota升级方法及系统
CN100570558C (zh) 一种芯片固件升级方法
CN103324501B (zh) 无线传感器网络节点软件高效远程更新方法
CN107402776A (zh) 一种基于蓝牙4的手机无线升级stm32单片机控制器固件方法
CN103559054A (zh) 智能终端多操作系统的实现、删除方法和装置
CN103761125A (zh) 一种程序升级的应用系统和方法
CN102945173A (zh) 用户程序在线升级系统和升级方法
CN104102518A (zh) 一种双cpu系统及其程序升级方法
CN102799452B (zh) 系统软件升级方法和装置
CN101169729A (zh) 嵌入式系统及其更新应用程序的方法
CN110633091A (zh) 一种电子模块及其软件无线升级方法
CN102308280A (zh) 基本输入/输出系统bios配置数据管理方法及系统
US20170185311A1 (en) Data Processing Method and Smart Device
CN107566169A (zh) 一种基于openwrt的固件升级方法及路由器
WO2016033941A1 (zh) Boot在线升级装置及方法
CN101667133B (zh) 固件更新方法和使用该方法更新固件的芯片
CN103164232A (zh) 更新智能终端操作系统的方法、系统以及计算机
CN103010039A (zh) 一种电池管理系统引导加载方法
CN103392174B (zh) 基于闪存存储的系统、分区方法和装置
CN109582341A (zh) 一种机车信号车载系统设备的主机系统及其程序变更方法
CN105677422A (zh) 同时更新监控程序和应用程序及后续更新应用程序的方法
CN102567251B (zh) Bios的控制方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: CHERY NEW ENERGY AUTOMOBILE TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: SAIC CHERY AUTOMOBILE CO., LTD.

Effective date: 20150713

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150713

Address after: 241000 Yijiang, Anhui Province, Jin Hua Road, No. 226, South Road, No.

Applicant after: New-energy automobile Technology Co., Ltd. of Cherry

Address before: 241006 Wuhu economic and Technological Development Zone, Anhui, Changchun Road, No. 8, No.

Applicant before: Saic Chery Automobile Co., Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20150304