一种软件重编程系统、基于重编程系统的软件重编程方法技术方案

技术编号:34789021 阅读:48 留言:0更新日期:2022-09-03 19:52
本发明专利技术属于新能源汽车控制器领域,具体提供一种软件重编程系统、基于重编程系统的软件重编程方法,所述方法包括如下步骤:下位机上电或复位后,判断Ram中的重编程标志是否有效;若有效,直接运行引导加载程序,并清除重编程标志,等待接收上位机发送的相关指令,执行升级流程;若无效,则判断下位机内存空间划分的区域中的应用程序是否有效,选择并运行一个有效的应用程序,接收到上位机的重编程请求后,在Ram中设置重编程标志,通过下位机软件复位的方式重新执行启动流程;若下位机内存空间划分的区域中的应用程序均无效,则直接运行引导加载程序,等待接收上位机发送的相关指令,执行升级流程。提高程序启动的安全性。提高程序启动的安全性。提高程序启动的安全性。

【技术实现步骤摘要】
一种软件重编程系统、基于重编程系统的软件重编程方法


[0001]本专利技术属于新能源汽车控制器
,具体提供一种软件重编程系统、基于重编程系统的软件重编程方法。

技术介绍

[0002]随着新能源汽车的快速发展,消费者对于汽车的舒适性、安全性、智能性等要求越来越高,使得车载控制器个数越来越多,车载电控单元ECU集成的功能越来越复杂,大大加速了车载电控单元ECU的发展,需要经常对ECU应用程序进行升级等服务。
[0003]传统的ECU升级方法是通过JTAG等接口将程序下载进ECU,该方法需要拆开控制器外壳,非常不方便,并且大大影响工作效率,存在较高的安全隐患。
[0004]传统的ECU Bootloader引导程序中包含擦写等功能函数,如果程序出现跑飞等情况,会出现误擦除应用程序等操作。通常在刷写新的应用程序时,会将旧程序先擦除,一旦刷写过程中出现错误,新程序未能升级成功,会直接导致车辆不能正常运行。

技术实现思路

[0005]传统的ECU升级方法是通过JTAG等接口将程序下载进ECU,该方法需要拆开控制器外壳,本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种软件重编程系统,其特征在于,包括上位机,所述上位机通过CAN卡连接有下位机;下位机中固化有引导加载程序;下位机内存空间划分为一个用于存储引导加载程序的区域和至少两个用于存储应用程序的区域,每个区域地址不同;上位机,用于加载并解析待升级的应用程序文件和包含擦写函数的Flash Driver驱动程序,需要重编程序时,将Flash Driver驱动程序、相关指令和应用程序文件发送给下位机;下位机,用于根据上位机发送的相关指令,判断待升级应用程序的地址范围,引导加载程序调用Flash Driver驱动程序擦除目标存储区域的内存空间,并将应用程序写入目标存储区域。2.根据权利要求1所述的软件重编程系统,其特征在于,下位机的Ram空间中划分出特定内存区域,用于当重编写程序时,存储通过上位机传输的Flash Driver驱动程序;下位机新应用程序升级结束后将存储在Ram中的Flash Driver驱动程序清除。3.根据权利要求2所述的软件重编程系统,其特征在于,上位机,用于加载并解析用于升级应用程序的Hex文件和Flash Driver驱动程序,当需要重编程时,将Flash Driver驱动程序下载进下位机的Ram空间中划分出特定内存区域;还用于向下位机发送包含需要擦除地址的范围的擦除指令;还用于向下位机发送解析后的应用程序的刷写数据;下位机刷写成功后发送设置程序有效性指令到下位机; 新刷入的应用程序有效后,发送设置另一区域中的应用程序无效的指令;下位机,用于接收到擦除指令后根据上位机传输的擦除地址的范围,引导加载程序调用存储在Ram中的Flash Driver驱动程序,擦除相应的内存空间;接收上位机发送的应用程序的刷写数据按照刷写规则执行刷写操作,刷写成功后返回正响应到上位机;设置新刷入的应用程序有效设置完成返回正响应到上位机;将下位机内存空间其他区域中的应用程序设置无效。4.根据权利要求3所述的软件重编程系统,其特征在于,下位机上电或复位后,判断Ram中的重编程标志是否有效,若重编程标志有效,直接运行引导加载程序,并清除重编程标志,等待接收上位机发送的相关指令,执行升级流程;若重编程标志无效,则判断下位机内存空间划分的区域中的应用程序是否有效,选择并运行一个有效的应用程序,接收到上位机的重编程请求后,则在Ram中设置重编程标志,通过下位机软件复位的方式重新执行启动流程;若应用程序均无效,则直接运行引导加载程序,等待接收上位机发送的相关指令执行升级流程。5.根据权利要求3所述的软件重编程系统,其特征在于,下位机,还用于接收到上位机传输的Flash Driver驱动程序后,通过CRC32校验算法,校验接收数据的正确性,校验通过后,将Flash Driver驱动程序刷写进Ram空间中划分出的特定内存区域,并向上位机发送正响应;还用于接收到上位机发送解析后的应用程序的刷写数据后,通过CRC32算法校验传输数据的准确性,校验通过后调用存储在Ram中的Flash Driver驱动程序,刷写待升级的应用程序。6.一种基于重编程系统的软件重编程方法,其特征在于,所述重编程系统为如权利要
求1

5任一项权利要求所述的软件重编程系统,所述方法包括如下步骤:下位机上电或复位后,判断Ram中的重编程标志是否有效;若重编程标志有效,直接运行引导加载程序,并清除重编程标志,等待接收上位机发送的相关指令,执行升级流...

【专利技术属性】
技术研发人员:李照远王伟臣田光烁左鹏举
申请(专利权)人:中国重汽集团济南动力有限公司
类型:发明
国别省市:

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

1