网站开发和网站制作的区别,客户管理的四个步骤,wordpress站点收录好,wordpress+新打开空白目录 1、DEM 功能规范描述1.1、Startup behavior1.2、Monitor re-initialization 在前面
《[CP_AUTOSAR]_系统服务_DEM模块#xff08;一#xff09;》文中#xff0c;简要介绍了 DEM 模块的功能、与其它模块之间的功能交互#xff0c;本文将接着介绍 DEM 模块的功能规范。… 目录 1、DEM 功能规范描述1.1、Startup behavior1.2、Monitor re-initialization 在前面
《[CP_AUTOSAR]_系统服务_DEM模块一》文中简要介绍了 DEM 模块的功能、与其它模块之间的功能交互本文将接着介绍 DEM 模块的功能规范。 参考文档《AUTOSAR_SWS_DiagnosticEventManager》 1、DEM 功能规范描述 SWCs 和 BSW 模块中诊断监视器监测到的诊断故障都交由 DEM 模块处理和存储而SWCs 和 BSW 模块可以通过 DEM 模块提供的接口函数来获取存储的故障信息。
1.1、Startup behavior [SWS_Dem_00169] DEM 模块应该区分 pre-initialization 和 full-initialized 工作模式。 [SWS_Dem_00180] Dem_PreInit 函数会初始化 DEM 模块的内部状态这些内部状态对于处理诊断事件和重置防抖动计数器是必要的SWCs 和 BSW 模块使用 Dem_SetEventStatus 和 Dem_ResetEventDebounceStatus 函数去汇报。 在ECU启动阶段中NvM 模块初始化之前函数 Dem_PreInit 由 EcuM 模块调用。 BSW 模块使用 Dem_SetEventStatus 函数去汇报相关的诊断事件。 在ECU启动阶段中NvM 模块完成存储 NVRAM 数据之后函数 Dem_Init 被调用。 SWCs 模块包含故障监视器在之后被初始化。使用 Dem_SetEventStatus 函数去汇报相关的诊断事件。
1.2、Monitor re-initialization 应用程序中的故障监测器主要初始化由 Rte_Start 完成监视器的特定事件部分的初始化可以由Dem触发。 [SWS_Dem_00003] DEM 模块提供接口 InitMonitorForEvent 去触发诊断监视器的初始化。函数形参 InitMonitorReason 触发初始化的原因。 [SWS_Dem_00679] 函数 Dem_RestartOperationCycle 被调用应该重新初始化所有相关事件的诊断监测器通过调用各自的回调函数 InitMonitorForEvent 并将形参 InitMonitorReason 设置为 DEM_INIT_MONITOR_RESTART。 [SWS_Dem_00680] API Dem_ClearDTC 会触发相关事件的回调函数 InitMonitorForEvent 如果需要清除诊断故障形参 InitMonitorReason 设置为 DEM_INIT_MONITOR_CLEAR 。 [SWS_Dem_00681] 如果一个诊断事件的使能条件改变了API Dem_SetEnableCondition 应该触发相关诊断事件的回调函数 InitMonitorForEvent 并将形参 InitMonitorReason 设置为 DEM_INIT_MONITOR_REENABLED。 [SWS_Dem_00682] 如果 0x85(ControlDTCSetting控制诊断故障代码设置服务) 被重新使能API Dem_EnableDTCSetting 应该触发相关诊断事件的回调函数 InitMonitorForEvent 并将形参 InitMonitorReason 设置为 DEM_INIT_MONITOR_REENABLED。 [SWS_Dem_01113] 如果诊断事件的存储条件改变了API API Dem_SetStorageCondition 应该触发相关诊断事件的回调函数 InitMonitorForEvent 并将形参 InitMonitorReason 设置为 DEM_INIT_MONITOR_REENABLED。如果诊断事件汇报为 FAILED 或者 PASSED而存储条件被失能那么回调函数只是被回调。下面展示两条使用案例 Use case1在诊断事件监测器在运行过程中$85服务触发或者是清除故障触发后只要是诊断前置条件满足那么监视器应该从头开始运行并在运行结束时评估事件的状态如passed 或者 failed。 Use case2柴油机 ECU 在运行4小时后重启那么监视器应该从头开始运行并在运行结束时评估事件的状态如passed 或者 failed。 任何功能模块主要与监视器相关可以由 DEM 模块来触发初始化。 [SWS_Dem_01046] 如果同时触发 InitMonitorForEvent 函数的情况发生那么 InitMforE 应该被只调用一次。形参 InitMonitorReason 设置为哪种参数根据参数优先级来定最高优先级DEM_INIT_MONITOR_CLEAR低优先级DEM_INIT_MONITOR_RESTART, DEM_INIT_MONITOR_REENABLED。 更多内容可参考 CP_AUTOSAR_总目录点击跳转