1. 系列介绍
本系列Autosar 诊断入门介绍,会详细介绍诊断相关基础知识,如您对诊断实战有更高需求,可参见诊断实战系列专栏,快速链接:Autosar诊断实战系列导读
如您MCAL配置,通信,诊断Autosar全栈等实战有更高需求,可以参见AutoSar 实战进阶系列专栏,快速链接:AutoSar实战进阶系列导读
UDS(Unified Diagnostic Services)协议,即统一的诊断服务,是面向整车所有ECU的一种诊断通信方式,是基于ISO 14229规范的规范化诊断服务标准,其位于OSI模型中的应用层,UDS可基于不同的总线实现,如基于CAN总线可再结合ISO1576协议进一步实现传输层,本篇将介绍22服务相关内容:
22服务概述
22服务其英文全称:ReadDataByIdentifier Service,为通过DID读取数据的服务,例如,在使用中可以通过22服务去获取软件的版本号,车辆VIN码等信息。
在接收到22服务请求后,服务器应访问由DID参数指定的记录的数据元素,并在包含相关数据记录参数的单个DID肯定响应中传输其值。请求消息可以多次包含相同的DID。服务器应将每个DID视为一个单独的参数,并根据要求经常使用每个DID的数据进行响应。
22服务为获取对应DID的数据,其大致使用方式如下图:
2. 22服务请求与应答
2.1 22服务请求
22服务请求:22 DID
2.2 22服务正响应
其正响应如下:
2.2 22服务否定应答
如应答为否定应答,则对应的否定NRC代号对应解析:
3. 22服务使用示例
例如当需要读取DID编号为F190中的数据
报文发送:
报文响应: