打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
ECU软件刷写流程

软件刷写又是触碰到我的知识盲区了,之前一直都没有深入这个话题的机会,最近在和客户对这一方面的需求,也是赶鸭子上架,边学边用啊。用这篇文章,把相关的知识都梳理一遍。

其实刷写的流程就是按照UDS的服务,一步一步的进行的,之前我小小总结了一下UDS的知识和其中比较重要的服务,有兴趣的可以看看:UDS基础_Emmayetta的博客-CSDN博客_p2server。在刷写中涉及到了几个没提过的服务,也可以借此机会一并看了。


    • 一般的刷写流程

最重要的还是标准:ISO 14229 Road vehicles-Unified diagnostic Services (UDS),在标准的第17章Non-volatile server memory programming process描述了刷写的流程,实话说我没看仔细,只是需要查找一些问题时才会搜搜。在项目中理解到的一般流程足以帮助理解了:

1.1 预刷新

  1. 通过功能寻址启动各个控制器的扩展会话模式,即1003

  1. 执行扩展会话模式的安全访问,即27服务

  1. 检查先决条件,比如车速信息

  1. 85服务,DTC setting type=off, 即禁止DTC的诊断

  1. 通过功能寻址使控制器使能接受,禁止发送

  1. 通过22服务读取一些DID,比如VIN,HW number, SW version等等

1.2 主刷写

  1. 10服务刷新会话子功能

  1. 27服务安全校验,执行刷新安全级验证

  1. 34服务:请求下载数据

  1. 36服务: 进行数据传输

  1. 37服务:数据传输完成后请求退出传输

  1. 检查刷新完整性和相关性,这里可能涉及到安全算法,CRC校验是很常见的算法

  1. 2E服务写入“指纹信息”

  1. 11服务进行硬复位

1.3 后刷新

  1. 10服务回到默认会话模式

  1. 14服务清除所有DTC

这里穿插一个小点,功能寻址和物理寻址的区别:功能寻址是广播诊断请求,同时等待总线上的ECU给与响应,即一对多;物理寻址发送特定的诊断请求,等待指定的ECU给与响应,即一对一。

    • 刷写过程涉及的UDS服务

  1. 10:诊断会话控制

  1. 11:电控单元复位,强制reset

  1. 27: 安全访问,tester发送seed给到ECU,计算得到key, 再与tester的key进行比较。安全解锁也有不同的级别。

  1. 3E:测试工具保持连接,在非默认会话状态下,S3 timer 超时,也会回到默认会话,如果要一直维持在非默认会话状态下,tester要一直发送3E。

  1. 85:控制DTC设置

  1. 28:通信控制

  1. 22:读取DID

  1. 2E:写入DID

  1. 31:程序控制

  1. 34:请求下载

  1. 36:传输数据

  1. 37:请求退出传输

一次完整的刷写,可以通过记录诊断报文完整地看到这些服务的执行。虽然没有完全搞清楚细节,但是大致流程是比较清晰的。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
基于UDS刷写,0x28、0x85服务可以不用吗?
UDS bootloader刷写报文实例解析
FOTA技术专栏—UDS刷写
【知识点】UDS刷写的一般流程介绍
【图解UDS】UDS汽车诊断开发流程及Vector解决方案工具链介绍
面向OTA需求的汽车电控单元Bootloader设计
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服