UDS(六)应用层 11/27

1. ECUReset (0x11) service
  该诊断服务简称ECUR诊断服务,客户端通过该诊断服务命令服务器(电控单元)复位。服务器应先发送肯定响应报文,再执行复位。

1.1 请求格式:SID + sub function

  请求SID:0x11格式固定两个字节,第一个字节为SID:0x11;第二字为sub function参数,用于请求ECU将以何种方式复位。如下图所示:
在这里插入图片描述

sub function参数如下:
0x00 : ISOSAEReserved
0x01 : hardReset
0x02 : keyOffOnReset
0x03 : softReset
0x04 : enableRapidPowerShutDown
0x05 : disableRapidPowerShutDown
0x06 – 0x3F :ISOSAEReserved
0x40 – 0x5F :vehicleManufacturerSpecific
0x60 – 0x7E :systemSupplierSpecific
0x7F:ISOSAEReserved

1.2 响应格式:response SID + sub function + parameter

  积极响应格式分为三部分:第一部分:一字节response SID:0x51; 第二部分:一字节sub function;第三部分:一字节powerDownTime(只有请求sub function为0x04时,才会响应该参数)。如下图所示:
在这里插入图片描述
1.3 举例
在这里插入图片描述

2. SecurityAccess (0x27) service

  SecurityAccess :ECU有些数据是整车厂独有,不希望随便被读写或者一些诊断服务,需要进行安全验证,unlocked后才能访问,默认情况下是locked状态。一般情况下,从非default Session切换至default session或者重启会回复为locked状态,需要重新unlocked才能进行相应的访问。

完成SecurityAccess 有以下步骤:

1.诊断仪向ECU请求“Seed”(通常是一个与时间相关的伪随机数),
2.ECU向诊断仪发送“Seed”,
3.诊断仪向ECU发送“Key1” (根据请求得到的Seed和一个本地的算法进行计算得来)
4.ECU判断诊断仪发来的“Key1”是否有效(ECU也通过相同的seed和算法计算出key2,然后key1和key2进行匹配,匹配成功则unlocked)
在这里插入图片描述

2.1 请求格式:SID +sub function + parameter

  根据UDS的定义,0x01,0x03, 0x05, 0x07 – 0x41 这个范围留给用于requestSeed的sub-function;0x02,0x04, 0x06, 0x08 – 0x42这个范围留给用于sendKey的sub-function。requestSeed和sendKey是成对存在的,当requestSeed为2n-1时,sendKey就等于2n。具体选择哪对值,由整车厂自己定义。整车厂也可以选择多对sub-function,用于不同等级的安全访问。生成的key值字节数大小取决于整车厂。

格式参数如下图所示:
在这里插入图片描述
2.2 响应格式:response SID + sub function + parameter

  ECU反馈给诊断仪的seed值字节数大小取决于整车厂。ECU响应诊断仪的seed请求格式如下图所示:
在这里插入图片描述
2.3 举例
在这里插入图片描述

UDS协议栈系列文章:

UDS(一)入门概述

UDS(二)网络层

UDS(三)网络层时间参数

UDS(四)应用层

UDS(五)应用层10/3E

UDS(六)应用层11/27

UDS(七)应用层28/85

UDS(八)应用层22/2E

UDS(九)应用层14/19

UDS(十)应用层34/36/37

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值