目录
一、前言
诊断服务按类划分为6个功能单元,包括诊断和通信管理功能单元、数据传输功能单元、传输存储的数据功能单元、输入输出控制的功能单元、远程激活例程功能单元、上传下载功能单元
二、诊断服务标识符
ID划分:
请求服务标识符SI范围00-FF,请求标识符的ID:X0XX XXXX(第6位为0);
肯定响应服务ID=请求服务ID+0x40
否定响应服务ID为0x7F + NRC
具体诊断服务ID:
10:控制诊断会话,一般01-03,也可以定义自己的session,比如超级会话06
11:使ECU复位,包括硬件复位01,软件复位02
27:安全相关,对于某些不希望别人读到的数据,27加解密
28:网络控制,禁止或者打开网络收发
3E:告诉ECU保持某个非默认会话模式
83-87:是一些设置控制相关服务
22-3D:读写数据服务,包括直接读写和E2PROM读写
14、19:是诊断故障码DTC服务
2F:IO控制服务
31-37:启动例程和刷写服务
否定响应:
否定响应表示ECU不满足请求的条件,不支持该服务,或者无法给出正确的响应
0x12:不支持请求服务的子功能
0x13:表示报文的数据长度(或者格式)不符合标准
......
三、服务响应执行规则
(1)物理寻址
对于带子功能参数的请求消息响应,对于物理寻址的客户端请求消息:NRC为11表示不支持服务标识符,12表示不支持这个子功能。
对不带子功能参数的请求响应(物理寻址):如果支持服务标识符但是发生了某些错误,NRC=xx;如果不支持该参数,回复0x31,如果不支持服务标识符,NRC=0x11
(2)功能寻址
对于带子功能参数的请求消息响应(功能寻址):
对于不带子功能参数的请求消息响应(功能寻址):
四、诊断流程
根据上述服务标识符适用会话类型:默认会话模式或者非默认会话模式,如果诊断需要在非默认会话模式进行则需要切换会话模式用到10控制会话服务
如果需要操作机密的数据,需要适用27安全验证服务
31启动例程Routine去擦除指定区域的数据,34去请求将软件包下载到指定的地址块,36传输数据,37离开传输数据,如果数据传输完毕,使用31对程序进行校验。
五、定时参数
应用层定时参数:
REQ:02 10 01
RES:06 50 01 P2CAN P2*CAN
P2CAN 表示从接收到一个数据包到返回数据包被确认的时间间隔,最大值50ms
P2*CAN表示应用层在忙暂时无法处理当前发过来的请求,需要发送方等一段时间,这时回复一个否定响应码0x78,最大值5000ms
会话层定时参数:
发送3E服务的请求间隔时间,比如说10 03 ECU处于非默认会话状态下,如果超过5000ms没有发送3E的请求,ECU认为超时,ECU会回到默认会话状态;推荐发送3E的时间间隔是2000ms
六、诊断和通信管理功能
(1)0x10服务
用于使能服务器不同的诊断会话:默认会话模式和非默认会话模式(编程模式、扩展模式),不同的诊断会话有不同的功能,不同的定时参数、受到不同的安全访问保护;0x10服务对应的子功能包括:
会话模式状态机:
(2)3E服务
向服务器指示诊断仪依然连接在网络上,之前激活的特定诊断服务和通信功能依然保持激活状态
周期性发送3E 00/80; 3E 80 子功能最高位置为1表示不需要肯定响应
支持的否定响应码:0x12 不支持请求服务子功能,0x13请求报文数据长度不对
七、数据传输功能
(1)22/2E读写由数据标识符定义的数据
03 22/2E DID_H DID_L,2字节参数,DID
示例:
读写VIN的例子:
八、故障信息功能
19服务:
J1939-73 DTCFormat:
SPN:表示哪种故障类型
FMI:表示程度由高到低,由大到小, 由不足到超出
CM:表示转换方式
OC: 表示发生次数
ISO14229-1、ISO15031-6 DTC格式:
ISO14229-1中第4个字节状态有8个bit,每个bit的含义如下:
2pending的DTC表示不确定的DTC
ISO15031-6的DTC格式如下:
19服务子功能:
statusOfDTC:描述某个DTC状态
DTCStatusMask:DTC状态掩码,表示想请求哪一类的DTC
DTCStatusAvailabilityMask:ECU支持的DTC状态
19 01 + DTCStatusMask(08)
19 02 + DTCStatusMask
DTCStatusMask:01表示当前的故障码; 08表示确认的故障掩码
19服务响应 : 59 01 +故障DTC数量
59 02 +ECU支持的故障掩码
14服务清除DTC
04 14 FF FF FF 00 00 00
九、示例
27 01 请求秘钥(种子)
27 02 请求解锁
参考:
UDS入门:https://blog.csdn.net/cheatscat/article/details/109493618
UDS诊断基础:https://www.bilibili.com/video/BV1wt4y1D71K/?spm_id_from=333.788.recommend_more_video.0