一种用于新能源汽车控制器的软件升级方法技术

技术编号:25086673 阅读:41 留言:0更新日期:2020-07-31 23:30
本发明专利技术公开的一种用于新能源汽车控制器的软件升级方法,包括以下步骤:1.将DFlash存储器划分为第一、第二存储扇区,分别用于存储第一、第二应用程序应用程序;2.读取应用程序使用标志位,并发送至刷新上位机;3.若应用程序使用标志位指示第一应用程序,则执行步骤4,若应用程序使用标志位指示第二应用程序,则执行步骤5;4.擦除第二应用程序,并对第二应用程序进行重新升级刷新;若升级刷新成功,则将应用程序使用标志位变更为指示第二应用程序;5.擦除第一应用程序,并对第一应用程序进行重新升级刷新;若升级刷新成功,则将应用程序使用标志位变更为指示第一应用程序。本发明专利技术保证车辆能够正常启动,降低维护成本,不影响用户体验。

【技术实现步骤摘要】
一种用于新能源汽车控制器的软件升级方法
本专利技术涉及新能源汽车控制器
,尤其涉及一种用于新能源汽车控制器的软件升级方法。
技术介绍
目前新能源汽车控制器ECU中,除了包含启动引导程序BootLoader外,还包含有一个版本的应用程序,这个应用程序记录在汽车控制器ECU的DFlash存储器内。当进行应用程序升级更新时,DFlash存储器会将上一版本的应用程序擦除,然后再写入下一版本的应用程序。当发生应用程序升级更新失败的情况时,特别是在DFlash存储器已经擦除了上一版本的应用程序,而没有成功写入下一版本的应用程序时,汽车控制器系统会重新启动,然后进入启动引导程序BootLoader,并等待下一次刷新尝试。如果由于各种原因无法刷新成功,例如升级程序发生错误、信号传输发生故障、系统馈电等,将导致汽车控制器ECU无法上电,整车无法再次正常启动。这将带来巨大的维修成本和较差的用户体验。为此,申请人进行了有益的探索和尝试,找到了解决上述问题的办法,下面将要介绍的技术方案便是在这种背景下产生的。
技术实现思路
本专利技术所要解决的技术问题在于:针对现有技术的不足而提供一种保证新能源汽车能够正常启动、降低维修成本、提高用户体验的用于新能源汽车控制器的软件升级方法。本专利技术所要解决的技术问题可以采用如下技术方案来实现:一种用于新能源汽车控制器的软件升级方法,包括以下步骤:步骤S10,将DFlash存储器划分为第一、第二存储扇区,所述第一、第二存储扇区分别用于存储第一、第二应用程序应用程序;步骤S20,当汽车控制器ECU接收到升级指令时,启动引导程序BootLoader读取位于DFlash存储器内的应用程序使用标志位,并将读取到的应用程序使用标志位发送至刷新上位机;步骤S30,刷新上位机根据读取到的应用程序使用标志位进行操作:若应用程序使用标志位指示第一应用程序,则执行步骤S40,若应用程序使用标志位指示第二应用程序,则执行步骤S50;步骤S40,刷新上位机擦除位于DFlash存储器的第二存储扇区内的第二应用程序,并对第二应用程序进行重新升级刷新;若升级刷新成功,则将应用程序使用标志位变更为指示第二应用程序;步骤S50,刷新上位机擦除位于DFlash存储器的第一存储扇区内的第一应用程序,并对第一应用程序进行重新升级刷新;若升级刷新成功,则将应用程序使用标志位变更为指示第一应用程序。在本专利技术的一个优选实施例中,所述DFlash存储器划分的第一、第二存储扇区的存储空间相同。在本专利技术的一个优选实施例中,所述步骤S40包括以下子步骤:步骤S41,刷新上位机向DFlash存储器发送第一UDS擦除指令;步骤S42,刷新上位机根据第一UDS擦除指令将位于第二存储扇区内的第二应用程序进行擦除处理;步骤S43,将第二应用程序的代码有效位和数据有效位修改为无效状态,表明当前的第二应用程序已经失效;步骤S44,刷新上位机对位于第二存储扇区的第二应用程序进行重新升级刷新处理;步骤S45,判断第二应用程序是否升级刷新成功;若判断为升级刷新失败,则执行步骤S46,若判断为升级刷新失败,则执行步骤S47;步骤S46,将第二应用程序的代码有效位和数据有效位修改为有效状态,并将应用程序使用标志位变更为指示第二应用程序;当升级成功且重启系统后,启动引导程序BootLoader读取应用程序使用标志位,并根据应用程序使用标志位跳转至第二应用程序运行。步骤S47,若选择继续升级,则返回步骤S41,继续对第二应用程序进行升级刷新;若选择重启系统,则运行第一应用程序。在本专利技术的一个优选实施例中,所述步骤S50包括以下子步骤:步骤S51,刷新上位机向DFlash存储器发送第二UDS擦除指令;步骤S52,刷新上位机根据第二UDS擦除指令将位于第一存储扇区内的第一应用程序进行擦除处理;步骤S53,将第一应用程序的代码有效位和数据有效位修改为无效状态,表明当前的第一应用程序已经失效;步骤S54,刷新上位机对位于第一存储扇区的第一应用程序进行重新升级刷新处理;步骤S55,判断第一应用程序是否升级刷新成功;若判断为升级刷新失败,则执行步骤S56,若判断为升级刷新失败,则执行步骤S57;步骤S56,将第一应用程序的代码有效位和数据有效位修改为有效状态,并将应用程序使用标志位变更为指示第一应用程序;当升级成功且重启系统后,启动引导程序BootLoader读取应用程序使用标志位,并根据应用程序使用标志位跳转至第一应用程序运行。步骤S57,若选择继续升级,则返回步骤S41,继续对第一应用程序进行升级刷新;若选择重启系统,则运行第二应用程序。由于采用了如上技术方案,本专利技术的有益效果在于:本专利技术利用应用程序镜像方式充分运用了芯片DFlash存储器的结构和空间,并保证在远程刷新过程中,当发生升级失败时,能保证汽车控制器ECU得上一个版本的软件正常运行,保证车辆能够正常启动,降低维护成本,不影响用户体验。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术的用于新能源汽车控制器的软件升级方法的流程图。图2是本专利技术的用于新能源汽车控制器的软件升级方法的一个具体实施例的流程图。具体实施方式为了使本专利技术实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本专利技术。参见图1,图中给出的是一种用于新能源汽车控制器的软件升级方法,包括以下步骤:步骤S10,将DFlash存储器划分为两个大小一致的第一、第二存储扇区,所述第一、第二存储扇区分别用于存储第一、第二应用程序应用程序。每次应用程序在升级时在第一、第二存储扇区交替进行,一旦应用程序升级失败,系统仍然能够运行上一版软件。步骤S20,当汽车控制器ECU接收到升级指令时,启动引导程序BootLoader读取位于DFlash存储器内的应用程序使用标志位,并通过CAN总线将读取到的应用程序使用标志位发送至刷新上位机。应用程序使用标志位用于指示当前系统运行的是第一应用程序还是第二应用程序。步骤S30,刷新上位机根据读取到的应用程序使用标志位进行操作:若应用程序使用标志位指示第一应用程序,即表明系统运行的是第一应用程序,则执行步骤S40,若应用程序使用标志位指示第二应用程序,即表明系统运行的是第二应用程序,则执行步骤S50。步骤S40,刷新上位机擦除位于DFlash存储器的第二存储扇区内的第二应用程序,并对第二应用程序进行重新升级刷新;若升级刷新成功,则将应用程序使用标志位变更为指示第二应用程序。步骤S50,刷新上位机擦除本文档来自技高网...

【技术保护点】
1.一种用于新能源汽车控制器的软件升级方法,其特征在于,包括以下步骤:/n步骤S10,将DFlash存储器划分为第一、第二存储扇区,所述第一、第二存储扇区分别用于存储第一、第二应用程序应用程序;/n步骤S20,当汽车控制器ECU接收到升级指令时,启动引导程序BootLoader读取位于DFlash存储器内的应用程序使用标志位,并将读取到的应用程序使用标志位发送至刷新上位机;/n步骤S30,刷新上位机根据读取到的应用程序使用标志位进行操作:若应用程序使用标志位指示第一应用程序,则执行步骤S40,若应用程序使用标志位指示第二应用程序,则执行步骤S50;/n步骤S40,刷新上位机擦除位于DFlash存储器的第二存储扇区内的第二应用程序,并对第二应用程序进行重新升级刷新;若升级刷新成功,则将应用程序使用标志位变更为指示第二应用程序。/n步骤S50,刷新上位机擦除位于DFlash存储器的第一存储扇区内的第一应用程序,并对第一应用程序进行重新升级刷新;若升级刷新成功,则将应用程序使用标志位变更为指示第一应用程序。/n

【技术特征摘要】
1.一种用于新能源汽车控制器的软件升级方法,其特征在于,包括以下步骤:
步骤S10,将DFlash存储器划分为第一、第二存储扇区,所述第一、第二存储扇区分别用于存储第一、第二应用程序应用程序;
步骤S20,当汽车控制器ECU接收到升级指令时,启动引导程序BootLoader读取位于DFlash存储器内的应用程序使用标志位,并将读取到的应用程序使用标志位发送至刷新上位机;
步骤S30,刷新上位机根据读取到的应用程序使用标志位进行操作:若应用程序使用标志位指示第一应用程序,则执行步骤S40,若应用程序使用标志位指示第二应用程序,则执行步骤S50;
步骤S40,刷新上位机擦除位于DFlash存储器的第二存储扇区内的第二应用程序,并对第二应用程序进行重新升级刷新;若升级刷新成功,则将应用程序使用标志位变更为指示第二应用程序。
步骤S50,刷新上位机擦除位于DFlash存储器的第一存储扇区内的第一应用程序,并对第一应用程序进行重新升级刷新;若升级刷新成功,则将应用程序使用标志位变更为指示第一应用程序。


2.如权利要求1所述的用于新能源汽车控制器的软件升级方法,其特征在于,所述DFlash存储器划分的第一、第二存储扇区的存储空间相同。


3.如权利要求1所述的用于新能源汽车控制器的软件升级方法,其特征在于,所述步骤S40包括以下子步骤:
步骤S41,刷新上位机向DFlash存储器发送第一UDS擦除指令;
步骤S42,刷新上位机根据第一UDS擦除指令将位于第二存储扇区内的第二应用程序进行擦除处理;
步骤S43,将第二应用程序的代码有效位和数据有效位修改为无效状态,表明当前的第二应用程序已经失效;
步骤S44,刷新上位机对位于第二存...

【专利技术属性】
技术研发人员:颜宇杰王晨辉李辉
申请(专利权)人:创驱上海新能源科技有限公司
类型:发明
国别省市:上海;31

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

1