大家好,我是嵌入式老林,从事嵌入式软件开发多年,今天分享的内容是UDS诊断清除诊断信息0X14服务介绍,希望能对你有所帮助
一、清除诊断信息服务介绍
0X14清除诊断信息服务,顾名思义是用来清除诊断信息的,可清除一个或多个ECU内存中的诊断信息。
可清除单个DTC,可以按组清除DTC,也可以清除全部DTC。
当清除诊断信息服务被完全处理时,服务端需发送肯定响应。即使没有存储DTC,也需要发送肯定响应。
如果服务器在内存中支持DTC状态信息的多个副本(例如,一个RAM副本和一个EEPROM副本),则服务器应清除ReadDTCInformation状态报告服务使用的副本。其他副本(例如长期内存中的备份副本)根据适当的备份策略进行更新(例如,在电源锁定阶段) 。
通过此服务重置/清除DTC信息包括但不限于以下内容:
DTC状态字节
捕获DTC快照数据
捕获DTC扩展数据
其他DTC相关数据,例如DTC专用/最近的DTC,标志,计数器,定时器等
二、数据格式
2.1 请求报文
请求报文格式简单,SID加一个参数groupOfDTC,这个参数3个字节表示DTC组(例如,动力总成,车身,底盘)或要清除的特定DTC,这个服务请求报文格式也是没有sub-function的
2.2 groupOfDTC参数
2.3 肯定响应
只回复SID,不像其他服务,肯定响应后面会跟sub-function或参数
2.4 否定响应
格式:[0X7F] + [SID] + [NRC]
三、举例子
当前负责的某项目中,只支持清除所有DTC,不支持清除0xFFFF33排放组,所以执行14服务,groupOfDTC参数为FFFF33时,回复否定响应,NRC为0X31
最后,如果觉得有帮助,希望你能点个关注,一键三连,感激不尽