UDS报文-【19】读取DTC

19 子功能

子功能ID详情描述
0x01reportNumberOfDTCByStatusMask检索匹配状态掩码的DTC个数
0x02reportDTCByStatusMask检索匹配状态掩码的DTC
0x04reportDTCSnapshotRecordByDTCNumber检索匹配DTC状态掩码的DTCSnapshot记录数据
0x06reportDTCExtDataRecordByDTCNumber根据客户定义的DTC掩码和DTCExtendedData记录编号检索DTCExtendedData记录数据
0x0AreportSupportedDTC检索目标ECU支持的所有DTC的状态

常用子功能详解

DTC 格式

DTC格式ID使用的规范助记符
0x00ISO 15031-6规范J2012-DADTCF00
0x01ISO 14229-1规范14229-1DTCF
0x02SAE J1939-73规范J1939-73DTCF
0x03ISO 14229-4规范14229-4DTCF
0x04ISO 27145-2规范J2012DADTCF04
0x05`0xff保留-

状态掩码
每一个DTC都已一个状态掩码,当发生了响应的故障,会设置响应的状态为,然后和DTC预先设置的状态掩码值进行与的运算,进入得到DTC的掩码。
状态掩码参考

bit英文描述备注
bit 0testFailed当前是否检测到DTC
“0”=DTC测试的最新结果表明未检测到故障。
“1”=DTC测试的最新结果表明了一个成熟的失败结果。
bit 1testFailedThisOperationCycle当前点火周期是否检测到错误
“0”=testFailed:在当前操作周期内或在当前操作周期内调用ClearDiagnosticInformation后,尚未报告testFailed结果。
“1”=testFailed:在当前操作周期中至少报告了一次testFailed结果。
bit 2pendingDTC当前及上衣点火周期是否检测到错误
“0”=在完成测试完成且未检测到故障的操作循环后或调用ClearDiagnosticInformation服务时,该位应设置为0。
“1”=如果在当前操作循环中检测到故障,则该位应设置为1并锁定。
bit 3confirmedDTC历史确认故障码
“0”=自上次调用ClearDiagnosticInformation后,或在满足故障诊断码的老化条件(或由于故障记忆溢出而清除了故障诊断码)后,从未确认过故障诊断码。
“1”=自上次调用ClearDiagnosticInformation后至少确认一次的DTC,且尚未满足老化标准。
bit 4testNotCompletedSinceLastClear至上次清除测试未完成
“0”=自上次清除诊断信息以来,DTC测试至少返回一次测试结果(无论通过或失败)。
“1”=自上次清除诊断信息后,DTC测试尚未运行到完成。
bit 5testFailedSinceLastClear至上次清除检测到错误
“0”=自上次清除诊断信息后,DTC测试未显示失败结果。如果满足老化阈值或发生故障记忆溢出,则车辆制造商应负责将该位重置为零(“0”)。
“1”=自上次清除诊断信息以来,DTC测试至少返回一次失败结果。
bit 6testNotCompletedThisOperationCycle当前激活周期测试未完成
“0”=DTC测试在当前驾驶循环期间(或自上次在当前操作循环期间清除诊断信息以来)完成。
“1”=此操作循环(或自上次清除此操作循环的诊断信息后),DTC测试尚未运行到完成。
bit 7warningIndicatorRequested警告指示灯
“0”=服务器未请求warningIndicator处于活动状态。
“1”=服务器正在请求warningIndicator处于活动状态。

19 01 (通过状态掩码请求DTC的数量)

请求格式

字节编号参数名称data描述
1ReadDTCInformation Request SID0X19读取DTC
2reportNumberOfDTCByStatusMask0X01通过状态掩码请求DTC的数量
3DTCStatusMask0X00~0XFF需要匹配的状态掩码

肯定应答格式

字节编号参数名称data描述
1ReadDTCInformation Ask SID0X59响应标识
2reportNumberOfDTCByStatusMask0X01通过状态掩码请求DTC的数量
3DTCStatueAvailabilityMask0X00~0XFF匹配的状态掩码
4DTCFormatID0X00~0X04DTC格式ID
5DTCCount Hight0X00~0XFFDTC数量高字节
3DTCCount low0X00~0XFFDTC数量低字节

示例

tester ECU 19 01 01 59 01 01 00 00 01 肯定应答 tester ECU

示例解析

字节编号data描述
10X19读取DTC
20X01通过状态掩码请求DTC的数量
301状态掩码= 0000 0001B:当前是否检测到DTC
字节编号data描述
10X59响应标识
20X01通过状态掩码请求DTC的数量
30X01匹配的状态掩码
40X00DTC格式ID
50X00DTC数量高字节
30X01DTC数量低字节

19 02 (通过状态掩码请求DTC)

请求格式

字节编号参数名称data描述
1ReadDTCInformation Request SID0X19读取DTC
2reportDTCByStatusMask0X01通过状态掩码请求DTC
3DTCStatusMask0X00~0XFF需要匹配的状态掩码

肯定应答格式

字节编号参数名称data描述
1ReadDTCInformation Ask SID0X59响应标识
2reportDTCByStatusMask0X01通过状态掩码请求DTC
3DTCStatueAvailabilityMask0X00~0XFF匹配的状态掩码
4~6DTC_1 Hight0X00~0XFFDTC 1
7DTC_1 Status0X00~0XFFDTC 1 状态字节
8~10DTC_2 Hight0X00~0XFFDTC 2
11DTC_2 Status0X00~0XFFDTC 2 状态字节

示例

tester ECU 19 02 09 59 02 09 01 22 87 09 肯定应答 7F 19 13 否定应答 tester ECU

示例解析

字节编号data描述
10X19读取DTC
20X02通过状态掩码请求DTC
302状态掩码= 0000 0001B:当前是否检测到DTC,历史DTC
字节编号data描述
10X59响应标识
20X02通过状态掩码请求DTC
30X02匹配的状态掩码
4~60X01 0X22 0X87DTC码
70X09DTC 状态码

19 0A (读取支持的DTC)

请求格式

字节编号参数名称data描述
1ReadDTCInformation Request SID0X19读取DTC
2reportSupportedDTC0X0A检索所有支持的DTC

肯定应答格式

字节编号参数名称data描述
1ReadDTCInformation Ask SID0X59响应标识
2reportSupportedDTC0XA0检索所有支持的DTC
3DTCStatueAvailabilityMask0XFF匹配的状态掩码
4~6DTC_1 Hight0X00~0XFFDTC 1
7DTC_1 Status0X00~0XFFDTC 1 状态字节
8~10DTC_2 Hight0X00~0XFFDTC 2
11DTC_2 Status0X00~0XFFDTC 2 状态字节
tester ECU 02 19 0A AA AA AA AA AA 单帧,长度,功能码:读取DTC,子功能码:遍历所有DTC 03 7F 19 78 AA AA AA AA 单帧,长度,否定响应,功功能码,否定响应码:通知接收端等待发生的应答NPDU 10 17 59 0A 09 17 DA 00 首帧,长度,肯定应答,子功能,匹配状态码,DTC码 30 00 00 AA AA AA AA AA 流控帧,FS,BS,STmin, 21 00 17 DB 00 00 17 F9 多帧,NS,数据 21 00 00 C0 73 88 08 D1 23 22 87 09 AA AA AA AA tester ECU
  • 23
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: UDS 1906是指在诊断通信协议中用于读取扩展数据的服务。根据引用\[1\]中的描述,旧版本和新版本的扩展数据读取方式有所不同。在旧版本中,需要先创建扩展记录组,然后再创建数据内容。不同之处在于扩展记录中不需要再创建DID,直接创建数据内容即可。而在新版本中,扩展记录的创建方式也是在FaultMemory路径下,但不再选择DID,而是直接添加数据。引用\[2\]中提到,DTCExtDataRecordNumber是用来将扩展数据分组的编号,类似于快照记录的DTCSnapshotRecordNumber参数。扩展记录组编号的具体使用标准中没有更详细的要求,可以由用户自定义。在肯定响应报文中,扩展记录的格式与快照记录类似,但不再包含数据的DID。这意味着扩展记录每组中包含的数据、格式和顺序都需要事先定义好,并且ECU在返回响应时必须严格按照之前的定义返回,不再使用DID进行标识。\[3\] #### 引用[.reference_title] - *1* *2* *3* [汽车UDS诊断详解及Vector相关工具链使用说明——2.3.6 读取DTC扩展数据记录(0x19 06)](https://blog.csdn.net/weixin_42967006/article/details/117600259)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值