以CAN总线网络举例。
CAN帧一共8个字节,根据ISO15765-2的规定第一个字节被网络层占用。
进入01会话成功
Tester 发送给ECU进去01会话模式:
02 10 01 55 55 55 55 55
ECU回复Tester进入01会话成功:
06 50 01 00 32 00 C8 AA
进入02会话失败
Tester 发送给ECU进去02会话模式:
02 10 02 55 55 55 55 55
ECU回复Tester进入02会话失败:
03 7F 10 7E AA AA AA AA
进入03会话成功
Tester 发送给ECU进去03会话模式:
02 10 03 55 55 55 55 55
ECU回复Tester进入03会话成功:
06 50 03 00 32 00 C8 AA
请求(Request):02 10 02 xx xx xx xx xx;02是网络层单帧SF,表示应用层包含有2个字节,10是服务ID(SID),02是子功能——进入编程会话。但ECU拒绝了它的请求。
摘自ISO 14229-1:2013 p39
从上面的图标可知10服务具有请求报文格式,M意味Mandatory强制需求,可以看到10服务仅有两个字节,整条报文是“服务ID+子功能”,比较简单。
肯定响应:02 50 02 xx xx xx xx xx;02即应用层含两个字节,50 = 10 + 40表示SID的肯定回复,02是子功能。
否定响应:03 7F 10 7E xx xx xx xx;03即应用层包含三个字节,10是SID,7E是NRC(否定响应码)。
|