1. 概述
上文讲了28服务通信控制,可以停止通信报文的收发,本文讲85服务——控制DTC(故障码)设置。
在ECU中,每个DTC都有一个状态,为一字节,每一位有不同的含义,例如bit0代表故障当前正存在。我们后文19服务中还会再详细讲,这里只需要知道通过DTC的状态可以得到这个故障当前是否发生、是否被确认等信息。
正常情况下,ECU的故障检测功能模块会根据故障检测结果实时更新每个DTC的状态。而85服务就可以用来停止ECU更新DTC状态,简单来说就是停止故障检测功能,不记录新的DTC,原来记录的DTC状态保持不变。
在停止DTC状态更新期间,读取故障码的19服务和清除故障码的14服务功能不受影响,也就是故障码仍旧能被正确读取和清除,只是不会被更新状态。
控制DTC服务也是在扩展会话下执行的,且通常和前文的28服务结合使用,当使用28服务停止某个或某些ECU的通信报文后,会导致其它接收这些ECU通信报文的ECU记录丢失通信故障码,所以通常要先发送85服务指令来停止DTC记录,再发送28服务指令。
85服务的应用场景主要有:
- 在给某个ECU更新程序时,该ECU会停