一种BootLoader程序升级方法及装置制造方法及图纸

技术编号:36580930 阅读:16 留言:0更新日期:2023-02-04 17:40
本申请实施例公开了一种BootLoader程序升级方法,预留了额外的存储空间,即第一存储空间,用于存储最新版本的BootLoader程序。当MCU上电或复位后,首先判断第一存储空间中是否存在BootLoader程序,如果第一存储空间存在,表明原存储空间(第二存储空间)中的BootLoader程序需要进行升级,则将第一存储空间中的BootLoader程序复制到第二存储空间,在复制完成后,擦除第一存储空间中的BootLoader程序。可见,通过本申请实施例提供的方案可以对MCU中的BootLoader程序进行升级,提高工作效率,降低升级成本。降低升级成本。降低升级成本。

【技术实现步骤摘要】
一种BootLoader程序升级方法及装置


[0001]本申请涉及车辆控制
,具体涉及一种BootLoader程序升级方法及装置。

技术介绍

[0002]目前,汽车上的微控制单元(Microcontroller Unit,MCU)大多数都存储启动加载(BootLoader)程序,该BootLoader程序主要用于对MCU中的应用程序进行在线升级,以通过升级可以增加产品的新功能或修复潜在bug。随着汽车产品功能越来越复杂,促使Bootloader程序支持一些新的特性或功能,需要对BootLoader程序自身进行升级。
[0003]通常情况下,Bootloader程序比较可靠、不会发生改变,因此会在MCU出厂前,通过烧录方式将BootLoader程序写入MCU中。若出现问题,需要将车辆召回,从车辆上取下MCU,以在MCU上重新烧录Bootloader程序。
[0004]然而,当MCU封装在器件内部且该器件无预留升级接口时,拆卸MCU将导致器件受到破坏,增加升级成本。例如,电池管理系统中的MCU封装在电池包内,BootLoader程序出现问题时必须将电池包拆除才能重新烧录BootLoader程序。因此,如何降低BootLoader程序升级成本是急需解决的技术问题。

技术实现思路

[0005]有鉴于此,本申请实施例提供一种BootLoader程序升级方法和装置,以实现在不拆除MCU的情况下,对BootLoader程序进行自动升级,降低升级成本。
[0006]为实现上述目的,本申请实施例提供的技术方案如下:
[0007]在本申请实施例第一方面,提供了一种BootLoader程序升级方法,在微控制单元MCU上电或复位后,所述方法包括:
[0008]判断第一存储空间中是否存在BootLoader程序,所述第一存储空间用于存储最新版本的BootLoader程序;
[0009]在所述第一存储空间存在所述BootLoader程序时,将所述BootLoader程序复制到第二存储空间;
[0010]擦除所述第一存储空间中的所述BootLoader程序。
[0011]在一种具体的实现方式中,所述方法还包括:
[0012]在所述第一存储空间不存在所述BootLoader程序时,判断当前接收的升级请求是否为BootLoader程序升级请求;
[0013]如果是,则运行所述第二存储空间中的BootLoader程序,以触发最新版本的BootLoader程序的下载;
[0014]将下载的所述最新版本的BootLoader程序存储在所述第一存储空间。
[0015]在一种具体的实现方式中,所述方法还包括:
[0016]在将所述BootLoader程序复制到第二存储空间过程中出现断电或复位时,将不执行擦除所述第一存储空间中的所述BootLoader程序的操作。
[0017]在一种具体的实现方式中,所述判断第一存储空间中是否存在BootLoader程序,包括:
[0018]从所述第一存储空间读取升级标志字段;
[0019]在所述升级标志字段为第一预设阈值时,确定所述第一存储空间存在所述BootLoader程序。
[0020]在一种具体的实现方式中,所述方法还包括:
[0021]在擦除所述第一存储空间中的所述BootLoader程序后,将所述升级标志字段置为第二预设阈值。
[0022]在本申请实施例第二方面,提供了一种BootLoader程序升级装置,所述装置包括:引导模块、BootLoader模块以及预留的第一存储空间,所述第一存储空间用于存储最新版本的BootLoader程序;
[0023]所述引导模块,用于在所述MCU上电或复位后,判断所述第一存储空间是否存在BootLoader程序;
[0024]所述引导模块,还用于在所述第一存储空间存在所述BootLoader程序时,将所述BootLoader程序复制到第二存储空间;
[0025]所述引导模块,还用于在将所述第一存储空间中的所述BootLoader程序复制到所述第二存储空间后,擦除所述第一存储空间中的所述BootLoader程序;
[0026]所述BootLoader模块,用于执行所述第二存储空间中的Bootloader程序。
[0027]在一种具体的实现方式中,所述引导模块,还用于在所述第一存储空间不存在所述BootLoader程序时,判断当前接收的升级请求是否为BootLoader程序升级请求;在当前接收的升级请求为所述BootLoader程序升级请求时,控制所述BootLoader模块执行所述第二存储空间中的Bootloader程序,以触发最新版本的BootLoader程序的下载;
[0028]所述引导模块,还用于将下载的所述最新版本的BootLoader程序存储在所述第一存储空间。
[0029]在一种具体的实现方式中,所述引导模块,具体用于从所述第一存储空间读取升级标志字段;在所述升级标志字段为第一预设阈值时,确定所述第一存储空间存在所述BootLoader程序。
[0030]在一种具体的实现方式中,所述引导模块,还用于在擦除所述第一存储空间中的所述BootLoader程序后,将所述升级标志字段置为第二预设阈值。
[0031]在本申请实施例第三方面,提供了一种微控制单元,包括:处理器,存储器;
[0032]所述存储器,用于存储计算机可读指令或者计算机程序;
[0033]所述处理器,用于读取所述计算机可读指令或所述计算机程序,以使得所述设备实现第一方面所述的BootLoader程序升级方法。
[0034]在本申请实施例第四方面,提供了一种计算机可读存储介质,包括指令或计算机程序,当其在计算机上运行时,使得计算机执行以上第一方面所述的BootLoader程序升级方法。
[0035]由此可见,本申请实施例具有如下有益效果:
[0036]本申请实施例预留了额外的存储空间,即第一存储空间,用于存储最新版本的BootLoader程序。当MCU上电或复位后,首先判断第一存储空间中是否存在BootLoader程
序,如果第一存储空间存在,表明原存储空间(第二存储空间)中的BootLoader程序需要进行升级,则将第一存储空间中的BootLoader程序复制到第二存储空间,在复制完成后,擦除第一存储空间中的BootLoader程序。可见,通过本申请实施例提供的方案可以对MCU中的BootLoader程序进行升级,提高工作效率,降低升级成本。
附图说明
[0037]图1为本申请实施例提供的一种BootLoader程序升级装置结构图;
[0038]图2为本申请实施例提供的一种BootLoader程序升级方法流程图。
具体实施方式
[0039]为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种BootLoader程序升级方法,其特征在于,在微控制单元MCU上电或复位后,所述方法包括:判断第一存储空间中是否存在BootLoader程序,所述第一存储空间用于存储最新版本的BootLoader程序;在所述第一存储空间存在所述BootLoader程序时,将所述BootLoader程序复制到第二存储空间;擦除所述第一存储空间中的所述BootLoader程序。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:在所述第一存储空间不存在所述BootLoader程序时,判断当前接收的升级请求是否为BootLoader程序升级请求;如果是,则运行所述第二存储空间中的BootLoader程序,以触发最新版本的BootLoader程序的下载;将下载的所述最新版本的BootLoader程序存储在所述第一存储空间。3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:在将所述BootLoader程序复制到第二存储空间过程中出现断电或复位时,将不执行擦除所述第一存储空间中的所述BootLoader程序的操作。4.根据权利要求1

3任一项所述的方法,其特征在于,所述判断第一存储空间中是否存在BootLoader程序,包括:从所述第一存储空间读取升级标志字段;在所述升级标志字段为第一预设阈值时,确定所述第一存储空间存在所述BootLoader程序。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:在擦除所述第一存储空间中的所述BootLoader程序后,将所述升级标志字段置为第二预设阈值。6.一种BootLoader程序升级装置,其特征在于,所述装置包括:引导模块、BootLoader模块以及预留的第一存储空间,所述第一存储空间用于存储最新版本的BootLoader程序;所述引导模块,用于...

【专利技术属性】
技术研发人员:谢英才孙雷霸
申请(专利权)人:上海汽车集团股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1