CN111722856A - 车载微控制器中固件的升级方法和装置 - Google Patents
车载微控制器中固件的升级方法和装置 Download PDFInfo
- Publication number
- CN111722856A CN111722856A CN201910208635.3A CN201910208635A CN111722856A CN 111722856 A CN111722856 A CN 111722856A CN 201910208635 A CN201910208635 A CN 201910208635A CN 111722856 A CN111722856 A CN 111722856A
- Authority
- CN
- China
- Prior art keywords
- firmware
- vehicle
- target
- upgrading
- microcontroller
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000006870 function Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供了一种车载微控制器中固件的升级方法和装置,其中,车载微控制器的存储器中存储有两个固件,两个固件存储于存储器的不同存储区。在该方法中,服务器获取最新发布的最新版固件升级文件,最新版固件升级文件包括:待升级固件的固件升级包和所属目标存储区,及固件升级包的版本号;服务器根据固件升级包的版本号及存储于目标存储区内的目标固件的版本号,确定出需要升级目标固件时,将最新版固件升级文件发送给车载微控制器,车载微控制器基于最新版固件升级文件中的固件升级包,升级目标固件。本申请的方案可以减少由于车载微控制器中固件升级失败,而导致车载微控制器不可用的情况,进而导致车载控制系统不可用的情况。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种车载微控制器中固件的升级方法和装置。
背景技术
在车载控制系统(如,车载导航、车载行车记录等车载控制系统)中包括很多车载微控制器,如,车身控制器、转向控制器和网关控制器等等。车载微控制器通过运行该车载微控制器的固件来实现相应的控制功能。
当车载微控制器的固件存在版本更新时,车载微控制器会控制对该固件进行版本升级。然而,在车载微控制器对固件升级的过程中,经常会出现固件升级失败的情况,而一旦车载微控制器的固件升级失败,就会导致该车载微控制器不可用,从而导致车载控制系统不可用,甚至影响到车主无法正常用车。
发明内容
有鉴于此,本申请提供了一种车载微控制器中固件的升级方法和装置,以减少由于车载微控制器中固件升级失败,而导致车载微控制器不可用的情况,进而减少由于固件升级失败而导致车载控制系统不可用的情况。
为实现上述目的,一方面,本申请提供了一种车载微控制器中固件的升级方法,应用于控制所述车载微控制器升级的服务器,其中,所述车载微控制器的存储器中存储有所述车载微控制器的两个固件,所述两个固件存储于所述存储器的不同存储区,且所述车载微控制器同一时刻仅运行所述两个固件中的一个固件,所述方法包括:
获取当前最新发布的最新版固件升级文件,所述最新版固件升级文件包括:待升级固件的固件升级包、固件升级包的版本号以及待升级固件所属的目标存储区,所述目标存储区为所述两个固件中的一个固件在所述存储器内的存储区,且,所述最新版固件升级文件中待升级固件所属的目标存储区与当前时刻之前最近一次发布的固件升级文件中待升级固件所属的存储区不同;
从所述车载微控制器获取存储于所述存储器的所述目标存储区内的目标固件的版本号;
根据所述最新版固件升级文件中固件升级包的版本号以及所述目标固件的版本号,判断所述目标固件是否需要升级;
当确定出需要升级所述目标固件时,将所述最新版固件升级文件发送给所述车载微控制器,以便所述车载微控制器基于所述最新版固件升级文件中的固件升级包,升级所述目标固件。
优选地,所述当确定出需要升级所述目标固件时,将所述最新版固件升级文件发送给所述车载微控制器,包括:
当确定出需要升级所述目标固件时,查询所述车载微控制器当前是否正在运行所述目标固件;
当所述车载微控制器当前正在运行所述目标固件时,则获取当前时刻之前最近一次针对所述目标存储区的固件发布的次新版固件升级文件;
将所述次新版固件升级版本发送给所述车载微控制器,以便所述车载微控制器将所述目标固件升级至所述次新版固件升级文件对应的版本;
在确定所述车载微控制器的所述目标固件升级至所述次新版固件升级文件对应的版本时,将所述最新版固件升级文件发送给所述车载微控制器。
优选地,还包括:
当所述车载微控制器当前未运行所述目标固件,则将所述最新版固件升级文件发送给所述车载微控制器。
优选地,在将所述最新版固件升级文件发送给所述车载微控制器之后,还包括:
检测所述车载微控制器对所述目标固件的升级是否成功;
当所述目标固件未升级成功,则向所述车载微控制器发送所述最新版固件升级文件,直至所述目标固件升级成功或者发送所述最新版固件升级文件的次数达到预设次数。
另一方面,本申请还提供了一种车载微控制器中固件的升级方法,应用于车载微控制器,所述车载微控制器的存储器中存储有所述车载微控制器的两个固件,所述两个固件存储于所述存储器的不同存储区,且所述车载微控制器同一时刻仅运行所述两个固件中的一个固件,所述方法包括:
接收服务器发送的最新版固件升级文件,所述最新版固件升级文件包括:待升级固件的固件升级包、固件升级包的版本号以及待升级固件所属的目标存储区,所述目标存储区为所述两个固件中的一个固件在所述存储器内的存储区;所述最新版固件升级文件为当前发布最新发布的固件升级文件,所述最新版固件升级文件中待升级固件所属的目标存储区与当前时刻之前最近一次发布的固件升级文件中待升级固件所属的存储区不同;
从所述两个固件中,确定存储区与所述目标存储区相同的目标固件;
基于所述最新版固件升级文件中的固件升级包,升级所述目标固件。
优选地,还包括:
当确定所述目标固件升级失败且所述目标固件为所述车载微控制器当前运行的固件时,则所述车载微控制器切换为运行所述两个固件中所述目标固件之外的另一固件。
另一方面,本申请还提供了一种车载微控制器中固件的升级装置,,应用于控制所述车载微控制器升级的服务器,其中,所述车载微控制器的存储器中存储有所述车载微控制器的两个固件,所述两个固件存储于所述存储器的不同存储区,且所述车载微控制器同一时刻仅运行所述两个固件中的一个固件,所述装置包括:
新版本获取单元,用于获取当前最新发布的最新版固件升级文件,所述最新版固件升级文件包括:待升级固件的固件升级包、固件升级包的版本号以及待升级固件所属的目标存储区,所述目标存储区为所述两个固件中的一个固件在所述存储器内的存储区,且,所述最新版固件升级文件中待升级固件所属的目标存储区与当前时刻之前最近一次发布的固件升级文件中待升级固件所属的存储区不同;
固件版本获取单元,用于从所述车载微控制器获取存储于所述存储器的所述目标存储区内的目标固件的版本号;
固件升级判断单元,用于根据所述最新版固件升级文件中固件升级包的版本号以及所述目标固件的版本号,判断所述目标固件是否需要升级;
新版本发送单元,用于当确定出需要升级所述目标固件时,将所述最新版固件升级文件发送给所述车载微控制器,以便所述车载微控制器基于所述最新版固件升级文件中的固件升级包,升级所述目标固件。
另一方面,本申请还提供了一种车载微控制器中固件的升级装置,应用于车载微控制器,所述车载微控制器的存储器中存储有所述车载微控制器的两个固件,所述两个固件存储于所述存储器的不同存储区,且所述车载微控制器同一时刻仅运行所述两个固件中的一个固件,所述装置包括:
新版本接收单元,用于接收服务器发送的最新版固件升级文件,所述最新版固件升级文件包括:待升级固件的固件升级包、固件升级包的版本号以及待升级固件所属的目标存储区,所述目标存储区为所述两个固件中的一个固件在所述存储器内的存储区;所述最新版固件升级文件为当前发布最新发布的固件升级文件,所述最新版固件升级文件中待升级固件所属的目标存储区与当前时刻之前最近一次发布的固件升级文件中待升级固件所属的存储区不同;
固件确定单元,用于从所述两个固件中,确定存储区与所述目标存储区相同的目标固件;
固件升级单元,用于基于所述最新版固件升级文件中的固件升级包,升级所述目标固件。
优选地,还包括:运行切换单元,用于当确定所述目标固件升级失败且所述目标固件为所述车载微控制器当前运行的固件时,则所述车载微控制器切换为运行所述两个固件中所述目标固件之外的另一固件。
由以上可知,在本申请实施例中,在车载微控制器具有两个固件,这两个固件存储于该车载微控制器的存储器内的不同存储区。而在发布固件的升级版本时,相邻两次发布的固件升级文件是针对该外部存储器的不同存储区内的不同固件的,即,交替发布车载微控制器的这两个固件的新版本文件,从而保证了服务器每次只能控制车载微控制器对其两个固件中的一个固件进行升级,进而可以避免车载微控制器中两个固件同时升级失败的情况;而且,由于车载微控制器每次仅仅运行一个固件,这样,一旦车载微控制器运行的固件升级失败,仍有一个固件可以保证车载微控制器的正常运行,从而有利于减少由于车载微控制器中固件升级失败,而导致车载微控制器不可用的情况,进而也减少了由于固件升级失败而导致车载控制系统不可用的情况。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1示出了本申请一种对车载微控制器中固件升级的升级系统的一种组成架构示意图;
图2示出了本申请一种车载微控制器中固件的升级方法一个实施例的流程示意图;
图3示出本申请一种车载微控制器中固件的升级方法又一个实施例的流程示意图;
图4示出了本申请一种车载微控制器中固件的升级方法又一个实施例的流程示意图;
图5示出了本申请一种车载微控制器中固件的升级装置一个实施例的组成结构示意图;
图6示出了本申请又一种车载微控制器中固件的升级装置一个实施例的组成结构示意图。
具体实施方式
本申请实施例的方案适用于对任意车载控制系统中的车载微控制器的固件进行升级。
为了提高车载微控制器中固件升级的可靠性,降低由于固件升级设备而导致的车载微控制器不可用,与现有的不同,在本申请实施例中为车载微控制器配置了两个固件。这两个固件设置于车载微控制器的存储器的不同存储区,如,假设车载微控制器具有用于实现该车载微控制器功能的第一固件和第二固件,且第一固件存储于车载微控制器的存储器的第一存储区,该第二固件存储于车载微控制器的第二存储区,该第一存储区与第二存储区不同。
其中,该车载微控制器根据车载控制系统的不同可以有不同类型,如,车载微控制器可以车身控制器或者转向控制器等等。
其中,车载微控制器的存储器可以是车载微控制器关联的外部存储器(或者称为位置存储器),也可以是车载微控制器包含的内部存储器。
为了便于理解本申请的方案,下面先对本申请实施例所适用的系统组成进行介绍。如图1,其示出了用于对车载微控制器中固件升级的升级系统的一种组成架构示意图。
在图1中,是以车载微控制器的固件设置于车载微控制器内的存储器(或者说内部存储区域)中为例说明。
由图1可以看出,在车载微控制器10内的存储器11中存储有两个固件,这两个固件均可以被车载微控制器独立执行,不同之处仅在于,这两个固件在存储器中的存储区域不同。如,一个固件在存储器的存储区域称为第一存储区,而另一个固件在存储器中的存储区域称为第二存储区,则第一存储区与第二存储区完全不同,不存在重叠。
为了便于描述,基于这两个固件在存储器的存储地址位的高低,将这两个固件中的一个称为高区固件,另一个称为低区固件。如图1所示,存储器11中包括高区固件12和低区固件13,其中,高区固件在该车载微控制器的存储器的存储区域属于较高地址段,而低区固件存储于该存储器的较低地址段。
在车载微控制器的存储器中还存储了引导装载程序(Boot loader)14,车载微控制器通过运行该引导装载程序来实现固件启动、两个固件之间的切换以及固件升级等等。
在本申请实施例中,同一时刻,该车载微控制器仅运行这两个固件中的一个固件。同时,当该车载微控制器当前运行的固件存在故障时,如固件由于升级失败而导致无法正常运行等,该车载控制器会将切换到另一个固件运行。
为了实现控制车载微控制器中固件的升级,在升级系统中还包括:升级平台15,该升级平台15包括:通过网络与该车载微控制器相连的至少一台服务器16。如,该服务器16可以为基于空中下载技术(Over the Air Technology,OTA)的服务器,例如俗称的OTA后台服务器。
该服务器16可以获取新发布的固件的最新版固件升级文件,并将最新版固件升级文件推送给车载微控制器,以使得车载微控制器对固件升级。
其中,服务器16中可以接收并存储用户发布的固件升级文件。为了降低服务器16的负担,可选的,该升级平台15还可以包括:用于存储固件对应的升级文件的存储服务器17。
其中,该存储服务器17就相当于俗称的整车厂配套系统,其用于升级文件等相关数据的存储与中转,并存储固件的版本信息以及固件的不同版本之间的先后关系等信息。
在本申请实施例中,为了提高固件升级的可靠性,在发布固件的升级文件时,每次仅仅这两个固件中的一个发布升级文件,且,相邻两次发布的升级文件是分别这对这两个固件的,从而保证交替发布这两个固件的升级文件。如,本地针对高区固件发布了新版本的升级文件,那么下一次会针对地区固件发布新版本的升级文件,而再下一次则会针对高区固件发布新版本的升级文件。
相应的,服务器16每次只能获取到处于不同存储区的两个固件中的一个固件所对应的升级文件,从而每次只能控制车载微控制器对两个固件中的一个升级,避免两个固件同时升级而出现两个固件均升级失败而导致两个固件均无法运行的情况。
结合以上共性,下面先从用于控制车载微控制器升级的服务器侧对本申请的方案进行描述。如,参见图2,其示出了本申请一种车载微控制器中固件的升级方法一个实施例的流程示意图,本实施例应用如上所提到的服务器,本实施例可以包括如下步骤:
S201,获取当前最新发布的最新版固件升级文件。
为了便于区分,将当前最新发布的固件的升级文件称为最新版固件升级文件。
其中,在服务器中存储有用户发布的升级文件的情况下,服务器可以从自身存储的升级文件中确定最新发布的固件升级文件;在升级平台的存储服务器中存储各个固件对应的升级文件的情况下,服务器可以从存储服务器获取最新发布的该固件升级文件。
其中,最新版固件升级文件包括:待升级固件的固件升级包、固件升级包的版本号以及待升级固件所属的目标存储区的标识信息。可以理解的是,待升级固件可能是车载微控制器的两个固件中的一个,而为了区分出该待升级固件为这两个固件中的哪一个固件,在该最新版固件升级文件中还包括待升级固件所属的目标存储区。该目标存储区用于表征车载微控制器的存储器中待升级的固件所处于的存储区,因此,目标存储区为车载微控制器的两个固件中的一个固件在存储器内的存储区。
需要说明的是,待升级固件所属的目标存储区可以通过该待升级固件所属的存储区的地址段标识,也可以是通过待升级固件所属存储区的其他标识来表示。如,待升级固件为高区固件,则待升级固件所属的目标存储区可以表示为高区,则后续可以确定高区对应的存储区为高区固件所在的存储区。
可以理解的是,由于车载微控制器中两个固件的新版本是交替发布的,因此,该最新版固件升级文件中待升级固件所属的目标存储区与当前时刻之前最近一次发布的固件升级文件中待升级固件所属的存储区不同。如,当前时刻之前最近一次发布的固件升级文件为针对低区固件的升级文件,则该固件升级文件中待升级固件所属的存储区为低区固件所对应的存储区为低地址段;那么,当前最新发布的该最新版固件升级文件必然是针对高区固件的升级文件,则该最新版固件升级文件中的目标存储区为高区固件所对应的高地址段。
S202,从该车载微控制器获取存储于存储器中该目标存储区内的目标固件的版本号。
可以理解的是,由于最新版固件升级文件中包含的目标存储区用于指示车载微控制器中待升级的固件,因此,基于该目标存储区的信息,可以确定车载微控制器中处于存储器的该目标存储区内的固件。为了便于区分,车载微控制器中当前待升级的固件,将处于车载微控制器的存储器内该目标存储区内的固件称为目标固件。
举例说明,假设最新版固件升级文件中包含了待升级固件所属的目标存储区为该待升级固件的存储区的区分标识,例如可以通过00标识高区,而采用01标识低区,假设目标存储区的标识为高区,则服务器可以请求车载微控制器反馈车载微控制器中存储于高地址段的高区固件的版本信息。
S203,根据最新版固件升级文件中固件升级包的版本号以及该目标固件的版本号,判断该目标固件是否需要升级。
其中,通过比较目标固件的版本号与最新版固件升级文件中固件升级包的版本号,可以判断该目标固件是否已经基于该最新固件升级包完成升级。
如,如果该目标固件的版本号与该最新版固件升级文件中固件升级包的版本号一致,则说明该车载微控制器已经基于该最新版固件升级文件完成了对该目标固件的升级,在该种情况,则不需要再对该目标固件升级。如果该目标固件的版本号与该固件升级包的版本号不一致,则确定需要对目标固件升级。
S204,当确定出需要升级该目标固件时,将该最新版固件升级文件发送给该车载微控制器,以便该车载微控制器基于该最新版固件升级文件中的固件升级包,升级该目标固件。
可选的,为了提高升级可靠性,在将最新版固件升级文件发送给车载微控制之后,该服务器还可以检测该车载微控制器对目标固件的升级是否成功。如,服务器可以检测指定时长内是否接收到车载微控制器发送的升级成功指示,如果接收到该升级成功指示,则确定车载微控制器升级成功。相应的,在服务器确定该目标固件未升级成功的情况下,继续向该车载微控制器发送该最新版固件升级文件,直至车载微控制器对该目标固件升级成功或者服务器向该车载微控制器发送该最新版固件升级文件的次数达到预设次数。
如,服务器可以设置推送最新版固件升级文件的预设次数为N,N为大于1的自然数,则假设服务器向该车载微控制器发送了该最新版固件升级文件之后,确定该车载微控制器未成功升级该目标固件,则服务器会检测向车载微控制器推送该最新版固件升级文件的次数是否到达预设次数N,如果尚未到达该预设次数N,则继续推送该最新升级固件;如果当前已经到达该预设次数N,则说明车载微控制器可能并不是由于最新版固件升级文件缺失等原因导致升级失败,在该种情况下,为了避免浪费数据传输资源,则可以不再向车载微控制器发送给最新版固件升级文件。
可见,本申请实施例中车载微控制器具有两个固件,这两个固件存储于该车载微控制器的存储器内的不同存储区。而在发布固件的升级版本时,相邻两次发布的固件升级文件是针对该外部存储器的不同存储区内的不同固件的,即,交替发布车载微控制器的这两个固件的新版本文件,从而保证了服务器每次只能控制车载微控制器对其两个固件中的一个固件进行升级,进而可以避免车载微控制器中两个固件同时升级失败的情况;而且,由于车载微控制器每次仅仅运行一个固件,这样,一旦车载微控制器运行的固件升级失败,仍有一个固件可以保证车载微控制器的正常运行,从而有利于减少由于车载微控制器中固件升级失败,而导致车载微控制器不可用的情况,进而也减少了由于固件升级失败而导致车载控制系统不可用的情况。
可以理解的是,由于车载微控制器中两个固件并不是同步升级,同时由于每个固件升级所存在的其他异常情况,可能会出现两个固件的版本差距较大,而导致这两个固件所能实现的功能差异性较大。如,高区固件可能已经升级到针对该高区固件发布的最新版本了,而低区固件仍处于针对低区固件发布的较低版本,这样,车载微控制器运行高区固件所实现的功能要比该车载微控制器运行低区固件所能实现的功能要多。而如果两个固件所能实现的功能的差异性较大,当由于一个固件升级异常而使得车载微控制器切换到运行另一个固件时,就会导致切换前后基于车载微控制器所实现的功能的差异性较大,从而可能引起用户的操作不适感。
为了解决以上问题,在本申请实施例还提供了对固件升级的另一个实施例,如,参见图3,其示出了本申请一种车载微控制器中固件的升级方法又一个实施例的流程示意图,本实施例应用如上所提到的服务器,本实施例可以包括如下步骤:
S301,获取当前最新发布的最新版固件升级文件。
其中,最新版固件升级文件包括:待升级固件的固件升级包、固件升级包的版本号以及待升级固件所属的目标存储区的标识信息。
其中,该目标存储区用于表征车载微控制器的存储器中待升级的固件所处于的存储区,可见,目标存储区为车载微控制器的两个固件中的某一个固件在存储器内的存储区。如,最新版固件升级文件为针对车载微控制器中高区固件开发出的升级版文件,则该最新版固件升级文件所属的目标存储区为高区固件对应的高位存储区。
S302,从该车载微控制器获取存储于存储器中该目标存储区内的目标固件的版本号。
其中,由于目标存储区为该最新版固件升级文件所属的存储区,可见,该目标固件在车载微控制器中的存储区与最新版固件升级文件所对应的目标存储区相同,因此,车载微控制器中处于目标存储区内的目标固件也就是车载微控制器中需要利用最新版固件升级文件升级的固件。
S303,根据最新版固件升级文件中固件升级包的版本号以及该目标固件的版本号,判断该目标固件是否需要升级。
以上步骤S301到S303可以参见前面实施例的相关介绍,在此不再赘述。
S304,当确定出需要升级该目标固件时,查询该车载微控制器当前是否正在运行该目标固件,如果是,则执行步骤S305;如果否,则执行步骤S308。
可以理解的是,由于目标固件在车载控制器的存储区与最新版固件升级文件所属的目标存储区相同,因此,该步骤S304实际上就是查询最新版固件升级文件所属的存储区是否与车载微控制器当前正运行的固件处于同一个存储区,如果是,则为了避免用户由于版本之间差距过大而导致的不适感,需要先执行步骤S305;否则,则可以直接执行步骤S308。
如,服务器可以请求车载微控制器反馈该车载微控制器当前运行的固件存储于哪个存储区的。相应的,服务器可以根据当前运行的固件在车载微控制器的存储器中存储区的位置,来分析当前运行的固件是否为存储于目标存储区的目标固件。
S305,当该车载微控制器当前正在运行该目标固件时,则获取当前时刻之前最近一次针对目标存储区内的固件发布的次新版固件升级文件。
其中,为了与最新版固件升级文件区分,将在该最新版固件升级文件之前最近一次发布且是针对该目标存储区内的固件发布的固件升级文件称为次新版固件升级文件。
可以理解的是,在固件升级文件发布之后,存储服务器或者服务器会存储不同时刻发布的固件升级文件的版本信息,该版本信息可以包括版本号以及固件升级文件所针对的固件所在的存储区的信息等,这样,根据版本信息,可以得到该次新版固件升级文件。
如,考虑到向服务器或者存储服务器发布的固件升级文件是交替针对这两个固件的,如,第一次发布了针对高区固件的版本号为1.0的固件升级文件1.0;第二次发布了针对低区固件的版本号为1.1的固件升级文件1.1;第三次发布了针对高区固件的版本号为1.2的固件升级文件1.2,假设最新版固件升级文件为固件升级文件1.2,则在固件升级文件1.2之前最近一次针对高区固件发布的次新版固件升级文件为固件升级文件1.1。
S306,将该次新版固件升级版本发送给该车载微控制器,以便该车载微控制器将该目标固件升级至该次新版固件升级文件对应的版本。
可选的,在将次新版固件升级版本发送给车载微控制器之后,同样可以检测该车载微控制器是否成功将目标固件升级为该次新版固件升级文件对应的版本,如果是,则执行后续步骤S307;如果否,则继续向该车载微控制器发送给次新版升级文件,直至车载微控制器成功将目标固件升级为该次新版固件升级文件对应的版本,或者向该车载微控制器发送该次新版固件升级文件的次数达到预设次数。
S307,在确定车载微控制器的目标固件升级至该次新版固件升级文件对应的版本时,将该最新版固件升级文件发送给该车载微控制器,以便该车载微控制器基于该最新版固件升级文件中的固件升级包,升级该目标固件。
S308,当该车载微控制器当前未运行该目标固件,则将该最新版固件升级文件发送给该车载微控制器,以便该车载微控制器基于该最新版固件升级文件中的固件升级包,升级该目标固件。
其中,在步骤S307和S308中,在将最新版固件升级文件发送给车载微控制器之后,同样可以检测该车载微控制器对所述目标固件的升级是否成功;当该目标固件未升级成功,则向该车载微控制器发送该最新版固件升级文件,直至目标固件升级成功或者发送最新版固件升级文件的次数达到预设次数。
可见,在本申请实施例中,在服务器控制车载微控制器基于该最新版固件升级文件升级该目标固件之前,服务器会判断车载微控制器是否正在运行该目标固件,如果车载微控制器正在运行该目标固件,则会先将次新版固件升级文件发送给车载微控制器,以使得车载微控制器先基于次新版固件升级文件升级目标固件。而由于车载微控制器将目标固件升级到次新版固件升级文件对应的版本之后,可以减少目标固件与车载微控制器中另一固件之间的版本差异程度,降低目标固件与另一固件之间功能的差异性,这样,车载微控制器运行该目标固件实际上向用户呈现的是该次新版固件升级文件对应的版本所具有的相关功能,而一旦后续车载微控制器基于最新版固件升级文件升级目标版本的过程中出现升级失败,车载微控制器切换到该另一固件运行,而由于目标固件与另一固件在功能上的差异性较小,可以减少用户的操作不适感。
下面从车载微控制器侧对本申请的方案进行介绍。如图4,其示出了本申请一种车载微控制器中固件的升级方法又一个实施例的流程示意图,本实施例是从车载微控制器侧进行描述,如前面所描述,车载微控制器的存储器中存储有该车载微控制器的两个固件,该两个固件存储于该存储器的不同存储区,且该车载微控制器同一时刻仅运行这两个固件中的一个固件。
本实施例可以包括:
S401,接收服务器发送的最新版固件升级文件。
其中,最新版固件升级文件包括:待升级固件的固件升级包、固件升级包的版本号以及待升级固件所属的目标存储区。该目标存储区为该两个固件中的一个固件在该车载微控制器的存储器内的存储区。
在本实施例中,该最新版固件升级文件为当前发布最新发布的固件升级文件,该最新版固件升级文件中待升级固件所属的目标存储区与当前时刻之前最近一次发布的固件升级文件中待升级固件所属的存储区不同。
可以理解的是,服务器向车载微控制器发送最新版固件升级文件的过程可以参见前面实施例的相关介绍,在此不再赘述。
S402,从该两个固件中,确定存储区与该目标存储区相同的目标固件。
由于最新版固件升级文件中指明了待升级的固件所对应的目标存储区,因此,车载微控制器可以将存储于存储器的该目标存储区内固件确定为待升级的目标固件。
S403,基于该最新版固件升级文件中的固件升级包,升级该目标固件。
在获取到固件升级包之后,车载微控制器基于该固件升级包升级该目标固件的方式可以有多种,本申请对此不加以限制。
如,车载微控制器可以通过运行Boot loader,来基于该固件升级包执行升级该目标固件的操作。
可以理解的是,本申请实施例所能达到的技术效果可以参见前面实施例的相关描述,在此不再赘述。
可选的,在车载微控制器确定该目标固件升级失败且该目标固件为车载微控制器当前运行的固件时,为了避免车载微控制器由于该目标固件升级失败而导致不可用,该车载微控制器会切换为运行该两个固件中目标固件之外的另一固件。如,车载微控制器正在运行高区固件,且在运行高区固件的过程中对高区固件升级失败,则车载微控制器会切换为运行低区固件。
如,车载微控制器通过运行Boot loader可以判断两个固件是否有效,以管理固件的运行等。例如,Boot loader确定高区固件处于激活状态,低区固件处于待命状态,则车载微控制器会运行高区固件;反之,如果高区固件处于待命状态,而低区固件处于激活状态,则车载微控制器会跳转运行到低区固件。
可以理解的是,由前面实施例可知,在该步骤S401之前,该车载微控制器还可能会接收服务器发送的次新版固件升级文件,则车载微控制器可以先基于次新版固件升级文件升级该目标固件,该过程与基于最新版固件升级文件升级目标固件的过程相似,具体可以参见前面相关介绍,在此不再赘述。
另一方面,对应本申请一种车载微控制器中固件的升级方法中服务器侧的操作,本申请还提供了一种车载微控制器中固件的升级装置。如,参见图5,其示出了本申请一种车载微控制器中固件的升级装置一个实施例的组成结构示意图,在本实施例中所描述的车载微控制器与前面相同,即车载微控制器的存储器中存储有该车载微控制器的两个固件,该两个固件存储于该存储器的不同存储区,且所述车载微控制器同一时刻仅运行这两个固件中的一个固件。
本实施例的装置包括:
新版本获取单元501,用于获取当前最新发布的最新版固件升级文件,所述最新版固件升级文件包括:待升级固件的固件升级包、固件升级包的版本号以及待升级固件所属的目标存储区,所述目标存储区为所述两个固件中的一个固件在所述存储器内的存储区,且,所述最新版固件升级文件中待升级固件所属的目标存储区与当前时刻之前最近一次发布的固件升级文件中待升级固件所属的存储区不同;
固件版本获取单元502,用于从所述车载微控制器获取存储于所述存储器的所述目标存储区内的目标固件的版本号;
固件升级判断单元503,用于根据所述最新版固件升级文件中固件升级包的版本号以及所述目标固件的版本号,判断所述目标固件是否需要升级;
新版本发送单元504,用于当确定出需要升级所述目标固件时,将所述最新版固件升级文件发送给所述车载微控制器,以便所述车载微控制器基于所述最新版固件升级文件中的固件升级包,升级所述目标固件。
在一种实现方式中,所述新版本发送单元,包括:
运行查询子单元,用于当确定出需要升级所述目标固件时,查询所述车载微控制器当前是否正在运行所述目标固件;
次新版本获取子单元,用于当所述车载微控制器当前正在运行所述目标固件时,则获取当前时刻之前最近一次针对所述目标存储区的固件发布的次新版固件升级文件;
次新版本发送子单元,用于将所述次新版固件升级版本发送给所述车载微控制器,以便所述车载微控制器将所述目标固件升级至所述次新版固件升级文件对应的版本;
新版本发送子单元,用于在确定所述车载微控制器的所述目标固件升级至所述次新版固件升级文件对应的版本时,将所述最新版固件升级文件发送给所述车载微控制器。
可选的,与该新版本发送单元还可以包括:
新版本直发子单元,用于当所述车载微控制器当前未运行所述目标固件,则将所述最新版固件升级文件发送给所述车载微控制器。
在以上装置中,该装置还可以包括:
升级检测单元,用于在将所述最新版固件升级文件发送给所述车载微控制器之后,检测所述车载微控制器对所述目标固件的升级是否成功;
重复推送单元,用于当所述目标固件未升级成功,则向所述车载微控制器发送所述最新版固件升级文件,直至所述目标固件升级成功或者发送所述最新版固件升级文件的次数达到预设次数。
另一方面,对应本申请以上一种车载微控制器中固件的升级方法中车载微控制器侧的操作,本申请还提供了另一种车载微控制器中固件的升级装置。如,参见图6,其示出了本申请又一种车载微控制器中固件的升级装置一个实施例的组成结构示意图,本实施例应用于车载微控制器,所述车载微控制器的存储器中存储有所述车载微控制器的两个固件,所述两个固件存储于所述存储器的不同存储区,且所述车载微控制器同一时刻仅运行所述两个固件中的一个固件,所述装置包括:
新版本接收单元601,用于接收服务器发送的最新版固件升级文件,所述最新版固件升级文件包括:待升级固件的固件升级包、固件升级包的版本号以及待升级固件所属的目标存储区,所述目标存储区为所述两个固件中的一个固件在所述存储器内的存储区;所述最新版固件升级文件为当前发布最新发布的固件升级文件,所述最新版固件升级文件中待升级固件所属的目标存储区与当前时刻之前最近一次发布的固件升级文件中待升级固件所属的存储区不同;
固件确定单元602,用于从所述两个固件中,确定存储区与所述目标存储区相同的目标固件;
固件升级单元603,用于基于所述最新版固件升级文件中的固件升级包,升级所述目标固件。
可选的,该装置还可以包括:
运行切换单元,用于当确定该目标固件升级失败且所述目标固件为所述车载微控制器当前运行的固件时,则该车载微控制器切换为运行所述两个固件中所述目标固件之外的另一固件。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种车载微控制器中固件的升级方法,其特征在于,应用于控制所述车载微控制器升级的服务器,其中,所述车载微控制器的存储器中存储有所述车载微控制器的两个固件,所述两个固件存储于所述存储器的不同存储区,且所述车载微控制器同一时刻仅运行所述两个固件中的一个固件,所述方法包括:
获取当前最新发布的最新版固件升级文件,所述最新版固件升级文件包括:待升级固件的固件升级包、固件升级包的版本号以及待升级固件所属的目标存储区,所述目标存储区为所述两个固件中的一个固件在所述存储器内的存储区,且,所述最新版固件升级文件中待升级固件所属的目标存储区与当前时刻之前最近一次发布的固件升级文件中待升级固件所属的存储区不同;
从所述车载微控制器获取存储于所述存储器的所述目标存储区内的目标固件的版本号;
根据所述最新版固件升级文件中固件升级包的版本号以及所述目标固件的版本号,判断所述目标固件是否需要升级;
当确定出需要升级所述目标固件时,将所述最新版固件升级文件发送给所述车载微控制器,以便所述车载微控制器基于所述最新版固件升级文件中的固件升级包,升级所述目标固件。
2.根据权利要求1所述的车载微控制器中固件的升级方法,其特征在于,所述当确定出需要升级所述目标固件时,将所述最新版固件升级文件发送给所述车载微控制器,包括:
当确定出需要升级所述目标固件时,查询所述车载微控制器当前是否正在运行所述目标固件;
当所述车载微控制器当前正在运行所述目标固件时,则获取当前时刻之前最近一次针对所述目标存储区的固件发布的次新版固件升级文件;
将所述次新版固件升级版本发送给所述车载微控制器,以便所述车载微控制器将所述目标固件升级至所述次新版固件升级文件对应的版本;
在确定所述车载微控制器的所述目标固件升级至所述次新版固件升级文件对应的版本时,将所述最新版固件升级文件发送给所述车载微控制器。
3.根据权利要求2所述的车载微控制器中固件的升级方法,其特征在于,还包括:
当所述车载微控制器当前未运行所述目标固件,则将所述最新版固件升级文件发送给所述车载微控制器。
4.根据权利要求1至3任一项所述的车载微控制器中固件的升级方法,其特征在于,在将所述最新版固件升级文件发送给所述车载微控制器之后,还包括:
检测所述车载微控制器对所述目标固件的升级是否成功;
当所述目标固件未升级成功,则向所述车载微控制器发送所述最新版固件升级文件,直至所述目标固件升级成功或者发送所述最新版固件升级文件的次数达到预设次数。
5.一种车载微控制器中固件的升级方法,其特征在于,应用于车载微控制器,所述车载微控制器的存储器中存储有所述车载微控制器的两个固件,所述两个固件存储于所述存储器的不同存储区,且所述车载微控制器同一时刻仅运行所述两个固件中的一个固件,所述方法包括:
接收服务器发送的最新版固件升级文件,所述最新版固件升级文件包括:待升级固件的固件升级包、固件升级包的版本号以及待升级固件所属的目标存储区,所述目标存储区为所述两个固件中的一个固件在所述存储器内的存储区;所述最新版固件升级文件为当前发布最新发布的固件升级文件,所述最新版固件升级文件中待升级固件所属的目标存储区与当前时刻之前最近一次发布的固件升级文件中待升级固件所属的存储区不同;
从所述两个固件中,确定存储区与所述目标存储区相同的目标固件;
基于所述最新版固件升级文件中的固件升级包,升级所述目标固件。
6.根据权利要求5所述的车载微控制器中固件的升级方法,其特征在于,还包括:
当确定所述目标固件升级失败且所述目标固件为所述车载微控制器当前运行的固件时,则所述车载微控制器切换为运行所述两个固件中所述目标固件之外的另一固件。
7.一种车载微控制器中固件的升级装置,其特征在于,应用于控制所述车载微控制器升级的服务器,其中,所述车载微控制器的存储器中存储有所述车载微控制器的两个固件,所述两个固件存储于所述存储器的不同存储区,且所述车载微控制器同一时刻仅运行所述两个固件中的一个固件,所述装置包括:
新版本获取单元,用于获取当前最新发布的最新版固件升级文件,所述最新版固件升级文件包括:待升级固件的固件升级包、固件升级包的版本号以及待升级固件所属的目标存储区,所述目标存储区为所述两个固件中的一个固件在所述存储器内的存储区,且,所述最新版固件升级文件中待升级固件所属的目标存储区与当前时刻之前最近一次发布的固件升级文件中待升级固件所属的存储区不同;
固件版本获取单元,用于从所述车载微控制器获取存储于所述存储器的所述目标存储区内的目标固件的版本号;
固件升级判断单元,用于根据所述最新版固件升级文件中固件升级包的版本号以及所述目标固件的版本号,判断所述目标固件是否需要升级;
新版本发送单元,用于当确定出需要升级所述目标固件时,将所述最新版固件升级文件发送给所述车载微控制器,以便所述车载微控制器基于所述最新版固件升级文件中的固件升级包,升级所述目标固件。
8.根据权利要求7所述的车载微控制器中固件的升级装置,其特征在于,所述新版本发送单元,包括:
运行查询子单元,用于当确定出需要升级所述目标固件时,查询所述车载微控制器当前是否正在运行所述目标固件;
次新版本获取子单元,用于当所述车载微控制器当前正在运行所述目标固件时,则获取当前时刻之前最近一次针对所述目标存储区的固件发布的次新版固件升级文件;
次新版本发送子单元,用于将所述次新版固件升级版本发送给所述车载微控制器,以便所述车载微控制器将所述目标固件升级至所述次新版固件升级文件对应的版本;
新版本发送子单元,用于在确定所述车载微控制器的所述目标固件升级至所述次新版固件升级文件对应的版本时,将所述最新版固件升级文件发送给所述车载微控制器。
9.一种车载微控制器中固件的升级装置,其特征在于,应用于车载微控制器,所述车载微控制器的存储器中存储有所述车载微控制器的两个固件,所述两个固件存储于所述存储器的不同存储区,且所述车载微控制器同一时刻仅运行所述两个固件中的一个固件,所述装置包括:
新版本接收单元,用于接收服务器发送的最新版固件升级文件,所述最新版固件升级文件包括:待升级固件的固件升级包、固件升级包的版本号以及待升级固件所属的目标存储区,所述目标存储区为所述两个固件中的一个固件在所述存储器内的存储区;所述最新版固件升级文件为当前发布最新发布的固件升级文件,所述最新版固件升级文件中待升级固件所属的目标存储区与当前时刻之前最近一次发布的固件升级文件中待升级固件所属的存储区不同;
固件确定单元,用于从所述两个固件中,确定存储区与所述目标存储区相同的目标固件;
固件升级单元,用于基于所述最新版固件升级文件中的固件升级包,升级所述目标固件。
10.根据权利要求9所述的车载微控制器中固件的升级装置,其特征在于,还包括:
运行切换单元,用于当确定所述目标固件升级失败且所述目标固件为所述车载微控制器当前运行的固件时,则所述车载微控制器切换为运行所述两个固件中所述目标固件之外的另一固件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910208635.3A CN111722856B (zh) | 2019-03-19 | 2019-03-19 | 车载微控制器中固件的升级方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910208635.3A CN111722856B (zh) | 2019-03-19 | 2019-03-19 | 车载微控制器中固件的升级方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111722856A true CN111722856A (zh) | 2020-09-29 |
CN111722856B CN111722856B (zh) | 2024-04-09 |
Family
ID=72563286
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910208635.3A Active CN111722856B (zh) | 2019-03-19 | 2019-03-19 | 车载微控制器中固件的升级方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111722856B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113821434A (zh) * | 2021-09-09 | 2021-12-21 | 摩拜(北京)信息技术有限公司 | 固件升级测试方法、装置、电子设备和可读存储介质 |
Citations (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000181790A (ja) * | 1998-12-18 | 2000-06-30 | Toshiba Corp | メモリ更新履歴保存装置 |
WO2002084484A2 (en) * | 2001-04-18 | 2002-10-24 | Domosys Corporation | Method of remotely upgrading firmware in field-deployed devices |
KR20050071131A (ko) * | 2003-12-31 | 2005-07-07 | 엘지전자 주식회사 | 아이피시를 통한 에프피지에이 펌웨어 업그레이드 시스템및 그 방법 |
JP2006301960A (ja) * | 2005-04-20 | 2006-11-02 | Denso Corp | 自動車用制御ユニット |
US20060259207A1 (en) * | 2005-04-20 | 2006-11-16 | Denso Corporation | Electronic control system for automobile |
CN1908898A (zh) * | 2005-08-03 | 2007-02-07 | 华为技术有限公司 | 远程子系统升级方法 |
CN101078993A (zh) * | 2007-03-13 | 2007-11-28 | 中兴通讯股份有限公司 | 一种终端产品不中断业务在线升级版本的方法 |
US20080065816A1 (en) * | 2006-09-07 | 2008-03-13 | Samsung Electronics Co., Ltd. | Firmware update method for mobile terminal and mobile terminal using the same |
US20110321028A1 (en) * | 2010-06-23 | 2011-12-29 | Microsoft Corporation | Applications including multiple experience modules |
CN102314369A (zh) * | 2011-10-09 | 2012-01-11 | 杭州先锋电子技术股份有限公司 | 一种远程在线监控系统中设备自升级方法 |
WO2012025011A1 (zh) * | 2010-08-27 | 2012-03-01 | 腾讯科技(深圳)有限公司 | 软件升级系统及方法、计算机存储介质 |
US20120254865A1 (en) * | 2011-04-04 | 2012-10-04 | Fujitsu Limited | Hypervisor replacing method and information processing device |
CN104301383A (zh) * | 2014-09-05 | 2015-01-21 | 小米科技有限责任公司 | 一种升级方法、装置及设备 |
CN105278998A (zh) * | 2015-11-17 | 2016-01-27 | 北京联合众为科技发展有限公司 | 一种单片机固件升级方法 |
CN105893091A (zh) * | 2016-01-29 | 2016-08-24 | 北京云迹科技有限公司 | 一种智能机器人软件程序升级的方法及系统 |
CN106850241A (zh) * | 2015-12-03 | 2017-06-13 | 联车(上海)信息科技有限公司 | 一种车载obd终端及其远程升级方法 |
CN106850800A (zh) * | 2017-01-24 | 2017-06-13 | 腾讯科技(深圳)有限公司 | 一种下载路径确定的方法以及客户端 |
WO2017186066A1 (zh) * | 2016-04-29 | 2017-11-02 | 北京奇虎科技有限公司 | 软件管理方法及装置 |
WO2017190547A1 (zh) * | 2016-05-06 | 2017-11-09 | 中兴通讯股份有限公司 | 一种设备升级的方法、装置及配置点设备 |
JP2018160207A (ja) * | 2017-03-24 | 2018-10-11 | 日立オートモティブシステムズ株式会社 | 車載制御装置、及び、プログラム更新ソフトウェア |
CN108804126A (zh) * | 2018-05-22 | 2018-11-13 | 北京图森未来科技有限公司 | 一种软件升级方法及装置 |
CN109189445A (zh) * | 2018-10-12 | 2019-01-11 | 武汉微智创大科技有限公司 | 一种物联网设备程序升级的方法 |
CN109445828A (zh) * | 2018-12-12 | 2019-03-08 | 上海伟世通汽车电子系统有限公司 | 车载终端系统的升级方法 |
-
2019
- 2019-03-19 CN CN201910208635.3A patent/CN111722856B/zh active Active
Patent Citations (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000181790A (ja) * | 1998-12-18 | 2000-06-30 | Toshiba Corp | メモリ更新履歴保存装置 |
WO2002084484A2 (en) * | 2001-04-18 | 2002-10-24 | Domosys Corporation | Method of remotely upgrading firmware in field-deployed devices |
KR20050071131A (ko) * | 2003-12-31 | 2005-07-07 | 엘지전자 주식회사 | 아이피시를 통한 에프피지에이 펌웨어 업그레이드 시스템및 그 방법 |
JP2006301960A (ja) * | 2005-04-20 | 2006-11-02 | Denso Corp | 自動車用制御ユニット |
US20060259207A1 (en) * | 2005-04-20 | 2006-11-16 | Denso Corporation | Electronic control system for automobile |
CN1908898A (zh) * | 2005-08-03 | 2007-02-07 | 华为技术有限公司 | 远程子系统升级方法 |
US20080065816A1 (en) * | 2006-09-07 | 2008-03-13 | Samsung Electronics Co., Ltd. | Firmware update method for mobile terminal and mobile terminal using the same |
CN101078993A (zh) * | 2007-03-13 | 2007-11-28 | 中兴通讯股份有限公司 | 一种终端产品不中断业务在线升级版本的方法 |
US20110321028A1 (en) * | 2010-06-23 | 2011-12-29 | Microsoft Corporation | Applications including multiple experience modules |
WO2012025011A1 (zh) * | 2010-08-27 | 2012-03-01 | 腾讯科技(深圳)有限公司 | 软件升级系统及方法、计算机存储介质 |
US20120254865A1 (en) * | 2011-04-04 | 2012-10-04 | Fujitsu Limited | Hypervisor replacing method and information processing device |
CN102314369A (zh) * | 2011-10-09 | 2012-01-11 | 杭州先锋电子技术股份有限公司 | 一种远程在线监控系统中设备自升级方法 |
CN104301383A (zh) * | 2014-09-05 | 2015-01-21 | 小米科技有限责任公司 | 一种升级方法、装置及设备 |
CN105278998A (zh) * | 2015-11-17 | 2016-01-27 | 北京联合众为科技发展有限公司 | 一种单片机固件升级方法 |
CN106850241A (zh) * | 2015-12-03 | 2017-06-13 | 联车(上海)信息科技有限公司 | 一种车载obd终端及其远程升级方法 |
CN105893091A (zh) * | 2016-01-29 | 2016-08-24 | 北京云迹科技有限公司 | 一种智能机器人软件程序升级的方法及系统 |
WO2017186066A1 (zh) * | 2016-04-29 | 2017-11-02 | 北京奇虎科技有限公司 | 软件管理方法及装置 |
WO2017190547A1 (zh) * | 2016-05-06 | 2017-11-09 | 中兴通讯股份有限公司 | 一种设备升级的方法、装置及配置点设备 |
CN106850800A (zh) * | 2017-01-24 | 2017-06-13 | 腾讯科技(深圳)有限公司 | 一种下载路径确定的方法以及客户端 |
JP2018160207A (ja) * | 2017-03-24 | 2018-10-11 | 日立オートモティブシステムズ株式会社 | 車載制御装置、及び、プログラム更新ソフトウェア |
CN108804126A (zh) * | 2018-05-22 | 2018-11-13 | 北京图森未来科技有限公司 | 一种软件升级方法及装置 |
CN109189445A (zh) * | 2018-10-12 | 2019-01-11 | 武汉微智创大科技有限公司 | 一种物联网设备程序升级的方法 |
CN109445828A (zh) * | 2018-12-12 | 2019-03-08 | 上海伟世通汽车电子系统有限公司 | 车载终端系统的升级方法 |
Non-Patent Citations (1)
Title |
---|
杜先芸;程满玲;: "试谈基于Windows 10系统下提升计算机运行速度的方式", 电脑编程技巧与维护, no. 17 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113821434A (zh) * | 2021-09-09 | 2021-12-21 | 摩拜(北京)信息技术有限公司 | 固件升级测试方法、装置、电子设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111722856B (zh) | 2024-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6760650B2 (en) | Communication system for communication between in-vehicle terminals and center, and in-vehicle terminal employed in communication system | |
US20190324858A1 (en) | Rollback recovery from partial failure in multiple electronic control unit over-the-air updates | |
US10936306B2 (en) | Vehicle control system and software compatibility checking method | |
WO2018139296A1 (ja) | 車両制御装置およびプログラム更新システム | |
US11604636B2 (en) | Vehicle control system and method for confirming software consistency | |
CN101594613A (zh) | 终端设备及其升级的方法、系统 | |
JP2006203392A (ja) | ソフトウェア無線装置及び車載情報システム | |
CN106648781B (zh) | 通信设备远程固件升级方法及系统 | |
CN111722860A (zh) | 基于有穷状态机的ota升级方法和装置 | |
JP2019159399A5 (zh) | ||
WO2023241458A1 (zh) | 车载控制器的软件升级方法、装置、设备和存储介质 | |
US11853742B2 (en) | Server, software update system, distribution method, and non-transitory storage medium | |
CN111722856A (zh) | 车载微控制器中固件的升级方法和装置 | |
KR102610730B1 (ko) | 차량의 업데이트 제공 장치 및 컴퓨터 기록 매체 | |
CN114531431A (zh) | 一种基于蓝牙的多设备ota升级方法、电子设备、存储介质和程序产品 | |
CN106095474A (zh) | 用于更新运输工具中的软件的方法和装置 | |
WO2021024792A1 (ja) | 車両制御装置、更新プログラム、プログラム更新システム、及び書込み装置 | |
CN110688136B (zh) | 一种应用程序更新方法及装置 | |
KR101348843B1 (ko) | 가상화 및 이중화를 이용한 전자제어유닛의 리프로그래밍 방법 | |
CN114546455A (zh) | 一种双分区的mcu软件升级方法及装置 | |
CN113031981A (zh) | 车辆的软件升级方法、系统及车辆 | |
CN114064086B (zh) | 多级处理器系统及其升级方法 | |
US20240001871A1 (en) | Electronic control unit, vehicle control system, and vehicle control method | |
CN113362584B (zh) | 通信方法、装置及无人机 | |
KR20230025107A (ko) | 차량 소프트웨어 관리 시스템 및 그의 소프트웨어 복구 방법 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |