0

在 ODX 中有许多不同的参数。

DcmDsp 例程代表什么?

4

1 回答 1

2

由于 ODX 标准的高度灵活性,Autosar 和 ODX之间没有直接映射DcmDspRoutine- 这取决于 ODX 数据的特定创作指南。

DcmDspRoutine服务 ( )将<DIAG-SERVICE>在 ODX 中定义,但确切的位置、结构以及如何找到此服务取决于使用的 ODX 创作指南。IE。

  • 元素位于继承层次结构的哪一层
  • 如果继承层次结构中的任何元素被覆盖/消除
  • 可能有一个<DIAG-SERVICE>DcmDspRoutine或者<DIAG-SERVICE>每个都有一个DcmDspRoutineIdentifier
  • 服务可以通过特定的短名称或特定的语义来识别

下面是一个高级示例,假设只有一个具有语义“ROUTINE-CONTROL”的服务,<DIAG-SERVICE>如何DcmDspRoutine查找服务

+ <DIAG-LAYER-CONTAINER>
  + Collection name of the layers (BASE-VARIANTS/FUNCTIONAL-GROUPS/PROTOCOLS/ECU-VARIANTS)
    + Name of the layer (BASE-VARIANT/FUNCTIONAL-GROUP/PROTOCOL/ECU-VARIANT)
      + <DIAG-DATA-DICTIONARY-SPEC>
        + <TABLES>
          + <TABLE> referenced by a <PARAM>
      + <DIAG-COMMS>
        + <DIAG-SERVICE> with attribute "SEMANTIC" set to "ROUTINE-CONTROL"
          + <REQUEST-REF>
          + <POS-RESPONSE-REFS>
            + <POS-RESPONSE-REF>
      + <REQUESTS>
        + <REQUEST> referenced by a <DIAG-SERVICE>
          + <PARAMS>
            + <PARAM> referencing to a <TABLE>
      + <POS-RESPONSES>
        + <POS-RESPONSE> referenced by a <DIAG-SERVICE>
          + <PARAMS>
            + <PARAM> referencing to a <TABLE>

首先需要找到<DIAG-SERVICE>映射到服务的哪个(属性与"ROUTINE-CONTROL"匹配的地方)。在xml 节点内应该有一个子节点(链接到请求)和一个或多个子节点(链接到响应)。在和xml 节点中,将有一个xml 节点列表 - 每个节点代表 PDU 的一个参数,并将链接到一个or 。由于不同的, , , ,可能不同,通常会有一个包含所有及其对应结构的引用。DcmDspRoutine"SEMANTIC"<DIAG-SERVICE><REQUEST-REF>DcmDspRoutine<POS-RESPONSE-REF>DcmDspRoutine<REQUEST><POS-RESPONSE><PARAM><DOP><TABLE>DcmDspStartRoutineInDcmDspStartRoutineOutDcmDspRoutineStopInDcmDspRoutineStopOutDcmDspRoutineRequestResOutDcmDspRoutineIdentifier<TABLE>DcmDspRoutineIdentifier

于 2019-05-14T02:33:11.957 回答