2024年4月19日发(作者:)

AUTOSARDCM介绍

AUTOSAR诊断协议栈包含DCM和DEM两个模块,其中DEM负责DTC相关的参

数实现(诊断Dem模块介绍),而DCM模模块主要实现UDS和OBD的诊断服务,就是

实现之前UDS文章提到的服务和OBD相关的服务。

DCM模块主要负责处理诊断数据流和管理诊断状态,包括诊断会话和安全状态,

DCM模块能检查诊断服务的请求是否满足条件。DCM在AUTOSAR架构中的概略图如

图1所示。

图1 DCM模块

DCM模块由三个子模块构成,分别是DSL(DiagnosticSession layer)、

DSD(Diagnostic Service Dispatcher)、DSP(Diagnostic Service Processing),其示意

图如图2所示。

其中DSL用于确定诊断数据请求和响应的数据流;监控和确保诊断请求和响应的时

序,管理诊断状态(特别是诊断会话和安全状态)。DSD用于处理诊断数据流。将接收

到的诊断请求转发给数据处理器;当数据处理器触发时,通过PDUR传输诊断响应;

DSP用于处理实际的诊断请求。

图2 DCM模块内部子模块

下面主要针对三个模块进行介绍。

DSL(Diagnostic Session layer)

DSL用于处理诊断数据请求和响应的数据流;监控和确保诊断请求和响应的时序。

1.处理诊断请求