目录
一、0x10服务(诊断会话控制)简介
DiagnosticSessionControl(诊断会话控制)服务用于启用服务器中的不同诊断会话。
服务说明:
① 服务器中应该始终只有一个有效诊断会话
② 服务器上电时应始终启动默认会话
该服务是在服务器端使能不同的会话模式,而诊断会话模式在服务器中用于启用一组特定的服务或者功能(e.g.刷写)。可以通过会话模式赋予不同诊断服务的执行权限。
UDS中各服务所需要的会话权限:(x表示支持、N/A表示不支持)
二、0x10服务信息格式
(1)请求格式
整体请求格式:
subFunction子服务定义:
(2)正响应格式
(3)负响应格式
三、0x10服务举例
(1)如:请求拓展诊断权限
TX:02 10 03 00 00 00 00 00
RX:06 50 03 00 32 01 F4 00
激活时长与激活最长时长:
- P2server_max = 00 32 ms = 0x32 * 1ms = 50 ms
- P2*server_max = 01 F4 ms = 0x1F4 * 10ms = 5000 ms = 5s
(2)如:请求安全系统诊断权限
TX:02 10 04 00 00 00 00 00
RX:03 7F 10 12 00 00 00 00
注:否定响应标识(0x7F) + SID + NRC(否定响应码,说明拒绝诊断服务的理由)
该响应为负响应,12表示不支持该子服务。