买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明公布】一种基于PreBoot和双BootLoader的在线升级BMS方法_亿恩新动力科技(山东)有限公司_202311144596.8 

申请/专利权人:亿恩新动力科技(山东)有限公司

申请日:2023-09-06

公开(公告)日:2023-12-01

公开(公告)号:CN117149245A

主分类号:G06F8/654

分类号:G06F8/654;G06F8/61

优先权:

专利状态码:在审-实质审查的生效

法律状态:2023.12.19#实质审查的生效;2023.12.01#公开

摘要:本发明属于电动汽车智能网联应用技术领域,尤其涉及一种基于PreBoot和双BootLoader的在线升级BMS方法,包括Pflash划分、制作PreBoot和BootLoader0的程序、将PreBoot和BootLoader0烧写到划分的区以及运行和升级。本发明提出了一种双BootLoader和双应用程序共存的BMS升级设计方案,通过对Flash进行了分区,实现了双BootLoader和双应用程序共存,可升级BootLoader防止应用程序被他人篡改,双Bootloader可保证Bootloader升级的安全性,升级失败不会影响BMS无法启动和应用升级,PFlash的划分对软件进行了备份,实现了多版本软件共存,可灵活运行不同版本应用程序,Crc校验码校验保证数据的有效性。

主权项:1.一种基于PreBoot和双BootLoader的在线升级BMS方法,其特征在于,包括如下步骤:S1、Pflash划分:将Pflash具体划分为PreBoot、BootLoaderX以及AppX区,所述BootLoaderX区包括BootLoader0和BootLoader1区、所述AppX区包括App0和App1区,所述BootLoader0和BootLoader1区顶部均是Header区,底部均是BootLoader,所述App0和App1区顶部均是Header区,底部均是App,所述PreBoot区读取BootLoaderX区的Header区中软件的版本和可用性,选择可用最新的BootLoader运行,所述BootLoaderX区包括保存BootLoader版本和可用性的Header区和BootLoader程序,读取AppX区的Header区中软件的版本和可用性,选择可用最新的运行,完成BootLoader的子更新和App的更新,所述AppX区包含保存App版本和可用性的Header区,通过协议栈触发软件重启,所述Header区存储软件版本、可用性和版本可用性数据校验码,所述可用性包括:未知、有效以及无效;S2、制作PreBoot和BootLoader0的程序:PreBoot用于启动可用最新的BootLoaderX区,读取BootLoaderX的Header区,读取版本和可用性,并对读取的数据进行Crc校验,确保读取数据的有效性,Header区都无效时,运行BootLoader0区的BootLoader,否则选择BootLoaderX区运行,BootLoader0用于BootLoader自升级和App升级,所述升级使用基于CAN的CCPUDS协议,BootLoader等待CAN的触发,当等待超时,BootLoader会读取AppX分区的Header区数据并进行Crc校验选择合适的分区跳转,如果收到BootLoader自更新请求,接受上位机发送的BootLoader版本信息并将分区的可用性设置为未知,生成Crc校验值后一同写入Header区,进行BootLoader自更新,自更新完成后运行新的BootLoaderX,读取BootLoaderX区的Header区,如果可用性是未知,将未知设为无效,生成新的校验码写入Header区,如果BootLoader可用,将可用性设为有效,生成校验码写入Header区,如果收到更新,读取AppX区的Header区,接收上位机发送的App版本信息,将可用性设置为未知并生成Crc校验码,如果存在可用性无效的AppX区,App版本信息写入Header区,并将新的App升级到此区,升级完成后进行AppX区的运行,否则选择旧版本的AppX区,进行相同的升级流程并运行AppX区;S3、将PreBoot和BootLoader0烧写到划分的区:使用芯片官方的IDE进行Pflash的段配置,借助芯片官方提供的下载器,使用串口将制作好的ProBoot和BootLoader0下载到划分的区;S4、运行和升级:上电启动BMS之后,首先启动PreBoot,读取BootLoaderX区中的Header区,如果选择BootLoader0区进行运行,收到更新请求,就对BootLoader1区进行刷写,否则反之,完成后跳转并验证BootLoader可用性,可用则选择合适的App运行,如果收到App更新请求,有不可用的App分区将直接刷写到此分区,否则将App升级到旧版的App,最后运行合适的App,直至重启或掉电结束。

全文数据:

权利要求:

百度查询: 亿恩新动力科技(山东)有限公司 一种基于PreBoot和双BootLoader的在线升级BMS方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。