一、服务功能:
主要体现为以下几点:
-
10服务是用来使能Server(即ECU)不同诊断会话的一种服务;
-
不同的诊断会话则规定了Server在相应session可以开启的功能权限,即诊断服务权限控制;(核心点)
-
在不同的诊断会话则应使用对应的数据链路层的时间参数;
二、服务请求:
1、01默认会话:
ECU在刚启动时保持的状态,当ECU复位的时候也是会返回默认会话,不需要超时处理。
2、02编程会话:
刷写程序时用的,超时或者刷写失败时会跳转回默认会话,即ECU从底层软件跳转到应用软件。
3、03扩展会话:
通常诊断用的大部分功能以及特殊功能都在这个会话模式下进行。
4、04安全诊断会话:(了解)
仅用于支持安全相关系统的功能;如安全气囊的部署。
5、(0x40-0x5F)整车制造商自定义会话:(了解)
用于支持整车制造商特定的session的诊断功能。
6、(0x60-0x7E)零部件供应商自定义会话:(了解)
用于支持零部件供应商特定的session的诊断功能。
Note:01,02,03会话各自之内,互相之间可以相互转换,除了01向02会话转是转不过去的(一般情况下),不过有些厂家的设计出来的控制器是可以转换的。
请求格式:
三、服务响应
正响应格式:
其中sessionParameterRecord的具体含义如下图7所示,
其中关于P2Server以及P2*Server参数均来源于客户诊断需求规范,按照客户需求配置即可。
四、负响应NRC支持:
12:子功能不支持。
13:报文长度错误。
22:条件不满足。
参考文章: