在 ODX 中有许多不同的参数。
DcmDsp 例程代表什么?
由于 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>
DcmDspStartRoutineIn
DcmDspStartRoutineOut
DcmDspRoutineStopIn
DcmDspRoutineStopOut
DcmDspRoutineRequestResOut
DcmDspRoutineIdentifier
<TABLE>
DcmDspRoutineIdentifier