[UDS]我的14229学习之旅 (三)—— 0x11(ECUReset)

概念

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容