【车载开发系列】 ECU的在线刷写流程

【车载开发系列】 ECU的在线刷写流程

【车载开发系列】 ECU的在线刷写流程

  • 【车载开发系列】 ECU的在线刷写流程
    • 一. ECU的刷写概念
    • 二. 什么是OTA
    • 三. 什么是Flash Driver
    • 四. FlashDriver的特点
    • 五. ECU刷写流程汇总
      • 1)刷写前准备
      • 2)刷写主流程
      • 3)刷写完成流程

一. ECU的刷写概念

成品车上要进行ECU的软件刷新,可以通过即Bootloader刷写和OTA升级。通过OBD接口进行Bootloader刷新的方式是目前的主流方式。
Bootloader分为Primary Bootloader跟Secondary Bootloader。
Primary Bootloader由ECU供应商预先编辑到非易失性存储器中,包含PBL的区域必须防止擦除,避免由于意外擦除PBL。Secondary Bootloader存储在易失性存储器中

二. 什么是OTA

OTA是“over-the-air”的缩写,是一种无线技术,用于在不需要接触设备的情况下向移动设备或物联网设备提供更新、补丁或新版本的软件。OTA更新通常通过无线网络(如Wi-Fi或移动数据)进行,这使得设备可以在不需要任何物理连接的情况下获得更新。这种技术在智能手机、智能家居设备和车载系统等设备中得到广泛应用。
总结起来就是OTA让BootLoader完成:接收新APP—擦除旧APP—写入新APP—跳转到新APP执行 的这么一系列的过程。

三. 什么是Flash Driver

在ECU OTA 程序升级过程中,需要执行一段比较特殊的代码,这段代码实现对自身Flash的擦除与写入,它就是Flash Driver。
在OTA开始后,会先传入Flash Driver到RAM中,再开始刷写APP
在OTA完成之后,会执行SID$11$01 MCU复位的操作,复位前会清除这部分RAM空间,或者重新给ECU上电后,Flash Driver就失效了。

四. FlashDriver的特点

FlashDriver程序和boot程序的ld文件不同,FlashDriver需要在ld文件中指定RAM地址,这样生成的代码的地址就固定在RAM里。
为了安全的考虑,会尽可能的避免在代码中固化有对flash空间进行擦除或写入的操作,主要为了避免在程序跑飞时误调用该部分代码,使软件代码部分受到破坏。
通过34服务将地址告诉下位机。下位机通过指针调用烧写函数。

五. ECU刷写流程汇总

在车载ECU软件刷新的时候,会使用到FlashDriver。刷写主流程见下面。主机厂会对刷写流程及校验算法做出规定,并且刷写流程基本没有太多差别。
所以我们下载的flash driver其实可以认为是擦写flash的一段代码下载到指定的ram位置。

1)刷写前准备

1)进入扩展会话SID$10$03
2)解锁安全密钥
3)检查预编程条件
4)SID$85关闭DTC记录
5)SID$28停发APP报文及NM报文
上面的步骤4和步骤5目的是在Download FlashDriver和APP之前,增加带宽。

2)刷写主流程

1)进入编程会话
2)解锁boot级别的安全密钥
3)写指纹信息
4)请求下载flash driver
5)下载flash driver
6)完成flash driver下载
7)检查flash driver有效性
8)擦除pflash
9)请求下载app file
10)下载app file
11)完成app file 下载
12)检查app file程序有效性

3)刷写完成流程

1)进入扩展会话
2)28使能APP和NM
3)85打开DTC记录
4)进入默认会话

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

进击的横打

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值