概念
0x11(ECUReset)服务的主要作用是使用ECUReset服务来请求服务器重置。成功重置服务器后,服务器应激活DefaultSession。
服务特殊性
通常来说,ECU在收到一条诊断指令后,要先进行相应的处理,执行某些诊断操作,完毕后再发送肯定响应。但是ECU复位服务是个特例,因为它的诊断操作是复位,这时候这个ECU就会重新开始运行,此时ECU也不会记得你前面发过诊断指令,所以复位后没办法ECU就没办法再去发送诊断响应,所以要先发送肯定响应,再执行复位。
报文格式
请求报文
ResetType在ISO14229-1上已经定义好了,一般常用的就是
01 硬件复位
02 钥匙电复位
03 软复位
肯定响应
这里需要解释一下第三个参数 powerDownTime。从正响应的格式说明里面,我们可以得知这里是只有当请求的子功能位0x04(enableRapidPowerShutDown)时,该参数才被使用。
它的取值范围是 [00 ~ FF]。其中有效值是 [00~ FE]。长度为1字节,分辨率是1s。转化为十进制值的范围是 0~254。当值位FF时,则会出错或者出现时间不可用。
否定响应
这里需要解释一下NRC0x33,复位会影响ECU的正常功能,所以有的供应商或主机厂把0x11服务定义为在解锁状态下才能执行,如果在上锁状态下收到该请求,ECU应返回否定响应码0x33。
举例
ISO14229-1上给的例子如下,Tester发送11 01,ECU回复51 01
结尾
END