诊断会话-10
注意:不同的会话可以相互切换,通常所有的会话都可以切回默认会话,
而编程会话一般只会在扩展会话下进入,除了默认会话不需要保持之外,其他会话均需要发送指令来维持会话,否则超时之后返回默认会话。
编程会话是不能够由默认会话跳转到编程会话的,只能由扩展会话跳转到编程会话。但ECU处于默认会话的时候,执行了10 02 编程会话的请求,ECU会回复7E NRC的否定响应。
Tester端会利用S3Client周期发送Tester present给ECU,ECU收到Tester present比如说3E 00,3E 80的服务请求,会让ECU维持在非默认会话,
如果Tester端S3server这个时间内,比如5000毫秒时间内,都没有给ECU发送任何诊断请求报文,那么ECU就会从非默认会话跳转到默认会话;
如果ECU处于解锁状态,也会从解锁状态跳转到锁定状态
1:请求
sun_function
01 默认会话 等级最低
02 编程会话 比如:下载程序 和 进入工厂模式, 只能先进入扩展会话后才能进入编程会话
03 扩展会话 比如:对DTC的控制,解锁,写DID ,Routine control 等
eg.请求:02(字节长度) 10 03 00 00 00 00 00 扩展会话
2:肯定响应
P2Server_max:ECU接收到请求消息到 开始发送响应消息之间的定时器要求的值
P2*Server_max:ECU发送了NRC(0x78),到开始发送下一个响应消息之间的定时间要求的值
eg.响应 :06 50(10+40) 03 00 14 03 E8 00 响应扩展会话