概述
AUTOSAR诊断协议栈包含DCM(Diagnostic Communication Manager)和DEM(Diagnostic Event Manager)两个模块,其中DEM负责DTC相关的参数实现,而DCM模块主要实现UDS和OBD的诊断服务,可以参考ISO14229相关标准。
在熟悉AUTOSAR诊断协议前,建议大家先要熟悉ISO15765以及ISO14229相关标准。
DCM模块位于AUTOSAR BSW中。DCM为诊断服务提供了公共的API。DCM的作用贯穿于ECU研发,生产到售后的全生命周期中。
DEM负责处理和存储诊断事件(包括外部可见的DTCs和其他BSW模块报告的内部事件)和相关的环境数据。DEM给DCM模块提供错误信息,比如从memory读取所有存储的DTC。DEM为应用层和其他BSW模块提供接口。
DCM模块介绍
DCM确保诊断数据流和管理诊断状态,特别是诊断会话和安全状态。另外DCM检查请求的服务是否支持以及是否可以在当前会话执行对应的服务请求。DCM提供了OSI的5-7层,如下表所示
在OSI-Layer 7,DCM提供了广泛的ISO14229-1的服务。另外也提供了部分OBD服务。在OSI-Layer 5,D