0

如何在 SWC 中检索/获取冻结帧(整个冻结帧本身,而不仅仅是数据)?

我有Event IDDemDTC供参考。SWS让我感到困惑。

[更新]

我正在为诊断服务编写验收测试,供参考,测试场景代码为[ATS_DIAG_00247]

在配置部分,它说:

DemDTC = 0x666666 的 Dem 事件 E06 必须配置以下属性:

  • DebounceMonitorInternal
  • FreezeFrame 包含变量 FreezeFrameCounter (uint32)
  • DemEnvironmentDataCapture = DEM_CAPTURE_SYNCHRONOUS_TO_REPORTING
  • DemAgingAllowed = FALSE
  • 未定义 DemEventFailureCycleCounterThreshold

它还说:

SWC 通过 DID 端口向 DEM 提供 FreezeFrame 数据。SWC 的变量 FreezeFrameCounter 在每次定期调用 SWC 的主可运行文件(周期 << 1 秒)期间递增 1(在最大值处回绕)。FreezeFrameCounter 的初始值是任意的。

测试场景的总结是这样的

记住当前的 FreezeFrameCounter 值并预先存储一个 FreezeFrame。2 秒后,报告失败事件。然后,检查事件是否失败以及关联的 FreezeFrame 是否包含带有记忆值的 FreezeFrameCounter。

所以这是我的假设:

  • 将为特定DTC配置一个冻结帧

  • 配置的冻结帧有一个名为FreezeFrameCounter的成员,它属于类型(所以我假设冻结帧是一个结构)uint32

  • 我将检索已配置冻结帧的FreezeFrameCounter成员并将其保存到临时变量中。(如何检索冻结帧?或者我如何能够引用该冻结帧?)

真的很抱歉,我不是autosar方面的专家。谢谢!

4

0 回答 0