前面讲到了UDS通讯的过程,诊断内容如何被串行总线传输的,那么被传输的诊断内容都有哪些呢。协议文档里一般都有比较长的篇幅来讲解各个UDS服务的内容,以及应用场景。
下面带你一张表速查常用UDS诊断服务
注
SF:为子功能 sub-function
DATA:字节参数
NRC:否定响应码用于指示请求不能执行的原因。常用的NRC及其优先级如下:
-
NRC 0x11:服务不支持;
-
NRC 0x7F:在当前会话不支持;
-
NRC 0x13:请求的服务或子功能超出ECU的能力;
-
NRC 0x12:子功能不支持;
-
NRC 0x7E:在当前会话不支持子功能;
-
NRC 0x33:服务或子功能不支持在当前的安全访问级别;
-
NRC 0x24:服务或子功能不支持在当前的ECU状态;
-
NRC 0x31:请求的数据标识符(DID)不支持;
-
NRC 0x22:请求的数据超出范围;
-
NRC 0x78:安全访问失败。
NRC的优先级
在多个NRC可响应的情况下,NRC的优先级决定了先回复哪个NRC。NRC的优先级从高到低排列为:NRC 0x11 > 0x7F > 0x13 > 0x12 > 0x7E > 0x33 > 0x24 > 0x31 > 0x22 > 0x78