当诊断请求的subfuntion不在Server支持的范围内时,则Server会回复”7F 27 12“; 当Server从未接受到request seed的子服务,直接发送Send Key至Server时,那么此时Server则会回复“7F 27 24”; 当securityDataRecord超出规定的范围时,则Server会回复“7F 27 31”; 当发送完request Seed的子服务之后但是执行send key步...
其中sub-function占据7位: sub-function :0x00-0x7F spr=1 该字节范围 0x00-0xFF spr=0 该字节范围 0x00-0x7F 注:spr存在的目的是告诉ECU针对某个服务请求是否需要发送正响应数据,用于减少ECU发送不必要的响应,节约系统资源: spr=1, 抑制正响应,即ECU不给出正响应; spr=0, 需要ECU给出正响应,如果某个...
ECU间隔10ms(即0x0A)后,发送第2条续帧(CF): 22 34 35 36 37 38 39 39(22中的2代表连续帧,2代表连续帧的第二帧) ->DID:例如常见的F185、F190等ISO标准定义的DID,以及用户自己定义的DID。 ->NRC:在ISO 14229 中,负响应代码范围可以划分为3个范围:0x00:正响应参数值; 0x01 ~ ->0x7F:与通信相关...
27服务正响应测试 请求当前会话模式下服务或子功能函数不支持的27服务,期望ECU返回NRC7E或NRC7F 请求子功能函数不支持的27服务,期望ECU返回NRC12 请求格式错误的27服务,期望ECU返回NRC13 请求顺序错误的27服务,期望ECU返回NRC24 发送无效的key,期望ECU返回NRC24 测试NRC35,36,37的机制 无效状态下请求27服务,期望EC...
当诊断请求的subfuntion不在Server支持的范围内时,则Server会回复”7F 28 12“;当发送报文长度或者格式...
正响应规定响应格式必须是请求的SID+40,即请求SID为10,则响应SID为50;请求SID为27,则响应SID为67。负响应规定响应格式必须是7F SID NRC,与正响应不同,这里SID仍为请求的SID,即请求SID为10,那么响应SID仍为10。NRC可理解为什么不能提供正响应的原因,比如说请求的SF不支持,请求的长度不对,等等原因。
0x7F + SID + NRC Physical Addressing:物理寻址,诊断仪与单独ECU进行诊断交互。 Functional Addressing:功能寻址,诊断仪与总线上所有ECU进行诊断交互,即广播模式。 SID:Service Identity NRC:Negative Response Code Note1:功能寻址下在Request中SubFunction的最高位bit7若置0x01,正响应会被抑制,即不回复正响应,负响...
否定相应:7F SID NRC(否定相应码) 否定相应格式一定,SID对应请求的SID,NRC为Negative Response Code,即会有一些类似于一个指令格式或数据是否正确的判断,在发送不是一个正常指令时,ECU就会给你这个NRC,相当于一个提示,可以通过不同的NRC判断指令的错误原因。比如常见的7E表示SF在此会话不支持(在编程会话发10 03即...
14:26:35:239:收到0x790 7f 27 78表示响应等待。 14:26:35:240:随后收到0x790 67 02,表示验证通过。 4、检查刷写预条件 14:26:35:240:发送0x720 31 01 df fd检查刷写预条件。 14:26:35:246:收到0x790 71 01 df fd 00表示刷写预条件满足。
0x7F ISOSAEReserved(保留) DiagnosticSessionControl用于控制ECU在不同的session之间进行转换,session可以看作是ECU所处的一种软件状态,在不同的session中诊断服务执行的权限不同。 ECU上电之后,默认处在defaultSession中,在这个session中很多诊断服务不可以执行,很多诊断相关的数据不能读取或写入。一般的诊断仪启动之后,...