【技术实现步骤摘要】
一种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封装在电池包内 ...
【技术保护点】
【技术特征摘要】
1.一种BootLoader程序升级方法,其特征在于,在微控制单元MCU上电或复位后,所述方法包括:判断第一BootLoader模块中的复位配置半字是否有效;在所述第一BootLoader模块中的复位配置半字有效时,运行所述第一BootLoader模块,所述第一BootLoader模块中的复位配置半字有效用于指示所述第一BootLoader模块中存在完整的BootLoader程序;判断所述第一BootLoader模块中的BootLoader程序的版本是否不低于第二BootLoader模块中的BootLoader程序的版本;如果是,判断当前接收的升级请求是否为BootLoader程序升级请求;如果是,则下载最新版本的BootLoader程序,并将所述最新版本的BootLoader程序存储至所述第二BootLoader模块。2.根据权利要求1所述的方法,其特征在于,在所述第一BootLoader模块中的复位配置半字无效时,所述方法还包括:判断所述第二BootLoader模块中的复位配置半字是否有效;在所述第二BootLoader模块中的复位配置半字有效时,运行所述第二BootLoader模块。3.根据权利要求1或2所述的方法,其特征在于,在所述第一BootLoader模块中的BootLoader程序的版本低于所述第二BootLoader模块中的BootLoader程序的版本时,或者运行所述第二BootLoader模块时,所述方法还包括:运行所述第二BootLoader模块,判断当前接收的升级请求是否为BootLoader程序升级请求;如果是,下载最新版本的BootLoader程序,并将所述最新版本的BootLoader程序存储至所述第一BootLoader模块。4.根据权利要求1
‑
3任一项所述的方法,其特征在于,所述方法还包括:在将所述最新版本的BootLoader程序存储至所述第二BootLoader模块之前,擦除所述第二BootLoader模块中的BootLoader程序。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:在将所述最新版本的BootLoader程序存储至所述第二BootLoader模块过程中出现中断时,将所述第二BootLoader模块的复位配置半字置为无效。6.根据权利要求3所述的方法,其特征在于,所述方法还包括:在将所述最新版本的BootLoader程序...
【专利技术属性】
技术研发人员:谢英才,孙雷霸,
申请(专利权)人:上海汽车集团股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。