19服务作用是允许外部诊断仪(Client)通过该服务读取存储在ECU芯片内的故障码(DTC)状态信息
一、服务概述
为了方便找到故障的原因,在对应故障发生时,ECU端要记录发生故障时的快照信息;而04服务就是用于请求指定故障码(DTC)的快照信息,通过查找故障发生时刻的这些数据,来分析故障原因。DTC快照信息的典型用法是检测到系统故障时,存储当前环境信息,比如记录故障发生时的车速,发动机转速,发生时间等。该功能目的在于简化技术人员的故障隔离过程。
二、报文
1.请求报文定义
DTCSnapshotRecordNumber: DTC快照记录码,占一个字节,表示特定的 DTC快照数据记录编号。DTC 快照可以分为不同的组,包含不同的快照信息,用这个个快照记录码表示请求的是那组快照。例如当我们需要记录某个DTC第一次发生(假设用1表示)和最近一次发生的快照数据时(假设用2表示);那么当DTCSnapshotRecordNumber为1时,则表示请求该DTC第一次发生时的快照信息。取值范围:)0x01~0xFE,0x00被标准保留,oxFF表示请求所有组。
2.肯定响应
注:如果诊断仪请求的DTC或快照数据编号ECU不支持,那么应该返回否定响应码0x31;
如果DTC和快照记录编号都支持,但ECU中当前没有存储这个DTC的快照信息(eg.这个DTC对应的故障没有发生),那么ECU应返回肯定响应,但响应只包含59 04+DTC+DTC状态,不包含快照记录信息
3.报文讲解
3.1格式及内容
发 送:19 +04+DTC故障码+快照记录码
正响应:59+04+DTC故障码+DTC状态位+快照记录码+快照信息个数+快照DID+对应的快照DID数据…
3.2举例
每个快照ID及数据长度是根据客户指定协议来实现的