消息!UDS 诊断教程 (二)
UDS定义的诊断服务从逻辑来说分为以下几类:1 DiagnosticandCommunicationManagement(诊断和通信管理)2 DataTransmission(数据传输)3 Stor
UDS 定义的诊断服务从逻辑来说分为以下几类:
1. Diagnostic and Communication Management (诊断和通信管理)
(资料图片)
2. Data Transmission (数据传输)
3. Stored Data Transmission (存储数据传输,用于操作 DTC)
4. InputOutput Control (IO 控制)
5. Routine Control (不知如何翻译好,作用是调用 ECU 内部的预置函数)
6. Upload Download (上传下载)
UDS 规定使用 1 个 byte 来表示诊断服务,即所谓的 Service ID,简称 SID。本文介绍一下
Diagnostic and Communication Management 这一类诊断服务中的一部分。
DiagnosticSessionControl (0x10)
DiagnosticSessionControl 这个服务的 SID 是 0x10,request 固定为 2 个 byte,第一个
byte 是 SID,第二个 byte 的低 7bit 是 sub-function,用于指示 ECU 将进入的 session。
UDS 定义的 session 包括:
0x00 ISOSAEReserved(保留)
0x01 defaultSession
0x02 ProgrammingSession
0x03 extendedDiagnosticSession
0x04 safetySystemDiagnosticSession
0x05 – 0x3F ISOSAEReserved(保留)
0x40 – 0x5F vehicleManufacturerSpecific(由整车厂自定义使用)
0x60 – 0x7E systemSupplierSpecific(由 ECU 供应商自定义使用)
0x7F ISOSAEReserved(保留)
DiagnosticSessionControl 用于控制 ECU 在不同的 session 之间进行转换,session 可以
看作是 ECU 所处的一种软件状态,在不同的 session 中诊断服务执行的权限不同。 ECU
上电之后,默认处在 defaultSession 中,在这个 session 中很多诊断服务不可以执行,很
多诊断相关的数据不能读取或写入。一般的诊断仪启动之后,会给 ECU 发送 10 03,即
让 ECU 进入 extendedDiagnosticSession 中,在这个 session 中可执行的诊断服务就很
多了。而如果要让 ECU 保持在 non-defaultSession 中,则需要诊断仪每隔固定的时间发
送 0x3E 服务,ECU 才会知道诊断仪有和自己通信的需求,从而保持在 non-
defaultSession 中。另一个常用的 session 是 ProgrammingSession,在这个 session 中
可以进行软件刷写的一系列诊断服务。0x40 – 0x5F 这个范围中的 session 由整车厂自定
义使用,比如,某些诊断服务或诊断数据的操作需要在生产线上执行,即所谓的 End-Of-
Line,整车厂可以从这个范围中选择一个值来表示 EOL session;又或者在开发阶段需要
某种“超级”session,则也可以从这里选一个值用来使 ECU 进入开发模式的 session。
DiagnosticSessionControl 这个服务非常简单,但是它却是 ECU 和诊断通信的第一条诊断
命令。
这个诊断服务的 response 分为三部分,第一部分是 0x50,作为 SID 的 echo;第二部分
是进入的 session,作为 sub-function 的 echo;第三部分是 4 个字节,前两个字节代表
P2Server_max,即 ECU 在应用层上对诊断命令的响应时间,后两个字节代表
P2*Server_max
,即 ECU 在暂时无法处理当前诊断命令(具体表现为发送了 NRC 0X78),在应用层上
对诊断命令响应的最长时间。
ECUReset (0x11)
ECUReset 这条指令的用途是通过诊断请求使 ECU 重启。
ECUReset 这个服务的 SID 是 0x11,request 固定为 2 个 byte,第一个 byte 是 SID,第
二个 byte 的低 7bit 是 sub-function,用于指示 ECU 将模拟哪种方式进行重启。
常用的 sub-function 包括(只举 2 个例子,UDS 还定义了很多其他的值)
0x01 hardReset 模拟 KL30 的重启
0x02 keyOffOnReset 模拟 KL15 的重启
当我们通过诊断命令改写了 ECU 的某些数据,或者对 ECU 进行了某些设置,只有将
ECU 重启才能将这些配置生效,所以就有了这个诊断命令。在 ECUReset 执行之后,
ECU 会从 Non-defaultsession 回退到 defaultsession 中。
SecurityAccess (0x27)
厂家可能会为 ECU 定义某些安全级别稍微高一些的诊断服务,在执行此类服务之前,就
需要执行 SecurityAccess 这个诊断命令,进行一个简单的身份验证。
完成 SecurityAccess 有以下步骤:
1. 诊断仪向 ECU 请求“Seed”(通常是一个与时间相关的伪随机数),
2. ECU 向诊断仪发送“Seed”,
3. 诊断仪向 ECU 发送“Key” (根据请求得到的 Seed 和一个本地的密码进行计算得来)
4. ECU 判断诊断仪发来的“Key”是否有效
根据 UDS 的定义,0x03, 0x05, 0x07 – 0x41 这个范围留给用于 requestSeed 的 sub-
function;0x04, 0x06, 0x08 – 0x42 这个范围留给用于 sendKey 的 sub-function。具体选
择哪对值,由整车厂自己定义。整车厂也可以选择多对 sub-function,用于不同等级的安
全访问。
下面我举一个完成 SecurityAccess 的诊断命令的例子,假设 0x05 用于 requestSeed,
0x06 用于 sendKey。
诊断仪发送 27 05
ECU 响应 67 05 01 01 01(seed 是 01 01 01)
诊断仪发送 27 06 02 03 04(key 值是 02 03 04,seed 是 01 01 01,假设本地密码为 01
02 03,而算法就是将密码与 seed 相加)
ECU 验证成功 67 06
此时 ECU 就处于 unlocked 的状态了,那些被保护起来的诊断服务和诊断数据可以被操作
了。通常来说,如果 ECU 重启,或者回到了 default session,unlocked 状态就失效了,
如果要执行相关诊断服务,则需要再次执行上面描述的过程。
时间有限,这篇文章里就介绍这三个诊断服务,即 0x10, 0x11, 0x27,后续有时间我再补
充其他的服务。
关键词:
UDS定义的诊断服务从逻辑来说分为以下几类:1 DiagnosticandCommunicationManagement(诊断和通信管理)2 DataTransmission(数据传输)3 Stor
广东绝美“灯光盛宴”来啦!美轮美奂、智能实用!
温州龙湾区积分入学2023年新居民积分赋分标准龙湾区新居民积分入学申请线上办理操作流程:申请人登录“浙里办”APP搜索“浙里新市民”平台,选
工厂里马达轰鸣、铁路站场货运繁忙、就业市场日趋活跃……连日来,记者深入工地厂房、铁路站场、招聘会现场等一线采访,感受开年以来,云南铆
阿布拉汗:真的特别想代表中国队比赛,我会为此付出一切,国足,国奥队,阿布拉汗
非法电子烟酷似儿童玩具分销各地湖北破获首例非法生产销售电子烟案记者 刘欢通讯员徐飞李鹏程外形酷似儿童玩具、
一、西班牙U19联赛杨希与何小珂均首发直播吧3月19日讯今天进行的一场西班牙U19荣誉联赛(全国第一级别)第三组第24
1、不是。2、知富期货是知富国际平台的一项投资项目,像外汇黄金、货币对,比特币,期货原油、个股期权、伦敦金、A50、沪深
1、后面这个“一、二、三”标点符号是正确的,中间应该使用顿号,前面的“一、二,三”中间使用的是逗号,这样的句子里面使用逗
3月18日,在美国首都华盛顿,反战人士在白宫前参加集会。新华社记者刘杰摄18日下午,数百名反战人士在美国首都华盛顿市白宫北侧拉斐特广场举行
通过左路组织的攻势,瑟克塞斯成功突破萨勒马克尔斯,随后将球横传,贝托小禁区内抢点破门,乌迪内斯主场2-1再次领先AC米兰。瑟克塞斯在身体对
为什么不能玩QQ游戏?很多人还不知道,现在让我们一起来看看吧!1、你说的情况我也遇到过,可能是你QQ游戏内部分文件损坏造成的,你可以将原来
赣闽两省往返香港旅客列车4月1日起恢复开行
1、以前是三禁,孙权,曹操,华佗,现在增加了吕蒙为四禁。2、主要是因为他如果一直克己到20张再出的话基本是无解的。3、孙
(2023年3月19日)过去的一年,物业服务行业经历了内外的轮番冲击与洗礼,当下正值估值回顾和行业复苏。2022全年,地产下行,住宅商业等传统物
淮阳区:羲陵海棠花开似锦
他们这一次完全就和中国队对标,希望能够在我们手上多拿几个冠军。首先很清楚对日本队来说,他们本身在这么多个项目中最厉害的肯定就是男双,
一、离婚协商不成一直拖着应该怎么办离婚协商不成一直拖着,应该采取诉讼离婚。找法网提醒您,夫妻一方要求离婚的,可以由有关
读创 深圳商报记者陈燕青根据格上研究统计,2月共有1379家私募机构参与调研,涉及上市公司628家。从上市板块来看,主板公司275家(占比43 72%
硅谷银行金融集团称,周五接到纳斯达克的通知,由于不再符合继续上市的规定,因此其股票将被摘牌。该股在3月10日停牌,将于3
XBOXWIFI png(45 2KB,下载次数:3)2015-6-1010:02上传微软透漏XBOX无线接
1、高铁行李规定禁止携带下列行李物品上车:法律、法规、规章规定承运人不能确定性质的危险品、弹药、化工产品。2、妨碍公共卫生的动物和物品(
【新时代新征程新伟业】市创城督察组来延寿县调研新时代文明实践中心所站建设及创建省级文明城市工作
1、空开是供电回路中的开断元件,负责对回路进行正常的开断操作及事故时的回路切断。2、漏电保护是供电回路保护的一种,当供电
1、可以直接到相关营业厅缴费,可以银行网上营业厅缴款,可以用支付宝。2、也可以去银行办理代扣代缴可以用支付宝,也可以登录
Copyright 2015-2022 欧洲酒业网 版权所有 备案号:沪ICP备2022005074号-23 联系邮箱: 58 55 97 3@qq.com