Dcm

缩写词注解

缩写词

英文全名

解释/描述

OBD

On-Board Diagnostic

车载诊断

PDU

Protocol Data Unit

协议数据单元

PduR

PDU Router

PDU路由模块

UDS

Unified Diagnostic Services

统一诊断服务

ECU

Electronic Control Unit

电子控制单元

EcuM

ElectronicControl Unit Manager

电子控制单元管理

Dcm

Dia gnosticCommunicationManager

诊断通信管理模块

ComM

Communication Manager

通信管理模块

DSD

Diagnostic Service Dispatcher

诊断服务调度

DSL

Diagnostic Session Layer

诊断会话层

DSP

Diagnostic Service Processing

诊断服务处理

NRC

Negative Response Code

负响应码

RAM

Random Access Memory

随机存取存储器

Bswmd

Basic Software Module Description

基础软件模块描述文件

SW-C

Software Component

软件组件

BL

BootLoader

引导加载程序

简介

image1

图 Dcm模块层次图

Dcm模块实现依据ISO 14229-1和ISO 15031-5等标准规范中定义的UDS诊断和OBD诊断功能。在接收到一个诊断请求后,需要对诊断请求进行分析,包括请求的服务是否支持,寻址方式是否正确,会话级,安全级,长度,子服务等是否正确。一个正确的请求与响应如图 所示。

image2

图 正确请求与响应

在ISO 14229-1 协议中,Dcm模块需要实现0x10、0x11、0x14、0x19、0x22、0x23、0x24、0x27、0x28、0x29、0x2A、0x2C、0x2E、0x2F、0x31、0x34、0x35、0x36、0x37、0x38、0x3D、0x3E、0x83、0x84、0x85、0x86、0x87等服务。在ISO 15031-5协议中,Dcm模块需要实现0x01、0x02、0x03、0x04、0x05、0x06、0x07、0x08、0x09、0x0A服务。按照AUTOSAR4.2.2标准规范的定义,Dcm模块还需要对会话级,安全级等进行相应的管理。

按照AUTOSAR4.2.2规范,Dcm模块只能同时处理一个请求,不能进行并行处理,所以推出了协议抢占功能。针对ISO 14229协议中的部分UDS服务按照AUTOSAR4.2.2规范暂不支持,如0x83、0x87、0x84服务暂不实现。在ISO 15031-5协议中,0x05服务不支持,依赖于0x06服务。

在Dcm模块接收到一个请求后,会根据条件进行处理,给出正响应或者是否定响应;亦或者根据正响应抑制位等处理不给响应。

Dcm功能点如下:

  1. Dcm应该按照ISO14229-1中所描述的顺序来进行NRC的发送。UDS服务的标准定义了负响应码(NRC)。Dcm在与其他BSW模块以及SW-C之间的接口中使用这些NRC。

  2. 功能性的“TesterPresent”命令是由测试人员与物理请求/响应并行处理的。这在ISO14229- 1中被称为“保持会话”。这个功能性的“TesterPresent”将在一个单独的DcmRxPduId (UDS func DcmRxPduId)上接收,它与物理请求属于同一个DcmDslConnection。需要使用未显式配置的Dcm内部接收缓冲区,并在DSL层直接进行处理。

  3. 支持周期性发送,UDS服务ReadDataByPeriodicIdentifier (0x2A)允许测试人员从一个或多个periodicdataidentifier标识的ECU请求定期传输数据记录值。

  4. 事件响应,测试人员使用UDS服务ResponseOnEvent (0x86)请求ECU启动或停止由指定事件发起的响应的传输。在为传输注册一个事件时,测试人员还指定了相应的服务来响应(e.g: UDS服务ReadDataByIdentifier (0x22))。

  5. 分页发送功能,在Dcm的发送缓存空间不够发送一帧很长的数据时,使用分页发送的形式,可以将数据分成很多页来进行一页一页的发送,发送完一页后组装第二页,直到数据发送完。

  6. 管理安全等级,使用0x27服务对安全级进行修改,Dcm模块管理相应的安全级,并判断请求的服务是否在相应的安全级是否可用。

  7. 管理会话等级,使用0x10服务对会话级进行修改,Dcm模块管理相应的会话级,并判断请求的服务是否在相应的会话级是否可用。在请求进入到编程会话的时候,Dcm需要配合进行复位跳转到BL。

  8. 支持不同协议之间的抢占,根据同时请求协议的优先级进行判断,高优先级的抢占低优先级的协议,被抢占的协议停止,开始高优先级协议的处理。

  9. 通信管理,这个通信管理不是指的0x28服务,是Dcm与ComM模块相互交互的一个管理,包括诊断唤醒之类的,有No_Com, Silent_Com和Full_Com三种模式。这个会影响Dcm的响应报文是否能够发出。

  10. 支持协议开启临时缓存Queue队列,在一个诊断请求正在处理时,队列缓存最多一个额外请求在Dcm的额外缓存区中,在当前请求结束时接着处理先前缓存的请求。

  11. 在处理负响应NRC22时,Dcm支持在否定响应报文中额外增加一个字节来存放回复NRC22的具体原因。使用方法:配置工程宏DCM_NRC22_SPECIFIC_CAUSE_CODE为STD_ON,Dcm会在处理NRC0x22时调用Dcm_GetSpecificCauseCode接口获取具体原因字节。若未获取到或为Dcm内部NRC22时,具体原因字节则为默认值0xFF。

  12. 支持提供模块Bswmd文件,右键Dcm选择 update Bswmd即可生成。若有多分区需求,请在EcuC配置Dcm分区前生成DcmBswmd文件,若EcuC未配置Dcm分区信息,则Dcm在默认分区;若配置,则需要再次生成Dcm Bswmd文件,以更新分区信息。

  13. SID识别与正响应抑制处理(带有子服务的服务),格式与子服务检查,服务寻址方式检查等。检查正确后处理相应的服务,检查失败后发送相应的NRC。

参考资料

[1] ISO 14229-1 2013

[2] ISO 15031-5 2016

[3] AUTOSAR_SWS_DiagnosticCommunicationManager.PDF,4.2.2

[4] AUTOSAR_SWS_DiagnosticCommunicationManager.PDF,R19-11

[5] AUTOSAR_SWS_DiagnosticEventManager.PDF,4.2.2

[6] AUTOSAR_SWS_DiagnosticEventManager.PDF,4.2.2

功能描述

协议启动功能

协议启动功能介绍

当Dcm模块接收到一个正确的服务请求之后,需要在处理服务之前将协议启动起来,启动协议需要判断当前是否被运行启动,根据协议启动情况执行后续操作。

当Protocol开启Queue队列支持(DcmDslProtocolRequestQueued)时,整体处理流程不变,但如在处理请求过程中收到第二条请求,支持最多一个额外请求的接收,会置入额外缓存区中,待上一条请求完成后会接着处理缓存区中的请求。如缓存区也已满,则返回对应的Buffer状态,无视收到的请求。

协议启动功能实现

当Dcm模块的Dcm_TpRxIndication被调用来接收一个正确的服务请求之后,调用StartProtocol接口来通知用户,让用户判断当前情况下是否允许启动协议,如果允许启动则启动协议并根据配置情况,调用相对应配置的Indication函数通知外部协议启动成功,并执行后续服务;如果协议启动失败则退出处理并发送NRC0x22。

服务处理响应功能

服务处理响应功能介绍

当Dcm模块接收到一个正确的服务请求之后,在服务正确执行过程中,可能会需要定时发送NRC0x78来表示服务正在处理过程中,避免请求设备超时,一直到服务处理完成发送出最终响应。

服务处理响应功能实现

当Dcm模块的Dcm_TpRxIndication被调用来接收一个正确的服务请求之后,执行相应的服务,如果在P2ServerMax时间内服务没有处理完成,需要调用PduR_DcmTransmit发送一个NRC0x78来进行响应,防止请求设备超时。如果在接下来的时间,服务仍未处理完成,则需要在P2*ServerMax到达时调用PduR_DcmTransmit发送一个NRC0x78来进行响应,如果服务仍未完成则需要在每个P2*ServerMax到达时调用PduR_DcmTransmit发送一个NRC0x78来进行响应,直到服务处理完成,然后调用PduR_DcmTransmit来发送一个最终响应。

更新会话控制时间功能

更新会话控制时间功能介绍

当Dcm模块接收到一个正确的服务请求之后,在服务正确执行完成,响应正确发出之后,对会话时间进行更新。

更新会话控制时间功能实现

当Dcm模块的Dcm_TpRxIndication被调用来接收一个正确的服务请求,并在正确处理完服务请求并发出正确响应之后,在调用Dcm_TpTxConfirmation时,对会话时间进行更新,重启会话计时。

通信交互功能

通信交互功能介绍

在默认会话模式下,在收到一个请求时,通知ComM模块启动通信,在请求处理完成,响应发送确认时,通知ComM模块关闭通信。在非默认会话模式下,在收到一个请求时,不会通知ComM模块启动通信,在请求处理完成,响应发送确认时,不会通知ComM模块关闭通信。当默认会话切换到非默认会话的时候,会通知ComM模块启动通信,当非默认会话切换到默认会话的时候,会通知ComM模块关闭通信。ComM模块会在通信状态改变之后,调用Dcm相关接口通知Dcm模块通信状态的改变。

通信交互功能实现

当Dcm模块在默认会话模式下被调用Dcm_TpRxIndication,则Dcm模块会先调用ComM_DCM_ActiveDiagnostic通知ComM模块启动通信,然后继续处理服务。当Dcm模块在默认会话模式下被调用Dcm_TpTxConfirmation,则Dcm模块会先调用ComM_DCM_InactiveDiagnostic通知COMM模块关闭通信。

当Dcm模块在非默认会话模式下被调用Dcm_TpRxIndication,则Dcm模块不会调用ComM_DCM_ActiveDiagnostic通知ComM模块启动通信,直接继续处理服务。当Dcm模块在非默认会话模式下被调用Dcm_TpTxConfirmation,则Dcm模块不会调用ComM_DCM_InactiveDiagnostic通知ComM模块关闭通信。

在Dcm模块从默认会话切换到非默认会话的时候,会调用ComM_DCM_ActiveDiagnostic通知ComM模块启动通信。在Dcm模块从非默认会话切换到默认会话的时候,会调用ComM_DCM_InactiveDiagnostic通知ComM模块关闭通信。

当ComM模块状态发送改变之后,会调用Dcm_ComM_NoComModeEntered、Dcm_ComM_SilentComModeEntered和Dcm_ComM_FullComModeEntered接口。在调用Dcm_ComM_NoComModeEntered和Dcm_ComM_SilentComModeEntered接口之后,Dcm模块不能进行报文的发送。在调用Dcm_ComM_FullComModeEntered之后,Dcm模块能对报文进行发送。

分页发送功能

分页发送功能介绍

在诊断协议中,有些服务允许交换大量数据,如UDS Service 0x19、0x22等。

在传统的方法中,ECU的内部缓冲区必须足够大,以保存将要交换的最长数据消息(最坏情况),并且在传输开始之前完整的缓冲区被填满。ECU中的RAM内存通常是一种关键资源,特别是在较小的微处理器中。在更节省内存的方法中,缓冲区只被部分填充,部分传输,然后部分填充——以此类推。这种分页机制可以显著减少内存量,但是需要定义良好的反应时间来填充缓冲区。用户可以决定是使用“线性缓冲区”还是分页缓冲区进行诊断。

分页发送即是使用有限的发送buffer,将需要发送的超过buffer长度的数据,分页分段进行多次的发送,以达到完整发送的目地。

分页发送功能实现

在Dcm模块接收到一个服务请求,处理完成之后,发现需要发送的数据长度大于发送缓冲区时且pagedbuffer使能则会按照如下步骤进行处理:

  1. 调用DsdInternal_StartPagedProcessing,通过这个API, DSP子模块将完整的响应长度给Dcm模块,并开始分页缓冲区处理。启动发送,这个API不会实际发送数据。

  2. 下层调用Dcm_CopyTxData(),然后在接口中调用Dcm_CopyTxData_PagebufferDeal拷贝当前页需要发送数据,当当前页的数据发送完成之后,调用DspInternal_DcmUpdatePage请求更新分页信息和数据。

  3. 下层调用Dcm_CopyTxData(),在分页数据没有被更新之前,均返回BUFREQ_E_BUSY。

  4. 下层调用Dcm_CopyTxData(),分页数据被更新之后,调用Dcm_CopyTxData_PagebufferDeal拷贝当前页需要发送数据,并返回BUFREQ_OK。

  5. 如果数据没有被全部发送完,则重复2-4步骤,直到数据全部发送完成并调用Dcm_TpTxConfirmation()。

在2-4步骤过程中,分页发送会检测是否当前页发送超时(包括填充和发送整个过程),如果超时则停止发送。

源文件描述

表 Dcm组件文件描述

文件

说明

Dcm_Cfg.h

定义Dcm模块预编译时用到的配置参数。

Dcm_Cfg.c

定义Dcm模块配置相关的配置参数。

Dcm.h

Dcm模块头文件,包含 了API函数的扩展声明并定义了端口的数据结构。

Dcm.c

Dcm模块源文件,包含了API函数的实现。

Dcm_MemMap.h

包含Dcm模块的内存抽象。

Dcm_Types.h

包含Dcm模块需要使用的类型定义。

Dcm_Ext.c

Dcm模块可供外部使用的函数定义

Dcm_Ext.h

Dcm模块可供外部使用的外部变量及函数声明

Dcm_Cbk.h

Dcm模块回调接口相关头文件,包含了回调接口相 关API函数的扩展声明并定义了端口的数据结构。

Dcm_Internal.h

Dcm模 块内部API函数的扩展声明与相关头文件的包含。

DcmDsp.c

Dcm模块内部任务处理层的相关API函数实现。

DcmDsd.c

Dcm模块内部任务调度层的相关API函数实现。

DcmDsl.c

Dcm模块内部任务会话层的相关API函数实现。

Dcm_UDS0x10.c

Dcm模块UDS服务0x10服务相关函数实现。

Dcm_UDS0x11.c

Dcm模块UDS服务0x11服务相关函数实现。

Dcm_UDS0x14.c

Dcm模块UDS服务0x14服务相关函数实现。

Dcm_UDS0x19.c

Dcm模块UDS服务0x19服务相关函数实现。

Dcm_UDS0x22.c

Dcm模块UDS服务0x22服务相关函数实现。

Dcm_UDS0x23.c

Dcm模块UDS服务0x23服务相关函数实现。

Dcm_UDS0x24.c

Dcm模块UDS服务0x24服务相关函数实现。

Dcm_UDS0x27.c

Dcm模块UDS服务0x27服务相关函数实现。

Dcm_UDS0x28.c

Dcm模块UDS服务0x28服务相关函数实现。

Dcm_UDS0x29.c

Dcm模块UDS服务0x29服务相关函数实现

Dcm_UDS0x2A.c

Dcm模块UDS服务0x2A服务相关函数实现。

Dcm_UDS0x2C.c

Dcm模块UDS服务0x2C服务相关函数实现。

Dcm_UDS0x2E.c

Dcm模块UDS服务0x2E服务相关函数实现。

Dcm_UDS0x2F.c

Dcm模块UDS服务0x2F服务相关函数实现。

Dcm_UDS0x31.c

Dcm模块UDS服务0x31服务相关函数实现。

Dcm_UDS0x34.c

Dcm模块UDS服务0x34服务相关函数实现。

Dcm_UDS0x35.c

Dcm模块UDS服务0x35服务相关函数实现。

Dcm_UDS0x36.c

Dcm模块UDS服务0x36服务相关函数实现。

Dcm_UDS0x37.c

Dcm模块UDS服务0x37服务相关函数实现。

Dcm_UDS0x38.c

Dcm模块UDS服务0x38服务相关函数实现。

Dcm_UDS0x3D.c

Dcm模块UDS服务0x3D服务相关函数实现。

Dcm_UDS0x3E.c

Dcm模块UDS服务0x3E服务相关函数实现。

Dcm_UDS0x85.c

Dcm模块UDS服务0x85服务相关函数实现。

Dcm_UDS0x86.c

Dcm模块UDS服务0x86服务相关函数实现。

Dcm_OBD0x01.c

Dcm模块OBD服务0x01服务相关函数实现。

Dcm_OBD0x02.c

Dcm模块OBD服务0x02服务相关函数实现。

Dcm_OBD0x03.c

Dcm模块OBD服务0x03服务相关函数实现。

Dcm_OBD0x04.c

Dcm模块OBD服务0x04服务相关函数实现。

Dcm_OBD0x05.c

Dcm模块OBD服务0x05服务相关函数实现。

Dcm_OBD0x06.c

Dcm模块OBD服务0x06服务相关函数实现。

Dcm_OBD0x07.c

Dcm模块OBD服务0x07服务相关函数实现。

Dcm_OBD0x08.c

Dcm模块OBD服务0x08服务相关函数实现。

Dcm_OBD0x09.c

Dcm模块OBD服务0x09服务相关函数实现。

Dcm_OBD0x0A.c

Dcm模块OBD服务0x0A服务相关函数实现。

Rte_Dcm_Type.h

包含Dcm模块与RTE交互需要的配置参数

Rte_Dcm.h

包含Dcm模块与RTE交互的外部函数声明

Rte_Dcm.c

定义Dcm模块与RTE交互的函数定义

Dcm_Callout.c

Dcm模块Callout接口定义

Dcm_Callout.h

Dcm模块Callout接口声明

Dcm_CalloutBoot.h

Dcm模块与Boot交互相关定义

Dcm_MatchFormat.c

Dcm模块根 据配置(同步异步等)进行接口转换的函数定义

Dcm_PBcfg.c

Dcm PostBuild配置定义

Dcm_PBcfg.h

Dcm PostBuild配置宏定义

image3

图 Dcm组件文件交互关系图

API接口

类型定义

Dcm_StatusType类型定义

名称

Dcm_StatusType

类型

uint8

范围

DCM_E_OK

0x00

This value is representing a successful operation.

DCM_ E_ROE_NOT _ACCEPTED

0x06

ResponseOnOneEvent request is not accepted by DCM (e.g. old ResponseOnOneEvent is not finished) (used at API: Dcm_ResponseOnOneEvent())

DC M_E_PERIO DICID_NOT _ACCEPTED

0x07

Periodic transmission request is not accepted by DCM (e.g. old Periodic transmission is not finished) (used at API: Dc m_ResponseOnOneDataByPeriodicId ())

描述

用于传输状态信息的基本项类型

Dcm_CommunicationModeType类型定义

名称

Dcm_CommunicationModeType

类型

uint8

范围

DCM_ENA BLE_RX_TX_NORM

0x 00

Enable the Rx and Tx for normal communication

D CM_ENABLE_RX_D ISABLE_TX_NORM

0x 01

Enable the Rx and disable the Tx for normal communication

D CM_DISABLE_RX_ ENABLE_TX_NORM

0x 02

Disable the Rx and enable the Tx for normal communication

DCM_DISABL E_RX_TX_NORMAL

0x 03

Disable Rx and Tx for normal communication

DCM_E NABLE_RX_TX_NM

0x 04

Enable the Rx and Tx for network management communication

DCM_ENABLE_RX _DISABLE_TX_NM

0x 05

Enable Rx and disable the Tx for network management communication

DCM_DISABLE_R X_ENABLE_TX_NM

0x 06

Disable the Rx and enable the Tx for network management communication

DCM_DI SABLE_RX_TX_NM

0x 07

Diable Rx and Tx for network management communication

DCM_ENABLE _RX_TX_NORM_NM

0x 08

Enable Rx and Tx for normal and network management communication

DCM_ ENABLE_RX_DISA BLE_TX_NORM_NM

0x 09

Enable the Rx and disable the Tx for normal and network management communication

DCM DISABLE_RX_ENA BLE_TX_NORM_NM

0x 0A

Disable the Rx and enable the Tx for normal and network management communication

DCM_DISABLE _RX_TX_NORM_NM

0x 0B

Disable Rx and Tx for normal and network management communication

描述

通信控制模式类型定义

Dcm_ConfigType类型定义

名称

Dcm_ConfigType

类型

Structure

范围

Implementation specific

描述

配置类型定义

Dcm_ReturnReadMemoryType类型定义

名称

Dcm_ReturnReadMemoryType

类型

uint8

范围

DCM_READ_OK

0x 00

Reading has been done

DCM READ_PENDING

0x 01

Reading is pending, another call is request to finalize the reading

DCM _READ_FAILED

0x 02

Reading has failed

DCM_READ _FORCE_RCRRP

0x 03

Reading is pending, the Response pending transmission starts immediately

描述

读取内存返回值类型定义

Dcm_ReturnWriteMemoryType类型定义

名称

Dcm_ReturnWriteMemoryType

类型

uint8

范围

DCM_WRITE_OK

0x 00

Writing has been done

DCM_W RITE_PENDING

0x 01

Writing is pending, another called is requested

DCM WRITE_FAILED

0x 02

The writing has failed

DCM_WRITE _FORCE_RCRRP

0x 03

Writing is pending, the Response pending transmission starts immediately

描述

写内存返回值类型定义

Dcm_EcuStartModeType类型定义

名称

Dcm_EcuStartModeType

类型

uint8

范围

D CM_COLD_START

0x 00

The ECU starts normally

D CM_WARM_START

0x 01

The ECU starts from a bootloader jump

描述

ECU启动类型定义

Dcm_ProgConditionsType类型定义

名称

Dcm_ProgConditionsType

类型

Structure

范围

uint16

Te sterSou rceAddr

Tester source address configured per protocol

uint8

Pro tocolId

Id of the protocol on wich the request has been received

uint8

Sid

Service identifier of the received request

uint8

S ubFncId

Identifier of the received subfonction

b oolean

Repro graming Request

Set to true in order to request reprogramming of the ECU. HIS representation of FL_ExtProgRequestType.

b oolean

Appl Updated

Indicate whether the application has been updated or not. HIS representation of FL_ApplicationUpdateType.

b oolean

Re sponseR equired

Set to true in case the flashloader or application shall send a response. HIS representation of FL_ResponseRequiredType.

描述

存储和BL相关的信息类型定义

Dcm_MsgItemType类型定义

名称

Dcm_MsgItemType

类型

uint8

范围

描述

诊断信息类型定义

Dcm_MsgType类型定义

名称

Dcm_MsgType

类型

Dcm_MsgItemType

范围

描述

诊断数据类型定义

Dcm_MsgLenType类型定义

名称

Dcm_MsgLenType

类型

uint32

范围

描述

诊断信息长度类型定义

Dcm_MsgAddInfoType类型定义

名称

Dcm_MsgAddInfoType

类型

Structure

范围

u int8

ReqType

0 = physical request 1 = functional request

boo lean

Suppres sPosResponse

FALSE:Allow positive response

TRUE:Suppress positive response

boo lean

Can celOperation

FALSE:Not cancel Pending

TRUE:Cancel Pending

描述

诊断请求地址信息类型定义

Dcm_IdContextType类型定义

名称

Dcm_IdContextType

类型

uint8

范围

描述

内容ID值类型定义

Dcm_MsgContextType类型定义

名称

Dcm_MsgContextType

类型

uint8

范围

Dcm MsgType

pR eqData

Request data, starting directly after service identifier (which is not part of this data)

Dcm_Msg LenType

ReqD ataLen

Request data length (excluding service identifier)

Dcm MsgType

pR esData

Positive response data, starting directly after service identifier (which is not part of this data).

Dcm_Msg LenType

ResD ataLen

Positive response data length (excluding service identifier)

Dcm MsgAddI nfoType

MsgA ddInfo

Additional information about service request and response (see: Dcm_MsgAddInfo)

Dcm_Msg LenType

R esMaxD ataLen

The maximal length of a response is
restricted by the size of the buffer. The buffer size can depend on the
diagnostic protocol identifier which is
assigned to this message, e. g. an OBD protocol id can obtain other properties than the enhanced diagnostic protocol id. The resMaxDataLen is a property of the
diagnostic protocol assigned by the
DSL. The value does not change during communication. It cannot be
implemented as a constant, because it can differ between different diagnostic protocols.

Dcm _IdCont extType

IdC ontext

This message context identifier can be used to determine the relation between request and response confirmation. This identifier can be stored within the application at request time, so that the response can be assigned to the original request. Background: Within the confirmation, the message context is no more valid, all message data is lost. You need an additional information to determine the request to which this confirmation belongs.

Pd uIdType

DcmR xPduId

Pdu identifier on which the request was received. The PduId of the request can have consequences for message processing. E. g. an OBD request will be received on the OBD PduId and will be processed slightly different than an enhanced diagnostic request received on the physical

描述

处理诊断请求的必要信息类型定义

Dcm_OpStatusType类型定义

名称

Dcm_OpStatusType

类型

uint8

范围

D CM_INITIAL

0x 00

Indicates the initial call to the operation

D CM_PENDING

0x 01

Indicates that a pending return has been done on the previous call of the operation

DCM_CANCEL

0x 02

Indicates that the Dcm requests to cancel the pending operation

DCM_FORC E_RCRRP_OK

0x 03

Confirm a response pending transmission

描述

操作状态类型定义

Dcm_SecLevelType类型定义

名称

Dcm_SecLevelType

类型

Uint8

范围

DCM_SEC_LEV_LOCKED

0x00

Configuration dependent

0x01…0x3F

Reserved by Document

0x40…0xFF

描述

安全级定义

Dcm_SesCtrlType类型定义

名称

Dcm_SesCtrlType

类型

uint8

范围

DCM_DEFAULT_SESSION

0x01

DCM_PROGRAMMING_SESSION

0x02

D CM_EXTENDED_DIAGNOSTIC_SESSION

0x03

DCM_SA FETY_SYSTEM_DIAGNOSTIC_SESSION

0x04

configuration dependent

0 x40…0x7E

根 据配置

描述

会话级定义

Dcm_ProtocolType类型定义

名称

Dcm_ProtocolType

类型

uint8

范围

DCM_OBD_ON_CAN

0x00

OBD on CAN (ISO15765-4; ISO15031-5)

D CM_OBD_ON_FLEXRAY

0x01

(OBD on Flexray (Manufacturer specific; ISO15031-5))

DCM_OBD_ON_IP

0x02

(OBD on Internet Protocol (Manufacturer specific; ISO15031-5))

DCM_UDS_ON_CAN

0x03

UDS on CAN (ISO15765-3; ISO14229-1)

D CM_UDS_ON_FLEXRAY

0x04

UDS on FlexRay (Manufacturer specific; ISO14229-1)

DCM_UDS_ON_IP

0x05

(UDS on Internet Protocol (Manufacturer specific; ISO14229-1))

DCM_ROE_ON_CAN

0x06

Response On Event on CAN

D CM_ROE_ON_FLEXRAY

0x07

Response On Event on FlexRay

DCM_ROE_ON_IP

0x08

(Response on Event on Internet Protocol)

DCM_PERIODICTRANS

_ON_CAN

0x09

Periodic Transmission on CAN

DCM_PERIODICTRANS

_ON_FLEXRAY

0x0A

Periodic Transmission on FlexRay

DCM_PERIODICTRANS

_ON_IP

0x0B

(Periodic Transmission on Internet Protocol)

DCM_NO_ACTIVE

_PROTOCOL

0x0C

No protocol has been started

Reserved for

further AUTOSAR
implementation

0 x0D.

. 0xEF

DCM_SUPPLIER_1

0xF0

Reserved for SW supplier specific.

DCM_SUPPLIER_2

0xF1

Reserved for SW supplier specific.

DCM_SUPPLIER_3

0xF2

Reserved for SW supplier specific.

DCM_SUPPLIER_4

0xF3

Reserved for SW supplier specific.

DCM_SUPPLIER_5

0xF4

Reserved for SW supplier specific.

DCM_SUPPLIER_6

0xF5

Reserved for SW supplier specific.

DCM_SUPPLIER_7

0xF6

Reserved for SW supplier specific.

DCM_SUPPLIER_8

0xF7

Reserved for SW supplier specific.

DCM_SUPPLIER_9

0xF8

Reserved for SW supplier specific.

DCM_SUPPLIER_10

0xF9

Reserved for SW supplier specific.

DCM_SUPPLIER_11

0xFA

Reserved for SW supplier specific.

DCM_SUPPLIER_12

0xFB

Reserved for SW supplier specific.

DCM_SUPPLIER_13

0xFC

Reserved for SW supplier specific.

DCM_SUPPLIER_14

0xFD

Reserved for SW supplier specific.

DCM_SUPPLIER_15

0xFE

Reserved for SW supplier specific.

描述

协议类型定义

Dcm_NegativeResponseCodeType类型定义

名称

Dcm_NegativeResponseCodeType

类型

uint8

范围

range of values 0x01..0x0F reserved by ISO 14229

0x0 1…0x0F

ISOSAERESRVD

DCM_E_GENERALREJECT

0x10

GR

DCM _E_SERVICENOTSUPPORTED

0x11

SNS

DCM_E_S UBFUNCTIONNOTSUPPORTED

0x12

SFNS

DCM_E_INCORRECTMESSAG ELENGTHORINVALIDFORMAT

0x13

IMLOIF

DCM_E_RESPONSETOOLONG

0x14

RTL

range of values 0x15..0x20 reserved by ISO 14229

0x1 5…0x20

ISOSAERESRVD

D CM_E_BUSYREPEATREQUEST

0x21

BRR

DCM E_CONDITIONSNOTCORRECT

0x22

CNC

value 0x23 reserved by ISO 14229

0x23

ISOSAERESRVD

DCM E_REQUESTSEQUENCEERROR

0x24

RSE

DCM_E_NORESPO NSEFROMSUBNETCOMPONENT

0x25

NRFSC

DC M_E_FAILUREPREVENTSEXE CUTIONOFREQUESTEDACTIN

0x26

FPEORA

range of values 0x27..0x30 reserved by ISO 14229

0 x27…0x30

ISOSAERESRVD

D CM_E_REQUESTOUTOFRANGE

0x31

ROOR

value 0x32 reserved by ISO 14229

0x32

ISOSAERESRVD

DCM E_SECURITYACCESSDENIED

0x33

SAD

value 0x34 reserved by ISO 14229

0x34

ISOSAERESRVD

DCM_E_INVALIDKEY

0x35

IK

DCM_E_ EXCEEDNUMBEROFATTEMPTS

0x36

ENOA

DCM_E_REQUI REDTIMEDELAYNOTEXPIRED

0x37

RTDNE

range of values 0x38..0x4F reserved by ISO 15764

0 x38…0x4F

RBEDLSD

range of values 0x50..0x6F reserved by ISO 14229

0x5 0…0x6F

ISOSAERESRVD

DCM_E_UPL OADDOWNLOADNOTACCEPTED

0x70

UDNA

DCM_E _TRANSFERDATASUSPENDED

0x71

TDS

DCM_E_GEN ERALPROGRAMMINGFAILURE

0x72

GPF

DCM_E_WRO NGBLOCKSEQUENCECOUNTER

0x73

WBSC

range of values 0x74..0x77 reserved by ISO 14229

0x7 4…0x77

ISOSAERESRVD

range of values 0x79..0x7D reserved by ISO 14229

0x7 9…0x7D

ISOSAERESRVD

DCM_E_SUBFUNCTIONNOTSU PPORTEDINACTIVESESSION

0x7E

SFNSIAS

DCM_E_SERVICENOTSU PPORTEDINACTIVESESSION

0x7F

SNSIAS

value 0x80 reserved by ISO 14229

0x80

ISOSAERESRVD

DCM_E_RPMTOOHIGH

0x81

RPMTH

DCM_E_RPMTOOLOW

0x82

RPMTL

DCM_E_ENGINEISRUNNING

0x83

EIR

DC M_E_ENGINEISNOTRUNNING

0x84

EINR

DCM _E_ENGINERUNTIMETOOLOW

0x85

ERTTL

DC M_E_TEMPERATURETOOHIGH

0x86

TEMPTH

D CM_E_TEMPERATURETOOLOW

0x87

TEMPTL

DCM _E_VEHICLESPEEDTOOHIGH

0x88

VSTH

DC M_E_VEHICLESPEEDTOOLOW

0x89

VSTL

DCM_E _THROTTLE_PEDALTOOHIGH

0x8A

TPTH

DCM E_THROTTLE_PEDALTOOLOW

0x8B

TPTL

DCM_E_TRANSMI SSIONRANGENOTINNEUTRAL

0x8C

TRNIN

DCM_E_TRAN SMISSIONRANGENOTINGEAR

0x8D

TRNIG

value 0x8E reserved by ISO 14229

0x8E

ISOSAERESRVD

DCM_E _BRAKESWITCH_NOTCLOSED

0x8F

BSNC

DCM_E _SHIFTERLEVERNOTINPARK

0x90

SLNIP

DCM_E_TORQU ECONVERTERCLUTCHLOCKED

0x91

TCCL

DCM_E_VOLTAGETOOHIGH

0x92

VTH

DCM_E_VOLTAGETOOLOW

0x93

VTL

range of values 0x94..0xEF reserved by ISO 14229

0x9 4…0xEF

RFSCNC

DCM_E_VMSCNC_0

0xF0

VMSCNC

DCM_E_VMSCNC_1

0xF1

VMSCNC1

DCM_E_VMSCNC_2

0xF2

VMSCNC2

DCM_E_VMSCNC_3

0xF3

VMSCNC3

DCM_E_VMSCNC_4

0xF4

VMSCNC4

DCM_E_VMSCNC_5

0xF5

VMSCNC5

DCM_E_VMSCNC_6

0xF6

VMSCNC6

DCM_E_VMSCNC_7

0xF7

VMSCNC7

DCM_E_VMSCNC_8

0xF8

VMSCNC8

DCM_E_VMSCNC_9

0xF9

VMSCNC9

DCM_E_VMSCNC_A

0xFA

VMSCNCA

DCM_E_VMSCNC_B

0xFB

VMSCNCB

DCM_E_VMSCNC_C

0xFC

VMSCNCC

DCM_E_VMSCNC_D

0xFD

VMSCNCD

DCM_E_VMSCNC_E

0xFE

VMSCNCE

value 0xFF reserved by ISO 14229

0xFF

ISOSAERESRVD

描述

否定响应类型定义

Dcm_ConfirmationStatusType类型定义

名称

Dcm_ConfirmationStatusType

类型

uint8

范围

DCM_RES_POS_OK

0x00

DCM_RES_POS_NOT_OK

0x01

DCM_RES_NEG_OK

0x02

DCM_RES_NEG_NOT_OK

0x03

描述

响应类型定义

Dcm_DidSupportedType类型定义

名称

Dcm_DidSupportedType

类型

uint8

范围

DCM_DID_SUPPORTED

0x00

DCM_DID_NOT_SUPPORTED

0x01

描述

DID支持类型定义

输入函数描述

输入模块

API

ComM

ComM_DCM_ActiveDiagnostic

ComM_DCM_InactiveDiagnostic

Dem

Dem_DcmDisableDTCRecordUpdate

Dem_DcmDisableDTCSetting

Dem_DcmEnableDTCRecordUpdate

Dem_DcmEnableDTCSetting

Dem_DcmGetDTCByOccurrenceTime

Dem_DcmGetDTCOfOBDFreezeFrame

Dem _DcmGetDTCSeverityAvailabilityMask

D em_DcmGetDTCStatusAvailabilityMask

Dem_DcmGetExtendedDataRecordByDTC

Dem_DcmGetFreezeFrameDataByDTC

Dem_DcmGetFunctionalUnitOfDTC

Dem_DcmGetNextFilteredDTC

Dem_DcmGetNextFilteredDTCAndFDC

De m_DcmGetNextFilteredDTCAndSeverity

Dem_DcmGetNextFilteredRecord

Dem_DcmGetNumberOfFilteredDTC

Dem_DcmGetSeverityOfDTC

Dem_D cmGetSizeOfExtendedDataRecordByDTC

Dem_DcmGetSizeOfFreezeFrameByDTC

Dem_DcmGetStatusOfDTC

Dem_DcmGetTranslationType

Dem_DcmReadDataOfOBDFreezeFrame

Dem_DcmSetDTCFilter

Dem_DcmSetFreezeFrameRecordFilter

Det

Det_ReportError

NvM

NvM_ReadBlock

NvM_SetBlockLockStatus

NvM_SetRamBlockStatus

NvM_WriteBlock

BswM

BswM_Dcm_ApplicationUpdated

BswM_ Dcm_CommunicationMode_CurrentState

PduR

PduR_DcmTransmit

PduR_DcmCancelReceive

PduR_DcmCancelTransmit

PduR_DcmChangeParameter

SchM

SchM_Enter_Dcm_ExclusiveArea

SchM_Exit_Dcm_ExclusiveArea

SchM_Switch_DcmEcuReset

SchM_ Switch_DcmDiagnosticSessionControl

SchM_Switch_DcmControlDTCSetting

Tm

Tm_ResetTimer100us32bit

Tm_GetTimeSpan100us32bit

Os

GetElapsedValue

静态接口函数定义

Dcm_Init函数定义

函数名称:

Dcm_Init

函数原型:

FUNC(void,DCM_ CODE)Dcm_Init(P2C ONST(Dcm_CfgType, DCM_CONST, DCM_CONST _PBCFG)ConfigPtr)

服务编号:

0x01

同步/异步:

同步

是否可重入:

输入参数:

ConfigPt r:配置参数的指针

值 域:

输 入输出参数:

输出参数:

返回值:

功能概述:

初始化Dcm模块变量

Dcm_GetVersionInfo函数定义

函数名称:

Dcm _GetVersionInfo

函数原型:

FUNC(vo id,DCM_CODE)Dcm _GetVersionInfo (P2VAR(Std_V ersionInfoType, AUTOMATIC, DCM VAR)VersionInfo )

服务编号:

0x24

同步/异步:

同步

是否可重入:

输入参数:

值域:

输 入输出参数:

输出参数:

Versio nInfo:版本信息

返回值:

功能概述:

获 取模块版本信息

Dcm_DemTriggerOnDTCStatus函数定义

函数名称:

Dcm_DemTriggerOnDTCStatus

函数原型:

FUNC(Std_ReturnType, DCM_CODE) Dcm_DemTriggerOnDTCStatus(

uint32 DTC,

Dem_UdsStatusByteType DTCStatusOld,

Dem_UdsStatusByteType DTCStatusNew)

服务编号:

0x2B

同步/异步:

同步

是否可重入:

输入参数:

DTC :DTC值

值域:

0…0x FFFF FFFF

DTCStatusOld:DTC老状态

值域:

0 …255

DTCStatusNew:DTC新状态

值域:

0 …255

输 入输出参数:

输出参数:

返回值:

Std_ReturnType:

E_OK:成功(只返回这个值)

功能概述:

ROE的DTC事件触发接口

Dcm_GetVin函数定义

函数名称:

Dcm_GetVin

函数原型:

FUNC( Std_ReturnType, DCM_CODE) Dcm _GetVin(uint8* Data)

服务编号:

0x07

同步/异步:

同步

是否可重入:

输入参数:

值域:

输 入输出参数:

输出参数:

Data:TRUE: VIN数据存放指针

返回值:

S td_ReturnType:

E_OK :VIN被成功填入

E_NOT_OK:DOIP 模块使用默认VIN

功能概述:

获取VIN接口

Dcm_GetSecurityLevel函数定义

函数名称:

Dcm_G etSecurityLevel

函数原型:

FUNC( Std_ReturnType, DCM_CODE)Dcm_Ge tSecurityLevel(

P2VAR(Dc m_SecLevelType, AUTOMATIC, D CM_VAR)SecLevel )

服务编号:

0x0d

同步/异步:

同步

是否可重入:

输入参数:

值域:

输 入输出参数:

输出参数:

SecLe vel:当前安全级

返回值:

S td_ReturnType:

E _OK:请求成功( 只返回这个值)

功能概述:

获取当 前激活的安全级

Dcm_GetSesCtrlType函数定义

函数名称:

Dcm _GetSesCtrlType

函数原型:

FUNC(Std_Retur nType,DCM_CODE) Dcm _GetSesCtrlType

(P2VAR(D cm_SesCtrlType, AUTOMATIC,D CM_VAR)SesType)

服务编号:

0x06

同步/异步:

同步

是否可重入:

输入参数:

值域:

输 入输出参数:

输出参数:

SesT ype:当前会话级

返回值:

S td_ReturnType:

E _OK:请求成功( 只返回这个值)

功能概述:

获取当 前激活的会话级

Dcm_GetActiveProtocol函数定义

函数名称:

Dcm_Ge tActiveProtocol

函数原型:

FUNC(S td_ReturnType,D CM_CODE)Dcm_Get ActiveProtocol(

P2VAR(Dc m_ProtocolType, AUTOMATIC, DCM_VAR )ActiveProtocol )

服务编号:

0x0f

同步/异步:

同步

是否可重入:

输入参数:

值域:

输 入输出参数:

输出参数:

A ctiveProtocol: 当前激活的协议

返回值:

S td_ReturnType:

E _OK:请求成功( 只返回这个值)

功能概述:

获取当前 激活的协议类型

Dcm_ResetToDefaultSession函数定义

函数名称:

Dcm_ResetT oDefaultSession

函数原型:

FUNC(Std_Retur nType,DCM_CODE) D cm_ResetToDefau ltSession(void)

服务编号:

0x2a

同步/异步:

同步

是否可重入:

输入参数:

值域:

输 入输出参数:

输出参数:

返回值:

S td_ReturnType:

E _OK:请求成功( 只返回这个值)

功能概述:

重置Dcm模块的会 话级为默认会话

Dcm_TriggerOnEvent函数定义

函数名称:

Dcm_TriggerOnEvent

函数原型:

FUNC(Std_ReturnType, DCM_CODE)Dcm_TriggerOnEvent(uint8 RoeEventId)

服务编号:

0x2D

同步/异步:

同步

是否可重入:

输入参数:

RoeEventId:事件ID

值 域:

0..255

输 入输出参数:

输出参数:

返回值:

Std_ReturnType:

E_OK:取消请求成功

功能概述:

SWC触发ROE事件接口

Dcm_ SetActiveDiagnostic函数定义

函数名称:

Dcm_SetA ctiveDiagnostic

函数原型:

FUNC(Std_Retur nType,DCM_CODE) D cm_SetActiveDia gnostic(boolean active)

服务编号:

0x56

同步/异步:

同步

是否可重入:

输入参数:

Active:If false Dcm shall not call ComM_DCM_Acti veDiagnostic(). If true Dcm will call ComM_DCM_Acti veDiagnostic().

值 域:

False/True

输 入输出参数:

输出参数:

返回值:

S td_ReturnType:

E _OK:请求成功( 只返回这个值)

功能概述:

修改 Dcm模块调用通信 状态修改的状态

Dcm_StartOfReception函数定义

函数名称:

Dcm_StartOfReception

函数原型:

FUNC(BufReq_ReturnType, DCM_CODE) Dcm_StartOfReception(

PduIdType id,

P2CONST(PduInfoType, AUTOMATIC, DCM_VAR) info,

PduLengthType TpSduLength,

P2VAR(PduLengthType, AUTOMATIC, DCM_VAR) bufferSizePtr)

服务编号:

0x46

同步/异步:

同步

是否可重入:

输入参数:

id:I-PDU值

值 域:

0 …65535

info:数 据信息,数据长度,metadata信息的指针

值 域:

TpSduLength:数据总长度

值 域:

0 …65535

输 入输出参数:

输出参数:

buffe rSizePtr:上层能用于接收的buffer长度

返回值:

BufReq_ReturnType:

BUFREQ_OK:请求成功

BUFREQ_E_NOT_OK:请求失败

BUFREQ_E_OVFL:长度溢出

功能概述:

开始一次接收

Dcm_CopyRxData函数定义

函数名称:

Dcm_CopyRxData

函数原型:

FUNC(BufReq_ReturnType,DCM_CODE) Dcm_CopyRxData(PduIdType id,

P2CONST(PduInfoType, AUTOMATIC, DCM_VAR) info, P2 VAR(PduLengthType,AUTOMATIC,DCM_VAR) bufferSizePtr)

服务编号:

0x44

同步/异步:

同步

是否可重入:

输入参数:

id:I-PDU值。

值 域:

0 …65535

info:数 据信息,数据长度,metadata信息的指针

值 域:

输 入输出参数:

输出参数:

buffe rSizePtr:上层能用于接收的buffer长度

返回值:

BufReq_ReturnType:

BUFREQ_OK:请求成功

BUFREQ_E_NOT_OK:请求失败

功能概述:

接收后续数据

Dcm_TpRxIndication函数定义

函数名称:

Dcm _TpRxIndication

函数原型:

FU NC(void,DCM_COD E)Dcm_TpRxIndic ation(PduIdType id, Std_ReturnType result)

服务编号:

0x45

同步/异步:

同步

是否可重入:

输入参数:

id:I-PDU值

值域:

0…65535

r esult:接收结果

值域:

E_OK/E_NOT_OK

输 入输出参数:

输出参数:

返回值:

功能概述:

接收完成指引

Dcm_CopyTxData函数定义

函数名称:

Dcm_CopyTxData

函数原型:

FUNC(BufReq_ReturnType,DCM_CODE) Dcm_CopyTxData(PduIdType id,

P2CONST(PduInfoType, AUTOMATIC, DCM_VAR) info, P2 VAR(RetryInfoType,AUTOMATIC,DCM_VAR) retry, P2 VAR(PduLengthType,AUTOMATIC,DCM_VAR) availableDataPtr)

服务编号:

0x43

同步/异步:

同步

是否可重入:

输入参数:

id:I-PDU值

值 域:

0 …65535

info:数 据信息,数据长度,metadata信息的指针

值 域:

retry:重传信息的指针

值 域:

输 入输出参数:

输出参数

av ailableDataPtr:上层剩余能发送的长度

返回值:

Bu fReq_ReturnType:BUFREQ_OK:请求成功

BUFREQ_E_NOT_OK:请求失败

BUFREQ_E_BUSY:发送数据没有准备好

功能概述:

拷贝发送数据

Dcm_TpTxConfirmation函数定义

函数名称:

Dcm_T pTxConfirmation

函数原型:

FUNC (void,DCM_CODE) Dcm_TpTxConfirm ation(PduIdType id, Std_ReturnType result)

服务编号:

0x48

同步/异步:

同步

是否可重入:

输入参数:

id:I-PDU值

值域:

0…65535

r esult:接收结果

值域:

E_OK/E_NOT_OK

输 入输出参数:

输出参数:

返回值:

功能概述:

TP数据发送确认

Dcm_TxConfirmation函数定义

函数名称:

Dcm_TxConfirmation

函数原型:

FUNC( void,DCM_CODE)Dcm_TxC onfirmation(PduIdType DcmTxPduId)

服务编号:

0x40

同步/异步:

同步

是否可重入:

不同PduId可重 入,相同PduId不可重入

输入参数:

DcmTxPduId:I-PDU值

值域:

0…65535

输 入输出参数:

输出参数:

返回值:

功能概述:

IF数据发送确认

Dcm_ComM_NoComModeEntered函数定义

函数名称:

D cm_ComM_NoComModeEntered

函数原型:

FUNC(void,DCM_CODE) Dcm_Com M_NoComModeEntered(uint8 NetworkId)

服务编号:

0x21

同步/异步:

同步

是否可重入:

输入参数:

NetworkId:网络ID值

值域:

0..255

输入输出参数:

输出参数:

返回值:

功能概述:

通知Dcm进入NOCOM状态

Dcm_ComM_SilentComModeEntered函数定义

函数名称:

Dcm_ComM_ SilentComModeEntered

函数原型:

FUNC(void,DCM_CODE) Dcm_ComM_Silent ComModeEntered(uint8 NetworkId)

服务编号:

0x22

同步/异步:

同步

是否可重入:

输入参数:

NetworkId:网络ID值

值域:

0..255

输 入输出参数:

输出参数:

返回值:

功能概述:

通 知Dcm进入到静默模式

Dcm_ComM_FullComModeEntered函数定义

函数名称:

Dcm_C omM_FullComModeEntered

函数原型:

FUNC(void,DCM_CODE) Dcm_ComM_Fu llComModeEntered(uint8 NetworkId)

服务编号:

0x23

同步/异步:

同步

是否可重入:

输入参数:

NetworkId:网络ID值

值域:

0..255

输 入输出参数:

输出参数:

返回值:

功能概述:

通 知Dcm进入到FULLCOM模式

Dcm_ReadMemory函数定义

函数名称:

Dcm_ReadMemory

函数原型:

Dcm_ReturnReadMemoryType Dcm_ReadMemory (Dcm_OpStatusType OpStatus,

uint8 MemoryIdentifier,

uint32 MemoryAddress,

uint32 MemorySize,

uint8* MemoryData,

D cm_NegativeResponseCodeType* ErrorCode)

服务编号:

0x26

同步/异步:

异步

是 否可重入:

输入参数:

OpStatus:操作类型

值域:

0…255

MemoryIdentifier:内存块ID值

值域:

0…255

MemoryAddress:内存地址

值域:

0 …0xFFFFFFFF

MemorySize:内存长度

值域:

0 …0xFFFFFFFF

输入 输出参数:

输出参数:

MemoryData (out):读取的数据存放的地方

ErrorCode(out):错误码

返回值:

Dcm_ReturnReadMemoryType:

DCM_READ_OK: 读取成功

DCM_READ_FAILED:读取失败

DCM_READ_PENDING: 正在读取
DCM_READ_FORCE_RCRRP:

立即发送NRC78并且正在处理读取

功能概述:

读取内存callout函数

Dcm_WriteMemory函数定义

函数名称:

Dcm_WriteMemory

函数原型:

Dcm_ReturnWriteMemoryType Dcm_WriteMemory (Dcm_OpStatusType OpStatus,

uint8 MemoryIdentifier,

uint32 MemoryAddress,

uint32 MemorySize,

uint8* MemoryData,

Dcm_NegativeResponseCodeType* ErrorCode)

服务编号:

0x27

同步/异步:

异步

是否可重入:

输入参数:

OpStatus:操作类型

值域:

DCM_ INITIAL;

DCM_ PENDING; DCM _CANCEL;

DC M_FORCE_ RCRRP_OK

MemoryIdentifier:内存块ID值

值域:

0…255

MemoryAddress:内存地址

值域:

0…255

MemorySize:内存长度

值域:

0…0x FFFFFFFF

MemoryD ata(in):写数据存放地方的指针

值域:

输 入输出参数:

输出参数:

ErrorCode(out):错误码

返回值:

Dcm_ReturnWriteMemoryType:

DCM_WRITE_OK: 写成功

DCM_ WRITE _FAILED:写失败

DCM_ WRITE _PENDING: 正在写
DCM_ WRITE _FORCE_RCRRP: 立即发送NRC78并且正在处理写

功能概述:

写内存callout函数

Dcm_SetProgConditions函数定义

函 数名称:

Dcm_SetProgConditions

函 数原型:

Std_ReturnType Dcm_SetProgConditions (Dcm_OpStatusType OpStatus, Dcm_ProgConditionsType * ProgConditions)

服 务编号:

同 步/异步:

异步

是否 可重入:

输 入参数:

OpStatus:操作类型

值 域:

DCM_INITIAL; DCM_PENDING; DCM_CANCEL; DCM_FORCE_RCRRP_OK

ProgCond itions:编程条件信息的指针

值 域:

输入输 出参数:

输 出参数:

返回值:

Std_ReturnType:

E_OK: 成功设置

E_NOT_OK: 设置失败

DCM_E_PENDING: 正在设置

DCM_E_FORCE_RCRRP: 立即发送NRC0x78,正在处理

功 能概述:

设置编程条件

Dcm_GetProgConditions函数定义

函数名称:

Dcm_GetProgConditions

函数原型:

Dcm_EcuStartModeType Dcm_GetProgConditions(

Dcm_ProgConditionsType * ProgConditions)

服务编号:

同步/异步:

同步

是否可重入:

输入参数:

值域:

输 入输出参数:

输出参数:

ProgConditions:条件信息

返回值:

Dcm_EcuStartModeType

功能概述:

设置编程条件

Dcm_ProcessRequestTransferExit函数定义

函 数 名 称 :

Dcm_ProcessRequestTransferExit

函 数 原 型 :

Std_ReturnType Dcm_ProcessRequestTransferExit(

Dcm_OpStatusTypeOpStatus,

uint8* transferRequestParameterRecord,

uint32 tr ansferRequestParameterRecordSize,

uint8* transferResponseParameterRecord,

uint32* tra nsferResponseParameterRecordSize,

Dcm_NegativeResponseCodeType* ErrorCode)

服 务 编 号 :

0x32

同 步 /异 步 :

异步

是 否 可 重 入 :

输 入 参 数 :

OpStatus:操作类型

值 域 :

DCM_INITIAL; DCM_PENDING; DCM_CANCEL; DCM_FORCE_RCRRP_OK

transferReque stParameterRecord:请求数据的指针

值 域 :

transferRequest ParameterRecordSize:请求数据长度

值 域 :

0…0xFFFFFFFF

输 入 输 出 参 数 :

transferResponseParam eterRecordSize(inout):数据长度

输 出 参 数 :

ErrorCode(out):错误码

transferRespons eParameterRecord(out):响应数据

返 回 值 :

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能 概 述 :

请求退出数据传输的callout函数

Dcm_ProcessRequestUpload函数定义

函 数名称:

Dcm_ProcessRequestUpload

函 数原型:

Std_ReturnType Dcm_ProcessRequestUpload (Dcm_OpStatusType OpStatus,uint8 DataFormatIdentifier,

uint32 MemoryAddress,uint32 MemorySize,uint32* BlockLength,Dcm_ NegativeResponseCodeType* ErrorCode)

服 务编号:

0x31

同 步/异步:

异步

是否 可重入:

输 入参数:

OpStatus:操作类型

值 域 :

DCM_INITIAL; DCM_PENDING; DCM_CANCEL; DCM_FORCE_RCRRP_OK

Data FormatIdentifier:数据格式

值 域 :

0…255

MemoryAddress:内存地址

值 域 :

0…0xFFFFFFFF

MemorySize:内存大小

值 域 :

0…0xFFFFFFFF

输入输 出参数:

输 出参数:

ErrorCode(out):错误码

BlockLengt h(out):一次传输的块大小

返回值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能概述:

请求上传数据

Dcm_ProcessRequestDownload函数定义

函 数 名 称 :

Dcm_ProcessRequestDownload

函 数 原 型 :

Std_ReturnType Dcm_ProcessRequestDownload(

Dcm_OpStatusType OpStatus,

uint8 DataFormatIdentifier,

uint32 MemoryAddress,

uint32 MemorySize,+

uint32* BlockLength,

Dcm_NegativeResponseCodeType* ErrorCode)

服 务 编 号 :

0x30

同 步 /异 步 :

Asynchronous

是 否 可 重 入 :

输 入 参 数 :

OpStatus:操作类型

值 域 :

DCM_INITIAL; DCM_PENDING; DCM_CANCEL; DCM_FORCE_RCRRP_OK

DataFormatIdentifier:数据格式

值 域 :

0…255

MemoryAddress:内存地址

值 域 :

0…0xFFFFFFFF

MemorySize:内存大小

值 域 :

0…0xFFFFFFFF

输 入 输 出 参 数 :

输 出 参 数 :

ErrorCode(out):错误码

Bloc kLength(out):一次传输的块大小

返 回 值 :

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能 概 述 :

请求上传数据

Dcm_ProcessRequestFileTransfer函数定义

函 数 名 称 :

Dcm_ProcessRequestFileTransfer

函 数 原 型 :

Std_ReturnType Dcm_ProcessRequestFileTransfer(

Dcm_OpStatusType OpStatus,

uint8 modeofOperation,

uint16 fileSizeParameterLength,

uint8* filePathAndName,

uint8 dataFormatIdentifier,

uint8* file SizeUncompressedOrDirInfoLength,

uint8* fileSizeCompressed,

uint32* BlockLength,

Dcm_NegativeResponseCodeType* ErrorCode)

服 务 编 号 :

0x57

同 步 /异 步 :

异步

是 否 可 重 入 :

输 入 参 数 :

OpStatus:操作类型

值 域 :

DCM_INITIAL DCM_PENDING DCM_CANCEL DCM_FORCE_RCRRP_OK

modeofOperation:操作类型

值 域 :

0…255

fileS izeParameterLength:文件路径长度

值 域 :

0…65535

fileP athAndName:文件路径和名字的指针

值 域 :

data FormatIdentifier:数据格式的指针

值 域 :

输 入 输 出 参 数 :

fileSizeUncompr essedOrDirInfoLength:非压缩长度

fileSizeCompressed:压缩长度

输 出 参 数 :

ErrorCode(out):错误码

Bloc kLength(out):一次传输的块大小

返 回 值 :

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能 概 述 :

请求文件传输

Dcm_MainFunction函数定义

函数名称:

D cm_MainFunction

函数原型:

FUNC (void,DCM_CODE) Dcm_Mai nFunction(void)

服务编号:

0x25

同步/异步:

同步

是否可重入:

输入参数:

值域:

输 入输出参数:

输出参数:

返回值:

功能概述:

Dc m模块主函数处理

Dcm_KeyMAsyncCertificateVerifyFinished

函数名称:

Dcm_KeyM AsyncCertificat eVerifyFinished

函数原型:

FUNC( Std_ReturnType, DCM_CODE) D cm_KeyMAsyncCer tificateVerifyF inished(KeyM_Ce rtificateIdType CertID, KeyM_Certif icateStatusType Result);

服务编号:

同步/异步:

同步

是否可重入:

输入参数:

resul t:异步处理结果

值域:

certId:证书ID

值域:

输 入输出参数:

输出参数:

返回值:

Std_ReturnType E_OK: this value is always returned

功能概述:

KeyM异 步任务通知接口

Dcm_CsmAsyncJobFinished

函数名称:

Dcm_CsmA syncJobFinished

函数原型:

FUNC( Std_ReturnType, DCM_CODE) Dcm_CsmAsyncJo bFinished(const C rypto_JobType* job, Cr ypto_ResultType result)

服务编号:

同步/异步:

同步

是否可重入:

输入参数:

Jo b:异步任务指针

值域:

resul t:异步任务结果

值域:

输 入输出参数:

输出参数:

返回值:

Std_ReturnType E_OK: this value is always returned.

功能概述:

Csm异 步任务通知接口

可配置函数定义

Xxx_GetSeed函数定义

函 数名 称:

Xxx_GetSeed

函 数原 型:

Std_ReturnType Xxx_GetSeed(const uint8* SecurityAccessDataRecord, Dcm_OpStatusType OpStatus,

uint8* See d,Dcm_NegativeResponseCodeType* ErrorCode)

服 务编 号:

0x44

同 步/异 步:

异步

是否 可重 入:

输 入参 数:

Securi tyAccessDataRecord:此数据记录包 含用于计算种子值的额外数据的指针

值 域 :

OpStatus:操作类型

值 域 :

DCM_INITIAL DCM_PENDING DCM_CANCEL DCM_FORCE_RCRRP_OK

输 入输 出参 数:

输 出参 数:

Seed:存放种子的指针

ErrorCode:负响应码

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能概 述:

获取种子的配置接口

Xxx_CompareKey函数定义

函 数名 称:

Xxx_CompareKey

函 数原 型:

Std_ReturnType Xxx_CompareKey( const uint8* Key,

Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode)

服 务编 号:

0x47

同 步/异 步:

异步

是否 可重 入:

输 入参 数:

Key:用于比较的key的指针

值 域 :

OpStatus:操作类型

值 域 :

DCM_INITIAL DCM_PENDING DCM_CANCEL DCM_FORCE_RCRRP_OK

输 入输 出参 数:

输 出参 数:

ErrorCode:错误码

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

E_COMPARE_KEY_FAILED:Key不匹配

功 能概 述:

比较key的配置接口

Xxx_GetSecurityAttemptCounter函数定义

函 数名 称:

Xxx_GetSecurityAttemptCounter

函 数原 型:

Std_ReturnType Xxx_GetSecurityAttemptCounter( Dcm_OpStatusType OpStatus,uint8* AttemptCounter )

服 务编 号:

0x59

同 步/异 步:

异步

是否 可重 入:

输 入参 数:

OpStatus:操作类型

值 域 :

DCM_INITIAL; DCM_PENDING; DCM_CANCEL

DCM_FORCE_RCRRP_OK

输 入输 出参 数:

输 出参 数:

AttemptCounter:错误计数指针

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能概 述:

获取安全访问错误计数的配置。

Xxx_ReadData函数定义

函 数名 称:

Xxx_ReadData

函 数原 型:

Std_ReturnType Xxx_ReadData(Dcm_OpStatusType OpStatus,

uint8* Data,

Dcm_NegativeResponseCodeType* ErrorCode)

服 务编 号:

0x58

同 步/异 步:

异步

是否 可重 入:

输 入参 数:

OpStatus:操作类型

值 域 :

DCM_INITIAL DCM_PENDING DCM_CANCEL DCM_FORCE_RCRRP_OK

输 入输 出参 数:

输 出参 数:

Data:读取数据存放的指针

ErrorCode:错误码

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能概 述:

获取数据的配置接口

Xxx_WriteData函数定义

函 数名 称:

Xxx_WriteData

函 数原 型:

Std_ReturnType Xxx_WriteData(uint8* Data,

uint16 DataLength,

Dcm_OpStatusType OpStatus,

Dcm_NegativeResponseCodeType* ErrorCode)

服 务编 号:

0x3e

同 步/异 步:

异步

是否 可重 入:

输 入参 数:

OpStatus:操作类型

值 域 :

DCM_INITIAL DCM_PENDING DCM_CANCEL DCM_FORCE_RCRRP_OK

Data:写数据存放的指针

值 域 :

DataLength:写入数据的长度

值 域 :

0…65535

输 入输 出参 数:

输 出参 数:

ErrorCode:错误码

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能概 述:

写数据的配置接口

Xxx_ReadDataLength函数定义

函 数名 称:

Xxx_ReadDataLength

函 数原 型:

Std_ReturnType Xxx_ReadDataLength( Dcm_OpStatusType OpStatus, uint16* DataLength)

服 务编 号:

0x4c

同 步/异 步:

异步

是否 可重 入:

输 入参 数:

OpStatus:操作类型

值 域 :

DCM_INITIAL DCM_PENDING DCM_CANCEL DCM_FORCE_RCRRP_OK

输 入输 出参 数:

输 出参 数:

DataLength:写入数据的长度

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能概 述:

获取读取数据长度的配置接口

Xxx_ConditionCheckRead函数定义

函 数名 称:

Xxx_ConditionCheckRead

函 数原 型:

Std_ReturnType Xxx_ConditionCheckRead (Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode)

服 务编 号:

0x37

同 步/异 步:

异步

是否 可重 入:

输 入参 数:

OpStatus:操作类型

值 域 :

DCM_INITIAL DCM_PENDING DCM_CANCEL DCM_FORCE_RCRRP_OK

输 入输 出参 数:

输 出参 数:

ErrorCode:错误码

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能概 述:

读取条件检查的配置接口

Xxx_GetScalingInformation函数定义

函数名称:

Xxx_GetScalingInformation

函数原型:

Std_ReturnType Xxx_GetScalingInformation( uint8* ScalingInfo, Dcm_NegativeResponseCodeType* ErrorCode )

服务编号:

0x4b

同步/异步:

同步

是 否可重入:

输入参数:

值 域:

输入 输出参数:

输出参数:

ScalingInfo(out):数据信息的指针

ErrorCode(out):错误码

返回值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

功能概述:

获取数据信息的配置接口

Xxx_SetSecurityAttemptCounter函数定义

函 数名 称:

Xxx_SetSecurityAttemptCounter

函 数原 型:

Std_ReturnType Xxx_SetSecurityAttemptCounter(

Dcm_OpStatusType OpStatus,uint8 AttemptCounter)

服 务编 号:

0x5a

同 步/异 步:

异步

是否 可重 入:

输 入参 数:

OpStatus:操作类型

值 域 :

DCM_INITIAL DCM_PENDING DCM_CANCEL DCM_FORCE_RCRRP_OK

At temptCounter:错误计数指针的指针

值 域 :

输 入输 出参 数:

输 出参 数:

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

功 能概 述:

存储安全访问错误计数的接口

Xxx_ReturnControlToECU函数定义

函数名称:

Xxx_ReturnControlToECU

函数原型:

Std_ReturnType Xxx_ReturnControlToECU( [Dcm_ControlMask_{Data} controlMask,] Dcm_NegativeResponseCodeType* ErrorCode )

服务编号:

0x4f

同步/异步:

同步

是否可重入:

输入参数:

controlMask:控制掩码

值 域 :

0 …255

输 入输出参数:

输出参数:

ErrorCode:错误码

返回值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

功能概述:

重置为ECU默认数据的配置接口

Xxx_ResetToDefault函数定义

函数名称:

Xxx_ResetToDefault

函数原型:

Std_ReturnType Xxx_ResetToDefault( [Dcm_ControlMask_{Data} controlMask,] Dcm_NegativeResponseCodeType* ErrorCode )

服务编号:

0x4d

同步/异步:

同步

是否可重入:

输入参数:

controlMask:控制掩码

值 域 :

0 …255

输 入输出参数:

输出参数:

ErrorCode:错误码

返回值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

功能概述:

重置为默认数据的配置接口

Xxx_FreezeCurrentState函数定义

函数名称:

Xxx_FreezeCurrentState

函数原型:

Std_ReturnType Xxx_FreezeCurrentState ( Dcm_OpStatusType OpStatus, [Dcm_ControlMask_{Data} controlMask,] Dcm_NegativeResponseCodeType* ErrorCode )

服务编号:

0x4a

同步/异步:

同步

是否可重入:

输入参数:

controlMask:控制掩码

值 域 :

0 …255

输 入输出参数:

输出参数:

ErrorCode:错误码

返回值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

功能概述:

用于冻结当前数据状态的配置接口

Xxx_ShortTermAdjustment函数定义

函数名称:

Xxx_ShortTermAdjustment

函数原型:

Std_ReturnType Xxx_ShortTermAdjustment( uint8* ControlStateInfo, uint16 DataLength, [Dcm_ControlMask_{Data} controlMask,] Dcm_NegativeResponseCodeType* ErrorCode )

服务编号:

0x54

同步/异步:

同步

是 否可重入:

输入参数:

Co ntrolStateInfo:ControlState信息的指针

值 域 :

DataLength:控制数据

值 域 :

0 …65535

controlMask:控制掩码

值 域 :

0…255

输入 输出参数:

输出参数:

ErrorCode:错误码

返回值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

功能概述:

调整数据控制的配置接口

Xxx_IsDidAvailable函数定义

函 数名 称:

Xxx_IsDidAvailable

函 数原 型:

Std_ReturnType Xxx_IsDidAvailable(uint16 DID,

Dcm_OpStatusType OpStatus,Dcm_DidSupportedType* supported)

服 务编 号:

0x53

同 步/异 步:

异步

是否 可重 入:

输 入参 数:

OpStatus:操作类型

值 域 :

DCM_INITIAL

DCM_PENDING

DCM_CANCEL

DCM_FORCE_RCRRP_OK

DID:DID值

值 域 :

0…65535

输 入输 出参 数:

输 出参 数:

supported:支持结果

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能概 述:

范围DID检查支持的配置接口

Xxx_ReadDidData函数定义

函 数名 称:

Xxx_ReadDidData

函 数原 型:

Std_ReturnType Xxx_ReadDidData(uint16 DID,uint8* Data,

Dcm_OpStatusType OpStatus,uint16 DataLength,

Dcm_NegativeResponseCodeType ErrorCode)

服 务编 号:

0x40

同 步/异 步:

异步

是否 可重 入:

输 入参 数:

OpStatus:操作类型

值 域 :

DCM_INITIAL

DCM_PENDING

DCM_CANCEL

DCM_FORCE_RCRRP_OK

DID:DID值

值 域 :

0…255

输 入输 出参 数:

输 出参 数:

Data:数据输出指针

DataLength:数据输出长度

ErrorCode:错误码

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能概 述:

范围DID读取数据接口

Xxx_WriteDidData函数定义

函 数名 称:

Xxx_WriteDidData

函 数原 型:

Std_ReturnType Xxx_WriteDidData(uint16 DID,uint8* Data,

Dcm_OpStatusType OpStatus,uint16 DataLength,

Dcm_NegativeResponseCodeType ErrorCode)

服 务编 号:

0x41

同 步/异 步:

异步

是否 可重 入:

输 入参 数:

OpStatus:操作类型

值 域 :

DCM_INITIAL

DCM_PENDING

DCM_CANCEL

DCM_FORCE_RCRRP_OK

DID:DID值

值 域 :

0…255

Data:数据输出指针的指针

值 域 :

DataLength:数据输出长度

值 域 :

0…65535

输 入输 出参 数:

输 出参 数:

ErrorCode:错误码

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能概 述:

范围DID数据写配置接口

Xxx_ReadDidRangeDataLength函数定义

函 数名 称:

Xxx_ReadDidRangeDataLength

函 数原 型:

Std_ReturnType X xx_ReadDidRangeDataLength(uint16 DID,Dcm_OpStatusType OpStatus,uint16* DataLength)

服 务编 号:

0x5e

同 步/异 步:

异步

是否 可重 入:

输 入参 数:

OpStatus:操作类型

值 域 :

DCM_INITIAL

DCM_PENDING

DCM_CANCEL

DCM_FORCE_RCRRP_OK

DID:DID值

值 域 :

0…255

输 入输 出参 数:

输 出参 数:

DataLength:数据输出长度

ErrorCode:错误码

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能概 述:

范围DID读取数据长度配置接口

Xxx_Start函数定义

函 数名 称:

Xxx_Start

函 数原 型:

Std_ReturnType Xxx_Start (

[DcmDspRoutineSignalType dataIn_1, …

DcmDspRoutineSignalType dataIn_n],

[const uint8* dataInVar],

Dcm_OpStatusType OpStatus,

[DcmDspRoutineSignalType dataOut_1, …

DcmDspRoutineSignalType dataOut_n],

[uint8* dataOutVar],

[uint16* currentDataLength],

Dcm_NegativeResponseCodeType ErrorCode

)

服 务编 号:

0x5b

同 步/异 步:

异步

是否 可重 入:

输 入参 数:

dataIn_1:固定输入数据1

值 域 :

0…14

dataIn_n:固定输入数据n

值 域 :

0…14

d ataInVar:可变长度输入数据的指针

值 域 :

OpStatus:操作类型

值 域 :

DCM_INITIAL

DCM_PENDING

DCM_CANCEL

DCM_FORCE_RCRRP_OK

currentLengthDataInVa r:dataInVar参数的字节长度的指针

值 域 :

输 入输 出参 数:

输 出参 数:

dataOutVar:可变长度输出数据

currentLengthDa taInVar:dataInVar参数的字节长度

dataOut_1:固定输出数据1

dataOut_n:固定输出数据n

ErrorCode:错误码

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

功 能概 述:

启动例程的配置接口

Xxx_Stop函数定义

函数名称:

Xxx_Stop

函数原型:

Std_ReturnType Xxx_Stop( [DcmDspRoutineSignalType dataIn_1,] … [DcmDspRoutineSignalType dataIn_n,] [const uint8* dataInVar,] [DcmDspRoutineSignalType dataOut_1,] … [DcmDspRoutineSignalType dataOut_n,] [uint8* dataOutVar,] [uint16 currentLengthDataInVar,] [uint16* currentLengthDataOutVar,] Dcm_NegativeResponseCodeType* ErrorCode )

服务编号:

0x5c

同步/异步:

异步

是否可重入:

输入参数:

dataIn_1:固定输入数据1

值 域:

0 …14

dataIn_n:固定输入数据n

值 域:

0 …14

dataInVar:可变长度输入数据

值 域:

currentL engthDataInVar:dataInVar参数的字节长度

值 域:

输 入输出参数:

输出参数:

dataOutVar:可变长度输出数据

currentL engthDataInVar:dataInVar参数的字节长度

dataOut_1:固定输出数据1

dataOut_n:固定输出数据n

ErrorCode:错误码

返回值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

DCM_E_ FORCE_RCRRP:立即发送0x78,并且正在处理

功能概述:

停止例程的配置接口

Xxx_RequestResults函数定义

函数 名称:

Xxx_RequestResults

函数 原型:

Std_ReturnType Xxx_RequestResults( Dcm_OpStatusType OpStatus, [DcmDspRoutineSignalType* dataOut_1,] … [DcmDspRoutineSignalType* dataOut_n,] [uint8* dataOutVar,] [uint16* currentLengthDataOutVar,] Dcm_NegativeResponseCodeType* ErrorCode )

服务 编号:

0x5d

同步/ 异步:

异步

是否可 重入:

输入 参数:

dataInVar:可变长度输入数据

值 域 :

指向 dataInVar的指针

currentLengthD ataInVar:dataInVar参数的字节长度

值 域 :

指向currentLengt hDataInVar的指针

输 入输出 参数:

输出 参数:

dataOut_1:固定输出数据1

dataOut_n:固定输出数据n

dataOutVar:可变长度输出数据

ErrorCode:错误码

返 回值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 正在处理

DCM_E_FORCE_ RCRRP:立即发送0x78,并且正在处理

功能 概述:

获取例程结果的配置接口

Xxx_ClearDTCCheckFnc函数定义

函 数名称:

Xxx_ClearDTCCheckFnc

函 数原型:

Std_ReturnType Xxx_ClearDTCCheckFnc(uint32 GoDTC,

Dcm_NegativeResponseCodeType* ErrorCode)

服 务编号:

0x5f

同 步/异步:

同步

是否 可重入:

输 入参数:

GoDTC(in):DTC组

值 域 :

0 …0xFFFFFFFF

输入输 出参数:

输 出参数:

ErrorCode:错误码

返回值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

功 能概述:

清除DTC组的检查配置接口

SWC服务组件封装

以下类型和接口可以封装至SWC生成完整的服务组件,可以与应用通过端口连接,没有列出的部分dcm底层暂时不支持。

实现数据类型封装

类型名及定义引用

生成条件

4.1.2 Dcm_SecLevelType

4.1.3 Dcm_SesCtrlType

4.1.4 Dcm_ProtocolType

4.1.5 Dcm_NegativeResponseCodeType

4.1.8 Dcm_ConfirmationStatusType

4.1.9 Dcm_OpStatusType

CS接口封装

注:下面提到的<UserModule>和<UserPortName>分别为用户SWC的名字和对应端口名,在与Dcm服务组件端口连接后适用。

Rte_Call_Dcm_CallbackDCMRequestServices_{Name}_StartProtocol

函数名称:

Rte_Call_Dcm_Callbac kDCMRequestServices_{Name}_StartProtocol

函数定义:

Std_ReturnType Rte_Call_Dcm_Callbac kDCMRequestServices_{Name}_StartProtocol

(const Dcm_ProtocolType ProtocolId)

服务编号:

N/A

同 步/异步:

N/A

是 否可重入:

N/A

输入参数:

ProtocolId:协议ID

值 域 :

0 …255

输入 输出参数:

输出参数:

返回值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

E_PROTOCOL_NOT_ALLOWED: 协议不允许

功能概述:

请求开始协议

变体:

Name=DcmConfigSe t/DcmDsl/DcmDslCallbackDCMRequestService.

SHORT-NAME

生成条件:

DcmConfigS et/DcmDsl/DcmDslCallbackDCMRequestService

端口类型:

Require Port

从属端口:

CallbackDCMRequestServices_{Name}

Rte_Call_Dcm_CallbackDCMRequestServices_{Name}_StopProtocol

函数名称:

Rte_Call_Dcm_Callba ckDCMRequestServices_{Name}_StopProtocol

函数定义:

Std_ReturnType Rte_Call_Dcm_Callba ckDCMRequestServices_{Name}_StopProtocol

(const Dcm_ProtocolType ProtocolId)

服务编号:

N/A

同 步/异步:

N/A

是 否可重入:

N/A

输入参数:

ProtocolId:协议ID

值 域 :

0 …255

输入 输出参数:

输出参数:

返回值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

E_PROTOCOL_NOT_ALLOWED: 协议不允许

功能概述:

请求结束协议

变体:

Name=DcmConfigSe t/DcmDsl/DcmDslCallbackDCMRequestService.

SHORT-NAME

生成条件:

DcmConfigS et/DcmDsl/DcmDslCallbackDCMRequestService

端口类型:

Require Port

从属端口:

CallbackDCMRequestServices_{Name}

Rte_Call_Dcm_DataServices_DIDRange_{Range}_IsDidAvailable

函数名称:

Rte_C all_Dcm_DataServices_DIDRange_{Range}_IsDidAvailable

引 用函数定义:

详见4.4.14

变体:

Range =DcmConfigSet/DcmDsp/DcmDsp/DcmDspDidRange.SHORT_NAME

生成条件:

  1. DcmConfigSet/DcmDsp/DcmDsp/DcmDspDidRange.

DcmDspDidRangeUsePort == TRUE

And

2. DcmConfigS et/DcmDsp/DcmDsp/DcmDspDidRange.DcmDspDidRangeHasGaps == TRUE

端口类型:

Require Port

从属端口:

DataServices_DIDRange_{Range}

Rte_Call_Dcm_DataServices_DIDRange_{Range}_ReadDidData

函数名称:

Rt e_Call_Dcm_DataServices_DIDRange_{Range}_ReadDidData

引 用函数定义:

详见4.4.15

变体:

Range =DcmConfigSet/DcmDsp/DcmDsp/DcmDspDidRange.SHORT_NAME

生成条件:

  1. DcmConfigSet/DcmDsp/DcmDsp/DcmDspDidRange.

DcmDspDidRangeUsePort == TRUE

And

2. Dcm/DcmConfigSet/DcmDs p/DcmDspDidRange/DcmDspDidRangeInfoRef->DcmDspDidRead != NULL

端口类型:

Require Port

从属端口:

DataServices_DIDRange_{Range}

Rte_Call_Dcm_DataServices_DIDRange_{Range}_ReadDidRangeDataLength

函数名称:

Rte_Call_Dcm_ DataServices_DIDRange_{Range}_ReadDidRangeDataLength

引 用函数定义:

详见4.4.17

变体:

Range =DcmConfigSet/DcmDsp/DcmDsp/DcmDspDidRange.SHORT_NAME

生成条件:

  1. DcmConfigSet/DcmDsp/DcmDsp/DcmDspDidRange.

DcmDspDidRangeUsePort == TRUE

And

2. Dcm/DcmConfigSet/DcmDs p/DcmDspDidRange/DcmDspDidRangeInfoRef->DcmDspDidRead != NULL

端口类型:

Require Port

从属端口:

DataServices_DIDRange_{Range}

Rte_Call_Dcm_DataServices_DIDRange_{Range}_WriteDidData

函数名称:

Rte _Call_Dcm_DataServices_DIDRange_{Range}_WriteDidData

引 用函数定义:

详见4.4.16

变体:

Range =DcmConfigSet/DcmDsp/DcmDsp/DcmDspDidRange.SHORT_NAME

生成条件:

  1. DcmConfigSet/DcmDsp/DcmDsp/DcmDspDidRange.

DcmDspDidRangeUsePort == TRUE

And

2. Dcm/DcmConfigSet/DcmDsp /DcmDspDidRange/DcmDspDidRangeInfoRef->DcmDspDidWrite != NULL

端口类型:

Require Port

从属端口:

DataServices_DIDRange_{Range}

Rte_Call_Dcm_DataServices_{Data}_ConditionCheckRead

函数名称:

Rte_Call_Dcm_DataServices_{Data}_ConditionCheckRead

引 用函数定义:

详见4.4.7

变体:

Data=DcmConfigSet/DcmDsp/DcmDspData.SHORT-NAME

生成条件:

1. DcmConfigSet/DcmDsp/DcmDspData.DcmDspDataUsePort == USE_DATA_SYNCH_CLIENT_SERVER/USE_DATA_ASY NCH_CLIENT_SERVER/USE_DATA_ASYNCH_CLIENT_SERVER_ERROR

And

2. DcmConfigSet/DcmDsp/DcmDspDidInfo/DcmDspDidRead != NULL

And

3. (Dcm/DcmConfigSet/ DcmDsp/DcmDspData.DcmDspDataConditionCheckReadFncUsed == TRUE

端口类型:

Require Port

从属端口:

DataServices_{Data}

Rte_Call_Dcm_DataServices_{Data}_FreezeCurrentState

函数名称:

Rte_Call_Dcm_DataServices_{Data}_FreezeCurrentState

引 用函数定义:

详见4.4.12

变体:

Data=DcmConfigSet/DcmDsp/DcmDspData.SHORT-NAME

生成条件:

1. DcmConfigSet/DcmDsp/DcmDspData.DcmDspD ataUsePort==USE_DATA_SYNCH_CLIENT_SERVER/USE_DATA_ASY NCH_CLIENT_SERVER/USE_DATA_ASYNCH_CLIENT_SERVER_ERROR

And

2. DcmConfigSet/DcmDsp/DcmDspDidIn fo/DcmDspDidControl/DcmDspDidFreezeCurrentState==TRUE

端口类型:

Require Port

从属端口:

DataServices_{Data}

Rte_Call_Dcm_DataServices_{Data}_GetScalingInformation

函数名称:

Rt e_Call_Dcm_DataServices_{Data}_GetScalingInformation

引 用函数定义:

详见4.4.8

变体:

Data=DcmConfigSet/DcmDsp/DcmDspData.SHORT-NAME

生成条件:

1. DcmConfigSet/DcmDsp/DcmDspData.DcmDspD ataUsePort==USE_DATA_SYNCH_CLIENT_SERVER/USE_DATA_ASY NCH_CLIENT_SERVER/USE_DATA_ASYNCH_CLIENT_SERVER_ERROR

And

2. DcmConfigSet/DcmDsp/Dc mDspData/DcmDspDataInfoRef->DcmDspDataScalingInfoSize != NULL

端口类型:

Require Port

从属端口:

DataServices_{Data}

Rte_Call_Dcm_DataServices_{Data}_ReadData

函数名称:

Rte_Call_Dcm_DataServices_{Data}_ReadData

引 用函数定义:

详见4.4.4

变体:

Data=

  1. DcmConfigSet/DcmDsp/DcmDspData.SHORT-NAME

Or

2. D cmConfigSet/DcmDsp/DcmDspPid/DcmDspPidData.SHORT-NAME

生成条件:

{

1. DcmConfigSet/DcmDsp/DcmDspData.DcmDspD ataUsePort==USE_DATA_SYNCH_CLIENT_SERVER/USE_DATA_ASY NCH_CLIENT_SERVER/USE_DATA_ASYNCH_CLIENT_SERVER_ERROR

And

  1. DcmConfigSet/DcmDsp/DcmDspDidInfo/DcmDspDidRead != NULL

}

Or

{

DcmConfigSet/DcmDsp/DcmDspPid/ DcmDspPidData/DcmDspPidService01.DcmDspPidDataUsePort == USE_DATA_SYNCH_CLIENT_SERVER

}

端口类型:

Require Port

从属端口:

DataServices_{Data}

Rte_Call_Dcm_DataServices_{Data}_ReadDataLength

函数名称:

Rte_Call_Dcm_DataServices_{Data}_ReadDataLength

引 用函数定义:

详见4.4.6

变体:

Data=DcmConfigSet/DcmDsp/DcmDspData.SHORT-NAME

生成条件:

1. DcmConfigSet/DcmDsp/DcmDspData.DcmDspD ataUsePort==USE_DATA_SYNCH_CLIENT_SERVER/USE_DATA_ASY NCH_CLIENT_SERVER/USE_DATA_ASYNCH_CLIENT_SERVER_ERROR

And

  1. DcmConfigSet/DcmDsp/DcmDspDidInfo/DcmDspDidRead != NULL

And

  1. Dcm/DcmConfigSet/DcmDsp/DcmDspData.DcmDspDataType == UINT8_DYN

端口类型:

Require Port

从属端口:

DataServices_{Data}

Rte_Call_Dcm_DataServices_{Data}_ResetToDefault

函数名称:

Rte_Call_Dcm_DataServices_{Data}_ResetToDefault

引 用函数定义:

详见4.4.11

变体:

Data=DcmConfigSet/DcmDsp/DcmDspData.SHORT-NAME

生成条件:

1. DcmConfigSet/DcmDsp/DcmDspData.DcmDspD ataUsePort==USE_DATA_SYNCH_CLIENT_SERVER/USE_DATA_ASY NCH_CLIENT_SERVER/USE_DATA_ASYNCH_CLIENT_SERVER_ERROR

And

2. DcmConfigSet/DcmDsp/D cmDspDidInfo/DcmDspDidControl/DcmDspDidResetToDefault == TRUE

端口类型:

Require Port

从属端口:

DataServices_{Data}

Rte_Call_Dcm_DataServices_{Data}_ReturnControlToECU

函数名称:

Rte_Call_Dcm_DataServices_{Data}_ReturnControlToECU

引 用函数定义:

详见4.4.10

变体:

Data=DcmConfigSet/DcmDsp/DcmDspData.SHORT-NAME

生成条件:

1. DcmConfigSet/DcmDsp/DcmDspData.DcmDspD ataUsePort==USE_DATA_SYNCH_CLIENT_SERVER/USE_DATA_ASY NCH_CLIENT_SERVER/USE_DATA_ASYNCH_CLIENT_SERVER_ERROR

And

{

1. DcmConfigSet/DcmDsp/DcmDs pDidInfo/DcmDspDidControl/DcmDspDidFreezeCurrentState == TRUE

Or

2 . DcmConfigSet/DcmDsp/DcmDspDidInfo/DcmDspDidControl/

DcmDspDidResetToDefault == TRUE

Or

3 . DcmConfigSet/DcmDsp/DcmDspDidInfo/DcmDspDidControl/

DcmDspDidShortTermAdjustment == TRUE

}

端口类型:

Require Port

从属端口:

DataServices_{Data}

Rte_Call_Dcm_DataServices_{Data}_ShortTermAdjustment

函数名称:

Rte_Call_Dcm_DataServices_{Data}_ShortTermAdjustment

引 用函数定义:

详见4.4.13

变体:

Data=DcmConfigSet/DcmDsp/DcmDspData.SHORT-NAME

生成条件:

1. DcmConfigSet/DcmDsp/DcmDspData.DcmDspD ataUsePort==USE_DATA_SYNCH_CLIENT_SERVER/USE_DATA_ASY NCH_CLIENT_SERVER/USE_DATA_ASYNCH_CLIENT_SERVER_ERROR

And

2 . DcmConfigSet/DcmDsp/DcmDspDidInfo/DcmDspDidControl/

DcmDspDidShortTermAdjustment == TRUE

端口类型:

Require Port

从属端口:

DataServices_{Data}

Rte_Call_Dcm_InfotypeServices_{VehInfoData}_GetInfotypeValueData

函 数 名 称 :

Rte_Call_Dcm_InfotypeServices _{VehInfoData}_GetInfotypeValueData

函 数 定 义 :

Std_ReturnType Rte_Call_Dcm_InfotypeServices _{VehInfoData}_GetInfotypeValueData

(const Dcm_OpStatusType OpStatus,

Info TypeServicesArrayType_{VehInfoData} DataValueBuffer,

uint8* DataValueBufferSize)

服 务 编 号 :

N/A

同 步 / 异 步 :

N/A

是 否 可 重 入 :

N/A

输 入 参 数 :

OpStatus:操作类型

值 域 :

DCM_INITIAL

DCM_PENDING

DCM_CANCEL

DCM_FORCE_RCRRP_OK

输 入 输 出 参 数 :

DataValueBufferSize:数据长度

输 出 参 数 :

DataValueBuffer:数据内容

注:InfoTypeServicesArray Type_{VehInfoData}类型实际为uint8*

返 回 值 :

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

DCM_E_PENDING: 暂未完成

功 能 概 述 :

获取车辆信息数据

变 体 :

VehInfoDat a=DcmConfigSet/DcmDsp/DcmDspVehInfo/

DcmDspVehInfoData.SHORT-NAME

生 成 条 件 :

DcmConfigSet/Dcm Dsp/DcmDspVehInfo/DcmDspVehInfoData/

DcmDspVehInfoDataUsePort == TRUE

端 口 类 型 :

Require Port

从 属 端 口 :

InfotypeServices_{VehInfoData}

Rte_Call_Dcm_RoutineServices_{RoutineName}_RequestResults

函数名称:

Rte_C all_Dcm_RoutineServices_{RoutineName}_RequestResults

引 用函数定义:

详见4.4.20

变体:

Rout ineName=DcmConfigSet/DcmDsp/DcmDspRRoutine.SHORT_NAME

生成条件:

1. Dc mConfigSet/DcmDsp/DcmDspRRoutine.DcmDspRoutineUsePort == TRUE

And

2. DcmConfi gSet/DcmDsp/DcmDspRoutine/DcmDspRequestRoutineResults != NULL

端口类型:

Require Port

从属端口:

RoutineServices_{RoutineName}

Rte_Call_Dcm_RoutineServices_{RoutineName}_Start

函数名称:

Rte_Call_Dcm_RoutineServices_{RoutineName}_Start

引 用函数定义:

详见4.4.18

变体:

Rout ineName=DcmConfigSet/DcmDsp/DcmDspRRoutine.SHORT_NAME

生成条件:

1. Dc mConfigSet/DcmDsp/DcmDspRRoutine.DcmDspRoutineUsePort == TRUE

And

2. DcmConfigSet/DcmDsp/DcmDspRoutine/DcmDspStartRoutine != NULL

端口类型:

Require Port

从属端口:

RoutineServices_{RoutineName}

Rte_Call_Dcm_RoutineServices_{RoutineName}_Stop

函数名称:

Rte_Call_Dcm_RoutineServices_{RoutineName}_Stop

引 用函数定义:

详见4.4.19

变体:

Rout ineName=DcmConfigSet/DcmDsp/DcmDspRRoutine.SHORT_NAME

生成条件:

1. Dc mConfigSet/DcmDsp/DcmDspRRoutine.DcmDspRoutineUsePort == TRUE

And

2 . DcmConfigSet/DcmDsp/DcmDspRoutine/DcmDspStopRoutine != NULL

端口类型:

Require Port

从属端口:

RoutineServices_{RoutineName}

Rte_Call_Dcm_RequestControlServices_{Tid}_RequestControl

函数名称:

Rte_Call_Dcm_Req uestControlServices_{Tid}_RequestControl

函数定义:

Std_ReturnType Rte_Call_Dcm_Req uestControlServices_{Tid}_RequestControl

( RequestControlServicesOutArrayType_{Tid} OutBuffer,

const RequestControlServicesInArrayType_{Tid} InBuffer

)

服务编号:

N/A

同步/异步:

N/A

是 否可重入:

N/A

输入参数:

InBuffer:输入数据的指针

注:实际数据类型为uint8*

值 域:

输入 输出参数:

输出参数:

OutBuffer:输出数据

注:实际数据类型为uint8*

返回值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

功能概述:

请求控制

变体:

Tid=DcmConfigS et/DcmDsp/DcmDspRequestControl.SHORT-NAME

生成条件:

DcmConfigSet/DcmDsp/DcmDspRequestControl != NULL

端口类型:

Require Port

从属端口:

RequestControlServices_{Tid}

Rte_Call_Dcm_SecurityAccess_{SecurityLevel}_CompareKey

函数名称:

Rt e_Call_Dcm_SecurityAccess_{SecurityLevel}_CompareKey

引 用函数定义:

详见4.4.2

变体:

SecurityLevel=DcmConfigS et/DcmDsp/DcmDspSecurity/DcmDspSecurityRow.SHORT-NAME

生成条件:

DcmConfigSet/DcmDsp/DcmDspSecurity/DcmDspSecurityRow.

DcmDspSecurityUsePort == USE_ASYNCH_CLIENT_SERVER

端口类型:

Require Port

从属端口:

SecurityAccess_{SecurityLevel}

Rte_Call_Dcm_SecurityAccess_{SecurityLevel}_GetSecurityAttemptCounter

函数名称:

Rte_Call_Dcm_Secu rityAccess_{SecurityLevel}_GetSecurityAttemptCounter

引 用函数定义:

详见4.4.3

变体:

SecurityLevel=DcmConfigS et/DcmDsp/DcmDspSecurity/DcmDspSecurityRow.SHORT-NAME

生成条件:

1. DcmConfigSet/DcmDsp/DcmDspSecurity/DcmDspSecurityRow.

DcmDspSecurityAttemptCounterEnabled == TRUE

And

2. DcmConfigSet/DcmDsp/D cmDspSecurity/DcmDspSecurityRow.DcmDspSecurityUsePort == USE_ASYNCH_CLIENT_SERVER

端口类型:

Require Port

从属端口:

SecurityAccess_{SecurityLevel}

Rte_Call_Dcm_SecurityAccess_{SecurityLevel}_GetSeed

函数名称:

Rte_Call_Dcm_SecurityAccess_{SecurityLevel}_GetSeed

引 用函数定义:

详见4.4.1

变体:

SecurityLevel=DcmConfigS et/DcmDsp/DcmDspSecurity/DcmDspSecurityRow.SHORT-NAME

生成条件:

DcmConfigSet/DcmDsp/D cmDspSecurity/DcmDspSecurityRow.DcmDspSecurityUsePort == USE_ASYNCH_CLIENT_SERVER

端口类型:

Require Port

从属端口:

SecurityAccess_{SecurityLevel}

Rte_Call_Dcm_SecurityAccess_{SecurityLevel}_SetSecurityAttemptCounter

函数名称:

Rte_Call_Dcm_Secu rityAccess_{SecurityLevel}_SetSecurityAttemptCounter

引 用函数定义:

详见4.4.9

变体:

SecurityLevel=DcmConfigS et/DcmDsp/DcmDspSecurity/DcmDspSecurityRow.SHORT-NAME

生成条件:

1. DcmConfigSet/DcmDsp/D cmDspSecurity/DcmDspSecurityRow.DcmDspSecurityUsePort == USE_ASYNCH_CLIENT_SERVER

And

2. DcmConfigSet/DcmDsp/DcmDspSecurity/ DcmDspSecurityRow.DcmDspSecurityAttemptCounterEnabled == TRUE

端口类型:

Require Port

从属端口:

SecurityAccess_{SecurityLevel}

Rte_Call_Dcm_ServiceRequestNotification_Confirmation

函 数名 称:

Std_ReturnType

Rte_Call_ Dcm_ServiceRequestNotification_Confirmation

(const uint8 SID,

const uint8 ReqType,

const uint16 SourceAddress,

const Dcm_ConfirmationStatusType confirmationStatus)

函 数定 义:

服 务编 号:

N/A

同 步/异 步:

N/A

是否 可重 入:

N/A

输 入参 数:

SID:服务ID

值 域:

0…255

ReqType:请求类型

值 域:

0…255

SourceAddress:源地址

值 域:

0 …65535

confirmationStatus:确认状态

值 域:

0…255

输 入输 出参 数:

输 出参 数:

返回 值:

Std_ReturnType:

E_OK: 成功

E_NOT_OK: 失败

功 能概 述:

服务请求通知确认

变 体:

生 成条 件:

1. DcmConfigSet/DcmDsd/D cmDsdRequestManufacturerNotificationEnabled == TRUE

Or

2. DcmConfigSet/DcmD sd/DcmDsdRequestSupplierNotificationEnabled == TRUE

端 口类 型:

Require Port

从 属端 口:

Ser viceRequestManufacturerNotification_{Name}

And

ServiceRequestSupplierNotification_{Name}

Rte_Call_<UserModule>_<UserPortName>_TriggerOnEvent

函数名称:

Rt e_Call_<UserModule>_<UserPortName>_TriggerOnEvent

运行 实体函数定义:

详见4.3.9

变体:

RoeNam e=Dcm/DcmConfigSet/DcmDsp/DcmDspRoe/DcmDspRoeEvent.

SHORT-NAME

生成条件:

ConfigSet/DcmDsp/DcmDspRoe/DcmDspRoeEvent != NULL

端口类型:

Provided Port

从属端口:

DCM_Roe_{RoeName}

Rte_Call_<UserModule>_<UserPortName>_GetActiveProtocol

函数名称:

Rte_Ca ll_<UserModule>_<UserPortName>_GetActiveProtocol

运行 实体函数定义:

详见4.3.7

变体:

生成条件:

端口类型:

Provided Port

从属端口:

DCMServices

Rte_Call_<UserModule>_<UserPortName>_GetSecurityLevel

函数名称:

Rte_C all_<UserModule>_<UserPortName>_GetSecurityLevel

运行 实体函数定义:

详见4.3.5

变体:

生成条件:

端口类型:

Provided Port

从属端口:

DCMServices

Rte_Call_<UserModule>_<UserPortName>_GetSesCtrlType

函数名称:

Rte _Call_<UserModule>_<UserPortName>_GetSesCtrlType

运行 实体函数定义:

详见4.3.6

变体:

生成条件:

端口类型:

Provided Port

从属端口:

DCMServices

Rte_Call_<UserModule>_<UserPortName>_ResetToDefaultSession

函数名称:

Rte_Call_ <UserModule>_<UserPortName>_ResetToDefaultSession

运行 实体函数定义:

详见4.3.8

变体:

生成条件:

端口类型:

Provided Port

从属端口:

DCMServices

Rte_Call_<UserModule>_<UserPortName>_SetActiveDiagnostic

函数名称:

Rte_Call _<UserModule>_<UserPortName>_SetActiveDiagnostic

运行 实体函数定义:

详见4.3.10

变体:

生成条件:

端口类型:

Provided Port

从属端口:

DCMServices

模式转换接口封装

DcmDiagnosticSessionControl

接口名称:

DcmDiagnosticSessionControl

变体:

生成条件:

DcmConfigSet/DcmDsp/DcmDspSession/DcmDspSessionRow != NULL

模式组:

diagnosticSession

端口类型:

Provided Port

从属端口:

modeSwitchPort_DcmDiagnosticSessionControl

DcmEcuReset

接口名称:

DcmEcuReset

变体:

生成条件:

模式组:

ecuReset

端口类型:

Provided Port

从属端口:

modeSwitchPort_DcmEcuReset

配置

DcmGeneral

image4

图 DcmGeneral容器配置图

表 DcmGeneral容器配置

UI名称

描述

DcmConfigType

取值范围

PB_CONFIG/PC_CONFIG

默认取值

PC_CONFIG

参数描述

控制Dcm模块配置权限

DcmDDDIDStorage

取值范围

true/false

默认取值

FALSE

参数描述

定义的DDDID存储使能开关

依赖关系

DcmDevErrorDetect

取值范围

true/false

默认取值

TRUE

参数描述

DET检查使能开关

PreemptionProtocolCancelSupport

取值范围

true/false

抢占协议取消支持使能开关

DcmHeaderFileInclusion

取值范围

默认取值

参数描述

头文件包含

DcmRespondAllRequest

取值范围

true/false

如果设置为FALSE, Dcm将不会响应包含服务ID的诊断请求,服务ID的范围是0x40到0x7F或0xC0到0xFF(响应ID)。

DcmTaskTime

取值范围

1E-4 … 0.1

默认取值

0.001

参数描述

主函数调用周期

依赖于底层硬件要求

DcmVersionInfoApi

true/false

获取版本信息接口使能开关

依赖关系

取值范围

Os/Callout/Tm/MainFunction

默认取值

参数描述

选择计时类型[1]

依赖关系

DcmNvRamBlockIdRef

取值范围

默认取值

参数描述

动态DID存储的NVM的块关联

依赖关系

DcmDDDIDStorage配置打开

DcmVinRef

取值范围

默认取值

参数描述

VIN码信息关联DID

依赖关系

DcmConfigSet

DcmDsd

image5

图 DcmDsd容器配置图

表 DcmDsd属性描述

UI名称

描述

DcmDsdRe questManufac turerNotific ationEnabled

取值范围

true/false

默认取值

False

参数描述

请求通知主机厂 通知函数使能开关

依赖关系

DcmD sdRequestSup plierNotific ationEnabled

取值范围

true/false

默认取值

False

参数描述

请求通知供应商 通知函数使能开关

依赖关系

DcmDsdServiceRequestManufacturerNotification

image6

图 DcmDsdServiceRequestManufacturerNotification容器配置图

表 DcmDsdServiceRequestManufacturerNotification属性描述

UI名称

描述

DcmDsdSe rviceRequest Manufacturer Notification

取值范围

默认取值

参数描述

主机厂通知接口

依赖关系

DcmDsdRequestMan ufacturerNotific ationEnabled打开

DcmDsdServiceRequestSupplierNotification

image7

图 DcmDsdServiceRequestSupplierNotification容器配置图

表 DcmDsdServiceRequestSupplierNotification属性描述

UI名称

描述

DcmD sdServiceReq uestSupplier Notification

取值范围

默认取值

参数描述

供应商通知接口

依赖关系

DcmDsdReques tSupplierNotific ationEnabled打开

DcmDsdServiceTable

image8

图 DcmDsdServiceTable容器配置图

表 DcmDsdServiceTable属性描述

UI名称

描述

Dc mDsdSidTabId

取值范围

0 … 255

默认取值

当前index

参数描述

唯一的服务表号

依赖关系

DcmDsdService

image9image10

图 DcmDsdService容器配置图

表 DcmDsdService属性描述

UI名称

描述

DcmDs dServiceUsed

取值范围

true/false

默认取值

True

参数描述

服务使能开关

依赖关系

Dcm DsdSidTabFnc

取值范围

默认取值

NULL_PTR

参数描述

服务的回调接口

依赖关系

根据 DcmDsdSidTabSer viceId的配置自动 获取对应接口名字 ,如配置值的服务 不支持,则报错。

DcmDsdSid TabServiceId

取值范围

0 … 255

默认取值

0

参数描述

服务ID值

依赖关系

DcmDsdSidTab SubfuncAvail

取值范围

true/false

默认取值

False

参数描述

服务 的子服务使能开关

依赖关系

默认 生成,不可修改, 根据ISO规范决定

DcmDsdSu ppressPosRsp

取值范围

true/false

默认取值

False

参数描述

服务正 响应抑制使能开关

依赖关系

DcmD sdSidTabSubfuncA vail使能时可配置

DcmD sdSidTabAddr essingFormat

取值范围

PHYANDFUNC/PHY SICAL/FUNCTIONAL

默认取值

PHYANDFUNC

参数描述

服 务支持的寻址模式

依赖关系

DcmDsdSidTa bModeRuleRef

取值范围

Ref

默认取值

参数描述

对控 制服务执行的DcmD spModeRule的引用

依赖关系

DcmModeRule

DcmD sdSidTabSecu rityLevelRef

取值范围

Ref

默认取值

参数描述

支持 服务的安全级关联

依赖关系

Dcm DsdSidTabSes sionLevelRef

取值范围

默认取值

参数描述

支持 服务的会话级关联

依赖关系

DcmDsdSe rviceRoleRef

取值范围

Ref

默认取值

参数描述

对DcmDspAuthent icationRow的引用

依赖关系

5.2.1.3.1.1DcmDsdSubService

image11

image12

图 DcmDsdSubService容器配置图

表 DcmDsdSubService属性描述

UI名称

描述

DcmDsdS ubServiceFnc

取值范围

默认取值

参数描述

子服务的回调接口

依赖关系

DcmDsd SubServiceId

取值范围

0 … 255

默认取值

0

参数描述

子服务ID值

依赖关系

此处如果作为1 0/27服务的子服务 ,则需配置对应的 DcmDspSessionRo w/DcmDspSecurity Row来匹配会话级/ 安全级,如没有一 一对应,则报错。

DcmDsdSu bServiceRole

取值范围

0 … 4294967295

默认取值

参数描述

每个位代表一个 专用的角色。如果 位值为1,则授予 诊断服务的子功能 访问权限。如果位 值为0,则不允许 为该角色执行服务

依赖关系

DcmDsdSu bServiceUsed

取值范围

true/false

默认取值

True

参数描述

子服务使能开关

依赖关系

DcmDsdSidTa bModeRuleRef

取值范围

默认取值

参数描述

对控制服务执 行的DcmDspModeRu le的引用。如果没 有配置引用,则不 进行模式规则检查

依赖关系

DcmDsdSu bServiceSecu rityLevelRef

取值范围

默认取值

参数描述

支持子 服务的安全级关联

依赖关系

DcmDsdS ubServiceSes sionLevelRef

取值范围

默认取值

参数描述

支持子 服务的会话级关联

依赖关系

DcmDsdSubSe rviceRoleRef

取值范围

默认取值

参数描述

对DcmDspAuthent icationRow的引用

依赖关系

DcmDsl

DcmDslBuffer

image13

图 DcmDslBuffer容器配置图

表 DcmDslBuffer属性描述

UI名称

描述

DcmD slBufferSize

取值范围

8 … 4294967294

默认取值

8

参数描述

缓冲区大小

依赖关系

DcmDslCallbackDCMRequestService

image14

图 DcmDslCallbackDCMRequestService容器配置图

表 DcmDslCallbackDCMRequestService属性描述

UI名称

描述

DcmDslC allbackDCMRe questService

取值范围

默认取值

参数描述

启动协议和停止协 议的通知接口配置

依赖关系

多协议 时需要配置此项, 默认生成相关接口

DcmDslDiagResp

image15

图 DcmDslDiagResp容器配置图

表 DcmDslDiagResp属性描述

UI名称

描述

DcmD slDiagRespMa xNumRespPend

取值范围

0 …255

默认取值

0

参数描述

一次服务请求0x 78响应的最大次数

依赖关系

D cmDslDiagRes pOnSecondDec linedRequest

取值范围

true/false

默认取值

False

参数描述

多 设备请求时响应N RC0x21的使能开关

依赖关系

DcmDslProtocol
DcmDslProtocolRow

image16

图 DcmDslProtocolRow容器配置图

表 DcmDslProtocolRow属性描述

UI名称

描述

DcmDslPro tocolMaximum ResponseSize

取值范围

1 … 65535

默认取值

0xfff

参数描述

分页发送 能发送的最大长度

依赖关系

DcmPa gedBufferEnabled == TRUE

DcmDslProt ocolPriority

取值范围

0 … 255

默认取值

0

参数描述

协议优先级

依赖关系

DcmDslPro tocolRowUsed

取值范围

true/false

默认取值

True

参数描述

协议使能开关

依赖关系

DcmDslProto colTransType

取值范围

TYPE1/TYPE2

默认取值

TYPE1

参数描述

协议传输类型

依赖关系

未使 用,可以不用关心

DcmDsl ProtocolType

取值范围

DCM_OBD_ON_CAN /DCM_O BD_ON_FLEXRAY/DC M_OBD_ON_IP/DCM_ PERIODICTRANS_ON _CAN/DCM_PERIODI CTRANS_ON_FLEXRA Y/DCM_PERIODICTR ANS_ON_IP/DCM_RO E_ON_CAN/DCM_ROE _ON_FLEXRAY/DCM_ ROE_ON_IP/DCM_SU PPLIER_1/DCM_SUP PLIER_10/DCM_SUP PLIER_11/DCM_SUP PLIER_12/DCM_SUP PLIER_13/DCM_SUP PLIER_14/DCM_SUP PLIER_15/DCM_SUP PLIER_2/DCM_SUPP LIER_3/DCM_SUPPL IER_4/DCM_SUPPLI ER_5/DCM_SUPPLIE R_6/DCM_SUPPLIER _7/DCM_SUPPLIER_ 8/DCM_SUPPLIER_9 /DCM_UDS_ON_CAN/ DCM_UDS_ON_FLEXR AY/DCM_UDS_ON_IP

默认取值

参数描述

协议类型

依赖关系

DcmDspPro tocolEcuAddr

取值范围

0 … 65535

默认取值

参数描述

用于诊断 通信的Ecu源地址

依赖关系

DcmSendRespP endOnRestart

取值范围

true/false

默认取值

True

参数描述

如果设置为TRUE, D cm将在过渡到引导 加载程序或执行EC U复位之前发送NRC 0x78。如果设置 为False,在这种 情况下不发送0x78

依赖关系

DcmTimStrP2 ServerAdjust

取值范围

0 .. 1

默认取值

0

参数描述

P2协议调整时间

依赖关系

Dcm TimStrP2Star ServerAdjust

取值范围

0 .. 5

默认取值

0

参数描述

P2*协议调整时间

依赖关系

Dcm DslProtocolR equestQueued

取值范围

true/false

默认取值

False

参数描述

允许提供 一个额外的缓冲区 ,以便在此协议下 处理另一个请求时 最多排队一个请求

依赖关系

Dcm DemClientRef

取值范围

默认取值

参数描述

关联DemClient

依赖关系

D cmDslProtoco lRxBufferRef

取值范围

默认取值

参数描述

接收buffer关联

依赖关系

DcmDslProt ocolSIDTable

取值范围

默认取值

参数描述

服务表关联

依赖关系

D cmDslProtoco lTxBufferRef

取值范围

默认取值

参数描述

发送buffer关联

依赖关系

5.2.2.4.1.1DcmDslConnection

5.2.2.4.1.1.1DcmDslMainConnection

image17

图 DcmDslMainConnection容器配置图

表 DcmDslMainConnection属性描述

UI名称

描述

DcmD slProtocolRx ConnectionId

取值范围

0 … 65535

默认取值

参数描述

使用此连接 进行诊断通信的测 试器的唯一标识符

依赖关系

DcmDslPr otocolRxTest erSourceAddr

取值范围

0 … 65535

默认取值

0

参数描述

TA值

依赖关系

DcmDslPe riodicTransm issionConRef

取值范围

默认取值

参数描述

周期发送关联

依赖关系

DcmDslROEC onnectionRef

取值范围

默认取值

参数描述

ROE发送关联

依赖关系

DcmD slProtocolCo mMChannelRef

取值范围

默认取值

参数描述

通信通道关联

依赖关系

5.2.2.4.1.1.1.1 DcmDslProtocolRx

image18

图 DcmDslProtocolRx容器配置图

表 DcmDslProtocolRx属性描述

UI名称

描述

DcmDslProtoc olRxAddrType

取值范围

DCM_F UNCTIONAL_TYPE/D CM_PHYSICAL_TYPE

默认取值

DCM_FUNCT IONAL_TYPE

参数描述

接收寻址类型

依赖关系

DcmDslPro tocolRxPduId

取值范围

默认取值

参数描述

接收PDU值

依赖关系

不可配置,根 据DcmDslProtocol RxPduRef自动生成

DcmDslProt ocolRxPduRef

取值范围

默认取值

参数描述

接收PDU关联

依赖关系

5.2.2.4.1.1.1.2DcmDslProtocolTx

image19

图 DcmDslProtocolTx容器配置图

表 DcmDslProtocolTx属性描述

UI名称

描述

DcmDslPro tocolTxPduId

取值范围

默认取值

参数描述

发送PDU值

依赖关系

不可配置,根 据DcmDslProtocol TxPduRef自动生成

DcmDslProt ocolTxPduRef

取值范围

默认取值

参数描述

发送PDU关联

依赖关系

5.2.2.4.1.1.2DcmDslPeriodicTransmission

5.2.2.4.1.1.2.1DcmDslPeriodicConnection

image20

图 DcmDslPeriodicConnection容器配置图

表 DcmDslPeriodicConnection属性描述

UI名称

描述

DcmDslPer iodicTxConfi rmationPduId

取值范围

默认取值

参数描述

周期发送PDU值

依赖关系

不可配置,根 据DcmDslPeriodic TxPduRef自动生成

DcmDslPeri odicTxPduRef

取值范围

默认取值

参数描述

周期发送PDU关联

依赖关系

5.2.2.4.1.1.3DcmDslResponseOnEvent

image21

图 DcmDslResponseOnEvent容器配置图

表 DcmDslResponseOnEvent属性描述

UI名称

描述

DcmD slRoeTxConfi rmationPduId

取值范围

默认取值

参数描述

ROE发送PDU值

依赖关系

不可配置 ,根据DcmDslRoe TxPduRef自动生成

DcmDs lRoeTxPduRef

取值范围

默认取值

参数描述

ROE发送PDU关联

依赖关系

DcmDsp

image22

图 DcmDsp容器配置图

表 DcmDsp属性描述

UI名称

描述

DcmD spDDDIDcheck PerSourceDID

取值范围

True/false

默认取值

False

参数描述

DDDID检查每 个源DID使能开关

依赖关系

Dcm DspDataDefau ltEndianness

取值范围

BIG_ENDIA N/LITTLE_ENDIAN/ OPAQUE

默认取值

BIG_ENDIAN

参数描述

大小端

依赖关系

未使用

DcmDspEna bleObdMirror

取值范围

True/false

默认取值

False

参数描述

OBD 镜像应答使能开关

依赖关系

DcmDsp MaxDidToRead

取值范围

1 … 65535

默认取值

1

参数描述

一 个读取DID请求最 大携带的DID个数

依赖关系

Dc mDspMaxPerio dicDidToRead

取值范围

1 … 65535

默认取值

1

参数描述

最大能读 取的周期DID个数

依赖关系

DcmDspP owerDownTime

取值范围

0 … 255

默认取值

0

参数描述

下电延迟时间

依赖关系

未使用

DcmRespon seToEcuReset

取值范围

AFTER_RE SET/BEFORE_RESET

默认取值

A FTER_RESET

D cmDspRoutine CheckRestart

取值范围

True/false

默认取值

False

参数描述

是否检查例 程重启并报告NRC 24

依赖关系

DcmDspAuthentication

image23

表 DcmDspAuthentication容器配置图

图 DcmDspAuthentication属性描述

UI名称

描述

DcmDs pAuthenticat ionDefaultSe ssionTimeOut

取值范围

0 … INF

默 认取值

参数描述

定义在 没有活动通 信的情况下 ,Dcm转换到 未认证状态 所需的秒数

依赖关系

DcmDsp Authenticati onGeneralNRC

取值范围

0 … 255

默 认取值

参数描述

定义了在 证书或内容 无效的情况 下,应发送 替代所有ISO 14229-1定义 的NRC的NRC

依赖关系

DcmD spAuthentica tionRoleSize

取值范围

1 … 4

默 认取值

参数描述

以字节 为单位定义 证书中角色 元素的大小

依赖关系

Dcm DspAuthentic ationWhiteLi stDIDMaxSize

取值范围

1 … 255

默 认取值

参数描述

定义 证书中白名 单元素的最 大字节大小

依赖关系

Dcm DspAuthentic ationWhiteLi stMemorySele ctionMaxSize

取值范围

1 … 255

默 认取值

参数描述

定义 证书中白名 单元素的最 大字节大小

依赖关系

Dcm DspAuthentic ationWhiteLi stRIDMaxSize

取值范围

1 … 255

默 认取值

参数描述

定义 证书中白名 单元素的最 大字节大小

依赖关系

DcmDspAu thentication WhiteListSer vicesMaxSize

取值范围

1 … 255

默 认取值

参数描述

定义 证书中白名 单元素的最 大字节大小

依赖关系

DcmDs pAuthenticat ionGeneralNR CModeRuleRef

取值范围

默 认取值

参数描述

模 式规则,定 义由于证书 或内容无效 导致的所有 故障是否应 发送一般NRC

依赖关系

DcmDsp Authenticati onDeauthenti catedRoleRef

取值范围

默 认取值

参数描述

对 DcmDspAuthe nticationRo w的引用,该 引用定义了 其中的角色 ,该角色被 用作去身份 验证的角色

依赖关系

DcmDspA uthenticatio nPersistStat eModeRuleRef

取值范围

默 | 认 | 取 | 值 |

无 |



参数描述

存 储当前状态 的模式规则

依赖关系

DcmDspAuthenticationConnection

image24

图 DcmDspAuthenticationConnection容器配置图

表 DcmDspAuthenticationConnection属性描述

UI名称

描述

Dc mDspAuthenti cationEcuCha llengeLength

取值范围

1 .. 65535

默认取值

参数描述

ECU Cha llenge的字节长度

依赖关系

Dcm DspAuthentic ationCertifi catePublicKe yStoreJobRef

取值范围

默认取值

参数描述

对用 于在Csm中存储公 钥的CsmJob的引用

依赖关系

DcmDspAut henticationC lientChallen geSignJobRef

取值范围

默认取值

参数描述

引用用于签署 客户端挑战的作业

依赖关系

DcmDspAu thentication ConnectionCe rtificateRef

取值范围

默认取值

参数描述

对用于 在KeyM中存储证书 的KeyM证书的引用

依赖关系

DcmDspAuthe nticationCon nectionMainC onnectionRef

取值范围

默认取值

参数描述

对使用此 身份验证配置的d sl诊断连接的引用

依赖关系

DcmDspAuthe nticationECU CertificateK eyElementRef

取值范围

默认取值

参数描述

对双向身 份验证期间用作服 务器证书的Crypto KeyElement的引用

依赖关系

D cmDspAuthent icationECUCe rtificateRef

取值范围

默认取值

参数描述

使用服务器证书 引用KeyMCertifi cate进行双向认证

依赖关系

Dcm DspAuthentic ationPublicK eyElementRef

取值范围

默认取值

参数描述

使用证书中的公钥 引用证书数据元素

依赖关系

DcmDspAu thentication RandomJobRef

取值范围

默认取值

参数描述

使用服务器证书 引用KeyMCertifi cate进行双向认证

依赖关系

DcmDspAuth enticationRo leElementRef

取值范围

默认取值

参数描述

使用服务器证书 引用KeyMCertifi cate进行双向认证

依赖关系

Dcm DspAuthentic ationTargetI dentificatio nModeRuleRef

取值范围

默认取值

参数描述

对 用于评估目标标识 的模式规则的引用

依赖关系

DcmDsp Authenticati onVerifyProo fOfOwnerShip ClientJobRef

取值范围

默认取值

参数描述

对CsmJob的引用, 用于在Csm中验证 所有权证明客户端

依赖关系

DcmDsp Authenticati onWhiteListD IDElementRef

取值范围

默认取值

参数描述

使用证书中数 据标识符的白名单 引用证书数据元素

依赖关系

DcmDsp Authenticati onWhiteListM emorySelecti onElementRef

取值范围

默认取值

参数描述

对证书数据元 素的引用,其中包 含证书中用户定义 内存选择的白名单

依赖关系

DcmDsp Authenticati onWhiteListR IDElementRef

取值范围

默认取值

参数描述

使用证书中例 程标识符的白名单 引用证书数据元素

依赖关系

DcmDspAuthe nticationWhi teListServic esElementRef

取值范围

默认取值

参数描述

使 用证书中的白名单 引用证书数据元素

依赖关系

DcmDspAuthenticationRow

image25

图 DcmDspAuthenticationRow容器配置图

表 DcmDspAuthenticationRow属性描述

UI名称

描述

DcmDspAuthe nticationRol eBitPosition

取值范围

1 … 65535

默认取值

参数描述

在身份验证位域中 定义代表角色的位

依赖关系

DcmDspClearDTC

image26

图 DcmDspClearDTC容器配置图

表 DcmDspClearDTC属性描述

UI名称

描述

DcmDspClea rDTCCheckFnc

取值范围

默认取值

打开后默 认函数名为

Rte_Cle arDTCCheck

参数描述

清除DTC 检查条件回调接口

依赖关系

D cmDspClearDT CModeRuleRef

取值范围

默认取值

参数描述

关联DcmModeRule

依赖关系

DcmDspComControl
DcmDspComControlAllChannel

image27

图 DcmDspComControlAllChannel容器配置图

表 DcmDspComControlAllChannel属性描述

UI名称

描述

DcmDsp ComControlAl lChannelUsed

取值范围

True/false

默认取值

True

参数描述

所有 通信控制使能开关

依赖关系

DcmDspAllCo mMChannelRef

取值范围

默认取值

参数描述

关联的通信通道

依赖关系

DcmDspComControlSpecificChannel

image28

图 DcmDspComControlSpecificChannel容器配置图

表 DcmDspComControlSpecificChannel属性描述

UI名称

描述

DcmDspComCo ntrolSpecifi cChannelUsed

取值范围

True/false

默认取值

True

参数描述

特殊 通信控制使能开关

依赖关系

DcmD spSpecificCo mMChannelRef

取值范围

默认取值

参数描述

关联的通信通道

依赖关系

DcmDsp SubnetNumber

取值范围

1 .. 14

默认取值

1

参数描述

子网号

依赖关系

DcmDspComControlSubNode

image29

图 DcmDspComControlSubNode容器配置图

表 DcmDspComControlSubNode属性描述

UI名称

描述

Dcm DspComContro lSubNodeUsed

取值范围

True/false

默认取值

True

参数描述

子 节点控制使能开关

依赖关系

D cmDspComCont rolSubNodeCo mMChannelRef

取值范围

默认取值

参数描述

关联的通信通道

依赖关系

D cmDspComCont rolSubNodeId

取值范围

1 .. 65535

默认取值

1

参数描述

子节点号

依赖关系

DcmDspCommonAuthorization

image30

图 DcmDspCommonAuthorization 容器配置图

表 DcmDspCommonAuthorization 属性描述

UI名称

描述

DcmDspCommon Authorizatio nModeRuleRef

取值范围

默认取值

参数描述

关联DcmModeRule

依赖关系

DcmDs pCommonAutho rizationSecu rityLevelRef

取值范围

默认取值

参数描述

安全级关联

依赖关系

DcmDspCommo nAuthorizati onSessionRef

取值范围

默认取值

参数描述

会话级关联

依赖关系

DcmDspControlDTCSetting

image31

图 DcmDspControlDTCSetting容器配置图

表 DcmDspControlDTCSetting属性描述

UI名称

描述

Dcm SupportDTCSe ttingControl OptionRecord

取值范围

True/false

默认取值

False

参数描述

DTC控 制可选码使能开关

依赖关系

DcmDsp ControlDTCSe ttingReEnabl eModeRuleRef

取值范围

默认取值

参数描述

关联DcmModeRule

依赖关系

DcmDspData

image32

图 DcmDspData容器配置图

表 DcmDspData属性描述

UI名称

描述

DcmDs pDataUsePort

取值范围

USE_BL OCK_ID/USE_DATA_ ASYNCH_CLIENT_SE RVER/USE_DATA_AS YNCH_CLIENT_SERV ER_ERROR/USE_DAT A_ASYNCH_FNC/USE _DATA_ASYNCH_FNC _ERROR/USE_DATA_ SENDER_RECEIVER/ USE_DATA_SENDER_ RECEIVER_AS_SERV ICE/USE_DATA_SYN CH_CLIENT_SERVER /U SE_DATA_SYNCH_FN C/USE_ECU_SIGNAL

默认取值

US E_BLOCK_ID

参数描述

DTC控 制可选码使能开关

依赖关系

Dc mDspDataType

取值范围

BOOLEAN/SINT1 6/SINT16_N/SINT3 2/SINT32_N/SINT8 /SINT8_N/UINT16/ UINT16_N/UINT32/ UINT32_N/UINT8/U INT8_DYN/UINT8_N

默认取值

BOOLEAN

参数描述

数据的类型

依赖关系

DcmDspDataC onditionChec kReadFncUsed

取值范围

True/false

默认取值

False

参数描述

条件 检查接口使能开关

依赖关系

DcmDspD ataCondition CheckReadFnc

取值范围

默认取值

False

参数描述

条件检查配置接口

依赖关系

Dc mDspDataConditio nCheckReadFncUse d为true且DcmDspD ataUsePort不为使 用RTE接口的类型

DcmDspD ataEcuSignal

取值范围

默认取值

参数描述

ECU 数据获取配置接口

依赖关系

D cmDspDataUsePort 为USE_ECU_SIGNAL

DcmDspDa taEndianness

取值范围

BIG_ENDIAN/LITT LE_ENDIAN/OPAQUE

默认取值

BIG_ENDIAN

参数描述

大小端

依赖关系

未使用

DcmDspD ataFreezeCur rentStateFnc

取值范围

默认取值

参数描述

冻结当 前控制的配置接口

依赖关系

DcmDspDidF reezeCurrentStat e为true且DcmDspD ataUsePort不为使 用RTE接口的类型

Dcm DspDataGetSc alingInfoFnc

取值范围

默认取值

参数描述

获取输 入数据的配置接口

依赖关系

DcmDsp DataScalingInfoS ize配置且DcmDspD ataUsePort不为使 用RTE接口的类型

Dcm DspDataReadD ataLengthFnc

取值范围

默认取值

参数描述

获取读取数 据长度的配置接口

依赖关系

DcmDspData Type为UINT8_DYN/ UINT8_N且DcmDspD ataUsePort不为使 用RTE接口的类型

DcmDspDataR eadEcuSignal

取值范围

默认取值

参数描述

读取E CU数据的配置接口

依赖关系

D cmDspDataUsePort 为USE_ECU_SIGNAL

DcmDs pDataReadFnc

取值范围

默认取值

参数描述

读 取数据的配置接口

依赖关系

DcmDspD ataUsePort不为使 用RTE接口的类型

Dcm DspDataReset ToDefaultFnc

取值范围

默认取值

参数描述

重置为默 认控制的配置接口

依赖关系

DcmDsp DidResetToDefaul t为true且DcmDspD ataUsePort不为使 用RTE接口的类型

DcmDspD ataReturnCon trolToEcuFnc

取值范围

默认取值

参数描述

重置为E CU控制的配置接口

依赖关系

DcmDspD ataUsePort不为使 用RTE接口的类型

DcmDspDa taShortTermA djustmentFnc

取值范围

默认取值

参数描述

短 暂控制的配置接口

依赖关系

DcmDspDidSh ortTermAdjustmen t为true且DcmDspD ataUsePort不为使 用RTE接口的类型

DcmDsp DataByteSize

取值范围

0 .. 65535

默认取值

1

参数描述

数据 长度,byte为单位

依赖关系

DcmDsp DataWriteFnc

取值范围

默认取值

参数描述

写数据的配置接口

依赖关系

DcmDspD ataUsePort不为使 用RTE接口的类型

DcmD spDidInfoRef

取值范围

默认取值

参数描述

DID信息关联

依赖关系

DcmDspDa taBlockIdRef

取值范围

默认取值

参数描述

NV存储块关联

依赖关系

DcmDspDataUsePo rt为USE_BLOCK_ID

DcmDs pDataInfoRef

取值范围

默认取值

参数描述

data信息关联

依赖关系

DcmDspDataInfo

image33

图 DcmDspDataInfo容器配置图

表 DcmDspDataInfo属性描述

UI名称

描述

D cmDspDataSca lingInfoSize

取值范围

0 .. 4294967295

默认取值

0

参数描述

scaling infor mation的数据长度

依赖关系

DcmDspDid

image34

图 DcmDspDid容器配置图

表 DcmDspDid属性描述

UI名称

描述

DcmDspD idIdentifier

取值范围

0 .. 65535

默认取值

0

参数描述

DID值

依赖关系

D cmDspDidSize

取值范围

0 .. 65535

默认取值

0

参数描述

DID的长度

依赖关系

D cmDspDidUsed

参数描述

DID值

默认取值

False

依赖关系

依赖关系

DcmD spDidUsePort

参数描述

USE_ATOMIC_BNDM;

US E_ATOMIC_NV_DATA

_INTERFACE;

USE _ATOMIC_SENDER_

REC EIVER_INTERFACE;

USE _ATOMIC_SENDER_

RECE IVER_INTERFACE_

AS_SERVICE;

US E_DATA_ELEMENT_S

PE CIFIC_INTERFACES

默认取值

USE_DATA _ELEMENT_S

PECIFIC_ INTERFACES

依赖关系

为所 有数据元素的单个 操作或特定于数据 元素的操作之间的 DID数据元素选择 应用程序接口类型

依赖关系

DcmDspDidBn dMBlockIdRef

参数描述

默认取值

依赖关系

将此DID 与一个BndM块关联

依赖关系

DcmD spDidInfoRef

取值范围

默认取值

参数描述

DID信息关联

依赖关系

DcmDspDidRef

取值范围

默认取值

参数描述

DID与DID关联

依赖关系

未使用

DcmDspDidSignal

image35

图 DcmDspDidSignal容器配置图

表 DcmDspDidSignal属性描述

UI名称

描述

DcmD spDidDataPos

取值范围

0 .. 65535

默认取值

0

参数描述

DID数据偏移位置

依赖关系

DcmD spDidDataRef

取值范围

默认取值

参数描述

回调接口等 的data配置项关联

依赖关系

DcmDspDidInfo

image36

图 DcmDspDidInfo容器配置图

表 DcmDspDidInfo属性描述

UI名称

描述

DcmDspDDDI DMaxElements

取值范围

1 .. 255

默认取值

1

参数描述

动态DID情况 能有个最大源元素

依赖关系

Dcm DspDidDynami callyDefined

取值范围

True/false

默认取值

False

参数描述

动态DID使能开关

依赖关系

DcmDspDidControl

image37

图 DcmDspDidControl容器配置图

表 DcmDspDidControl属性描述

UI名称

描述

DcmDspDi dControlMask

取值范围

DCM CONTROLMASK_EXTE RNAL/DCM_CONTROL MASK_INTERNAL/DC M_CONTROLMASK_NO

默认取值

DCM CONTROLMAS K_EXTERNAL

参数描述

控制掩码的类型

依赖关系

DcmDspDidCon trolMaskSize

取值范围

1 .. 4294967294

默认取值

参数描述

该 值以字节为单位定 义controlEnable MaskRecord的大小

依赖关系

DcmDspDi dControlRole

取值范围

0 .. 4294967295

默认取值

参数描述

每个位代表一个专 用的角色。如果位 值为1,则授予DID IOcontrol 访问权限。如果位 值为0,则不允许 对该角色控制DID

依赖关系

Dcm DspDidFreeze CurrentState

取值范围

True/false

默认取值

False

参数描述

冻结 当前状态使能开关

依赖关系

DcmDspDidRe setToDefault

取值范围

True/false

默认取值

False

参数描述

重置为 默认控制使能开关

依赖关系

DcmD spDidShortTe rmAdjustment

取值范围

True/false

默认取值

False

参数描述

短暂 调整控制使能开关

依赖关系

Dcm DspDidContro lModeRuleRef

取值范围

默认取值

参数描述

关联DcmModeRule

依赖关系

DcmDspDi dControlSecu rityLevelRef

取值范围

默认取值

参数描述

控制 信息的安全级关联

依赖关系

Dc mDspDidContr olSessionRef

取值范围

默认取值

参数描述

控制 信息的会话级关联

依赖关系

DcmDspDidCo ntrolRoleRef

取值范围

默认取值

参数描述

对DcmDspAuthent icationRow的引用 ,该引用定义了可 以控制该IO的角色

依赖关系

5.2.3.8.1.1DcmDspDidControlEnableMask

image38

图 DcmDspDidControlEnableMask容器配置图

表 DcmDspDidControlEnableMask属性描述

UI名称

描述

DcmDspD idControlMas kBitPosition

取值范围

0 .. 31

默认取值

0

参数描述

控制掩码位偏移

依赖关系

value < (DcmDspDi dControlMaskSize * 8)

DcmDspDidRead

image39

图 DcmDspDidRead容器配置图

表 DcmDspDidRead属性描述

UI名称

描述

DcmDs pDidReadRole

取值范围

0 .. 4294967295

默认取值

参数描述

每 个位代表一个专用 的角色。如果位值 为1,则授予DID读 访问权限。如果位 值为0,则不允许 读取该角色的DID

依赖关系

DcmDspDidRea dModeRuleRef

取值范围

默认取值

参数描述

关联DcmModeRule

依赖关系

DcmDs pDidReadSecu rityLevelRef

取值范围

默认取值

参数描述

读取数据的 DID的安全级关联

依赖关系

DcmDspDidRe adSessionRef

取值范围

默认取值

参数描述

读取数据的 DID的会话级关联

依赖关系

DcmDspDi dReadRoleRef

取值范围

默认取值

参数描述

对 DcmDspAuthentic ationRow的引用, 该引用定义了可以 读取此DID的角色

依赖关系

DcmDspDidWrite

image40

图 DcmDspDidWrite容器配置图

表 DcmDspDidWrite属性描述

UI名称

描述

DcmDsp DidWriteRole

取值范围

0 .. 4294967295

默认取值

参数描述

每个位代表一个专 用的角色。如果位 值为1,则授予DID 写访问权限。如果 位值为0,则不允 许写该角色的DID

依赖关系

D cmDspDidWrit eModeRuleRef

取值范围

默认取值

参数描述

关联DcmModeRule

依赖关系

DcmDsp DidWriteSecu rityLevelRef

取值范围

默认取值

参数描述

写数据的 DID的安全级关联

依赖关系

DcmDspDidWri teSessionRef

取值范围

默认取值

参数描述

写数据的 DID的会话级关联

依赖关系

DcmDspDid WriteRoleRef

取值范围

默认取值

参数描述

对DcmDspAuthent icationRow的引用 ,该引用定义了可 以写此DID的角色

依赖关系

DcmDspDidRange

image41

图 DcmDspDidRange容器配置图

表 DcmDspDidRange属性描述

UI名称

描述

DcmDspDid RangeHasGaps

取值范围

True/false

默认取值

False

参数描述

范围 DID是否存在间隔

依赖关系

DcmDspDidR angeIdentifi erLowerLimit

取值范围

0 .. 65535

默认取值

0

参数描述

范围DID的下限值

依赖关系

DcmDspDidR angeIdentifi erUpperLimit

取值范围

0 .. 65535

默认取值

0

参数描述

范围DID的上限值

依赖关系

DcmDspD idRangeIsDid AvailableFnc

取值范围

默认取值

参数描述

DID在范围内是 否支持的配置接口

依赖关系

DcmDspDidRan geUsePort为false 才可配,否则默认 生成rte标准接口

Dcm DspDidRangeM axDataLength

取值范围

0 .. 65535

默认取值

0

参数描述

范围D ID的最大数据长度

依赖关系

DcmDspD idRangeReadD ataLengthFnc

取值范围

默认取值

参数描述

范 围DID的读取数据 长度获取配置接口

依赖关系

DcmDspDidRan geUsePort为false 才可配,否则默认 生成rte标准接口

DcmDspDidRan geReadDidFnc

取值范围

默认取值

参数描述

范围DID 数据读取配置接口

依赖关系

DcmDspDidRan geUsePort为false 才可配,否则默认 生成rte标准接口

DcmDspDid RangeUsePort

取值范围

True/false

默认取值

False

参数描述

范围DI D是否使用RTE接口

依赖关系

D cmDspDidRang eWriteDidFnc

取值范围

默认取值

参数描述

范围DID 写数据的配置接口

依赖关系

DcmDspDidRan geUsePort为false 才可配,否则默认 生成rte标准接口

DcmDspDid RangeInfoRef

取值范围

默认取值

参数描述

范围DID安全 级会话级信息关联

依赖关系

DcmDspMemory
DcmDspAddressAndLengthFormatIdentifier

image42

图 DcmDspAddressAndLengthFormatIdentifier容器配置图

表 DcmDspAddressAndLengthFormatIdentifier属性描述

UI名称

描述

DcmDspSuppo rtedAddressA ndLengthForm atIdentifier

取值范围

0 .. 65535

默认取值

0

参数描述

支 持的请求地址格式

依赖关系

DcmDspMemoryIdInfo

image43

图 DcmDspMemoryIdInfo容器配置图

表 DcmDspMemoryIdInfo属性描述

UI名称

描述

DcmDspM emoryIdValue

取值范围

0 .. 65535

默认取值

0

参数描述

内存地址ID

依赖关系

DcmDspReadMemoryRangeInfo

image44

图 DcmDspReadMemoryRangeInfo容器配置图

表 DcmDspReadMemoryRangeInfo属性描述

UI名称

描述

D cmDspReadMem oryRangeHigh

取值范围

0 .. 4294967294

默认取值

0

参数描述

读 取内存的最高地址

依赖关系

DcmDspReadMe moryRangeLow

取值范围

0 .. 4294967294

默认取值

0

参数描述

读 取内存的最低地址

依赖关系

DcmDspRe adMemoryRang eModeRuleRef

取值范围

默认取值

参数描述

关联DcmModeRule

依赖关系

D cmDspReadMem oryRangeSecu rityLevelRef

取值范围

默认取值

参数描述

内存地址 读取的安全级关联

依赖关系

DcmDspReadMe moryRangeSes sionLevelRef

取值范围

默认取值

参数描述

内存地址 读取的会话级关联

依赖关系

DcmDspWriteMemoryRangeInfo

image45

图 DcmDspWriteMemoryRangeInfo容器配置图

表 DcmDspWriteMemoryRangeInfo属性描述

UI名称

描述

Dc mDspWriteMem oryRangeHigh

取值范围

0 .. 4294967294

默认取值

0

参数描述

写内存的最高地址

依赖关系

D cmDspWriteMe moryRangeLow

取值范围

0 .. 4294967294

默认取值

0

参数描述

写内存的最低地址

依赖关系

DcmDspRe adMemoryRang eModeRuleRef

取值范围

默认取值

参数描述

关联DcmModeRule

依赖关系

Dc mDspWriteMem oryRangeSecu rityLevelRef

取值范围

默认取值

参数描述

内存地 址写的安全级关联

依赖关系

D cmDspWriteMe moryRangeSes sionLevelRef

取值范围

默认取值

参数描述

内存地 址写的会话级关联

依赖关系

DcmDspPeriodicTransmission

image46

图 DcmDspPeriodicTransmission容器配置图

表 DcmDspPeriodicTransmission属性描述

UI名称

描述

DcmDs pMaxPeriodic DidScheduler

取值范围

1 .. 255

默认取值

参数描述

定义可并发调度的 periodicdataiden tifier的最大数量

依赖关系

DcmDspPeri odicTransmis sionFastRate

取值范围

1E-4 .. 0.255

默认取值

0.001

参数描述

周期 DID快速发送周期

依赖关系

DcmDsp PeriodicTran smissionMaxP eriodicFastT ransmissions

取值范围

1 .. 65535

默认取值

参数描述

定义用于 快速传输的周期性 连接的最大数目。

依赖关系

DcmDspPe riodicTransm issionMaxPer iodicMediumT ransmissions

取值范围

1E-4 .. 0.255

默认取值

0.001

参数描述

周期 DID中速发送周期

依赖关系

DcmDspPeri odicTransmis sionSlowRate

取值范围

1E-4 .. 0.255

默认取值

0.001

参数描述

周期 DID慢速发送周期

依赖关系

DcmDspPeriod icTransmissi onMediumRate

取值范围

1E-4 .. 1

默认取值

参数描述

传输速率

依赖关系

Dcm DspPeriodicT ransmissionS chedulerType

取值范围

SCHEDULER_TYPE1;

SCHEDULER_TYPE2

默认取值

参数描述

根据ISO 14229-1:2018按 周期标识符定义所 使用的调度器类型

依赖关系

DcmDspPeri odicTransmis sionSlowRate

取值范围

1E-4 .. 1

默认取值

参数描述

传输速率

依赖关系

DcmDspPid

image47

图 DcmDspPid容器配置图

表 DcmDspPid属性描述

UI名称

描述

DcmDspP idIdentifier

取值范围

0 .. 255

默认取值

0

参数描述

PID值

依赖关系

DcmD spPidService

取值范围

DCM_SERVICE_01/ DCM_SERVICE_01_0 2/DCM_SERVICE_02

默认取值

DCM SERVICE_01

参数描述

能使用PID的服务

依赖关系

根据 此选项决定子容器 中Service01和Ser vice02是否可配。

D cmDspPidSize

取值范围

0 .. 255

默认取值

0

参数描述

PID数据长度

依赖关系

D cmDspPidUsed

取值范围

True/false

默认取值

False

参数描述

PID使能开关

依赖关系

DcmDspPidData

image48

图 DcmDspPidData容器配置图

表 DcmDspPidData属性描述

UI名称

描述

DcmD spPidDataPos

取值范围

0 .. 2040

默认取值

0

参数描述

PID数据偏移值

依赖关系

DcmDs pPidDataSize

取值范围

0 .. 2040

默认取值

0

参数描述

PID数据长度

依赖关系

5.2.3.13.1.1DcmDspPidDataSupportInfo

image49

图 DcmDspPidDataSupportInfo容器配置图

表 DcmDspPidDataSupportInfo属性描述

UI名称

描述

Dcm DspPidDataSu pportInfoBit

取值范围

0 .. 255

默认取值

0

参数描述

支持信息位

依赖关系

Dcm DspPidDataSu pportInfoRef

取值范围

默认取值

参数描述

支持信息关联

依赖关系

5.2.3.13.1.2DcmDspPidService01

image50

图 DcmDspPidService01容器配置图

表 DcmDspPidService01属性描述

UI名称

描述

DcmDspPi dDataUsePort

取值范围

USE_DATA _SENDER_RECEIVER /USE_DATA_SYNCH_ CLIENT_SERVER/US E_DATA_SYNCH_FNC

默认取值

USE_ DATA_SENDE R_RECEIVER

参数描述

接口类型

依赖关系

DcmDspPidDa taEndianness

取值范围

BIG_ENDIAN/LITT LE_ENDIAN/OPAQUE

默认取值

BIG_ENDIAN

参数描述

大小端

依赖关系

未使用

DcmDspPi dDataReadFnc

取值范围

默认取值

参数描述

获 取数据的配置接口

依赖关系

DcmDspPi dDataUsePort为US E_DATA_SYNCH_FNC

DcmDs pPidDataType

取值范围

BOOLEAN/SIN T16/SINT16_N/SIN T32/SINT32_N/SIN T8/SINT8_N/UINT1 6/UINT16_N/UINT3 2/UINT32_N/UINT8 /UINT8_N

默认取值

BOOLEAN

参数描述

数据类型

依赖关系

未使用

5.2.3.13.1.3DcmDspPidService02

image51

图 DcmDspPidService02容器配置图

表 DcmDspPidService02属性描述

UI名称

描述

DcmDspP idDataDemRef

取值范围

默认取值

参数描述

PID数据获取与D EM的接口进行关联

依赖关系

DcmDspPidSupportInfo

image52

图 DcmDspPidSupportInfo容器配置图

表 DcmDspPidSupportInfo属性描述

UI名称

描述

DcmDspPidSu pportInfoLen

取值范围

0..255

默认取值

0

参数描述

支持信息的长度

依赖关系

DcmDspPidSu pportInfoPos

取值范围

0..255

默认取值

0

参数描述

支持信息的偏移量

依赖关系

DcmDspRequestControl

image53

图 DcmDspRequestControl容器配置图

表 DcmDspRequestControl属性描述

UI名称

描述

DcmDspRe questControl InBufferSize

取值范围

0..255

默认取值

0

参数描述

输入数据长度

依赖关系

DcmD spRequestCon trolInfoByte

取值范围

0..255

默认取值

0

参数描述

制造商特定 的值报告给测试人 员,用于记录标识 符0xE000到OxE1FF

依赖关系

DcmDspReq uestControlO utBufferSize

取值范围

0..255

默认取值

0

参数描述

输出数据长度

依赖关系

Dc mDspRequestC ontrolTestId

取值范围

0..255

默认取值

0

参数描述

TID值

依赖关系

DcmDspRequestFileTransfer

image54

图 DcmDspRequestFileTransfer容器配置图

表 DcmDspRequestFileTransfer属性描述

UI名称

描述

DcmReques tFileTransfe rFileSizePar ameterLength

取值范围

0..255

默认取值

0

参数描述

文件传输文 件大小参数的长度

依赖关系

DcmReque stFileTransf erLengthForm atIdentifier

取值范围

0..255

默认取值

0

参数描述

文件 传输长度格式定义

依赖关系

Dcm RequestFileT ransferMaxFi leAndDirName

取值范围

1 .. 65535

默认取值

1

参数描述

定义用 于RequestFileTra nsfer的RTE接口允 许的FileAndDirNa me参数的最大大小

依赖关系

DcmRe questFileTra nsferUsePort

取值范围

True/false

默认取值

False

参数描述

定 义C/S或C函数调用 是否用于Request FileTransfer处理

依赖关系

DcmDspRoe

image55

图 DcmDspRoe容器配置图

特别说明:ROE为86服务,在设置服务后,响应为触发模式,第一次触发时是立即发出响应,之后的响应受DcmDspRoeInterMessageTime控制。在触发ROE响应后,ROE请求会被不同协议的诊断请求抢占掉,当新的诊断请求和ROE响应相同协议时,新的诊断请求会被忽略进而处理ROE响应。建议将ROE服务与普通的诊断进行区分,配置在不同的协议表中。

表 DcmDspRoe属性描述

UI名称

描述

D cmDspRoeInte rMessageTime

取值范围

0..5

默认取值

0

参数描述

消息间隔时间

依赖关系

Dc mDspRoeStora geBlockIdRef

取值范围

默认取值

参数描述

ROE信 息存储NV块的关联

依赖关系

DcmDspRoeEvent

image56

图 DcmDspRoeEvent容器配置图

表 DcmDspRoeEvent属性描述

UI名称

描述

DcmD spRoeEventId

取值范围

0..254

默认取值

0

参数描述

ROE事件ID值

依赖关系

Dcm DspRoeInitia lEventStatus

取值范围

DCM_ROE_CLEARED /DCM_ROE_STOPPED

默认取值

DCM_R OE_CLEARED

参数描述

R OE事件初始化状态

依赖关系

5.2.3.16.1.1 DcmDspRoeEventProperties

5.2.3.16.1.1.1DcmDspRoeOnChangeOfDataIdentifier

image57

图 DcmDspRoeOnChangeOfDataIdentifier容器配置图

表 DcmDspRoeOnChangeOfDataIdentifier属性描述

UI名称

描述

Dcm DspRoeDidRef

取值范围

默认取值

参数描述

ROE事件DID关联

依赖关系

5.2.3.16.1.1.2DcmDspRoeOnDTCStatusChange

image58

图 DcmDspRoeOnDTCStatusChange容器配置图

表 DcmDspRoeOnDTCStatusChange属性描述

UI名称

描述

DcmDspRoeD TCStatusMask

取值范围

0..255

默认取值

0

参数描述

RO E事件DTC状态掩码

依赖关系

DcmDspRoeEventWindowTime

image59

图 DcmDspRoeEventWindowTime容器配置图

表 DcmDspRoeEventWindowTime属性描述

UI名称

描述

DcmDspRoeEve ntWindowTime

取值范围

D CM_ROE_EVENT_WIN DOW_CURRENT_AND_ FOLLOWING_CYCLE/ DCM_ROE_EVENT_WI NDOW_CURRENT_CYC LE/DCM_ROE_EVENT _WINDOW_INFINITE

默认取值

DCM_ROE_E VENT_WINDO W_INFINITE

参数描述

ROE事件窗口时间

依赖关系

DcmDspRoutine

image60

图 DcmDspRoutine容器配置图

表 DcmDspRoutine属性描述

UI名称

描述

DcmDspRouti neIdentifier

取值范围

0..65535

默认取值

0

参数描述

RID值

依赖关系

DcmDspRou tineInfoByte

取值范围

0..255

默认取值

0

参数描述

特殊值 报告给测试设备的

依赖关系

未使用

DcmDspRo utineUsePort

取值范围

True/false

默认取值

False

参数描述

使用R TE接口的使能开关

依赖关系

DcmDs pRoutineUsed

取值范围

True/false

默认取值

False

参数描述

RID使能开关

依赖关系

DcmD spCommonAuth orizationRef

取值范围

默认取值

参数描述

RID的 安全级会话级关联

依赖关系

DcmDspRequestRoutineResults

image61

图 DcmDspRequestRoutineResults容器配置图

表 DcmDspRequestRoutineResults属性描述

UI名称

描述

DcmDspRequ estRoutineRe sultsConfirm ationEnabled

取值范围

True/false

默认取值

false

参数描述

允许 启用/禁用确认功 能,以指示传输对 RequestRoutineR esults请求的响应

依赖关系

DcmDsp RequestRouti neResultsCon firmationFnc

取值范围

默认取值

参数描述

发送者需 要传输确认时调用 的c函数(BSW模块)

依赖关系

DcmDsp RequestRouti neResultsFnc

取值范围

默认取值

参数描述

RID请 求结果的配置接口

依赖关系

DcmDspRoutine UsePort为false才 可配置,否则自动 生成rte标准接口

DcmDspR equestRoutin eResultsRole

取值范围

0 .. 4294967295

默认取值

参数描述

每个位 代表一个专用的角 色。如果位值为1 ,则授予带有子函 数requestResults 的RoutineControl 访问权限。如果位 值为0,则不允许 该例程用于该角色

依赖关系

Dcm DspRoutineIn terfaceArgum entIntegrity

取值范围

True/false

默认取值

false

参数描述

定义Clien tServerOperation 的值。diagArgInt egrity用于创建这 个例程的C/S接口

依赖关系

D cmDspRequest RoutineResul tsCommonAuth orizationRef

取值范围

默认取值

参数描述

RID请求结果的 安全级会话级关联

依赖关系

DcmDspRequ estRoutineRe sultsRoleRef

取值范围

默认取值

参数描述

引 用DcmDspAuthent icationRow,它定 义了一个角色,在 这个角色中可以读 取这个例程的结果

依赖关系

5.2.3.17.1.1DcmDspRequestRoutineResultsIn

5.2.3.17.1.1.1DcmDspRequestRoutineResultsInSignal

image62

图 DcmDspRequestRoutineResultsInSignal容器配置图

表 DcmDspRequestRoutineResultsInSignal属性描述

UI名称

描述

D cmDspRoutine SignalLength

取值范围

0..65535

默认取值

0

参数描述

输入的信号长度

依赖关系

DcmDs pRoutineSign alEndianness

取值范围

BIG_ENDIAN/LITT LE_ENDIAN/OPAQUE

默认取值

BIG_ENDIAN

参数描述

大小端

依赖关系

未使用

DcmDspRouti neSignalType

取值范围

BOO LEAN/SINT16/SINT 16_N/SINT32/SINT 32_N/SINT8/SINT8 _N/UINT16/UINT16 _N/UINT32/UINT32 _N/UINT8/VARIABL E_LENGTH/UINT8_N

默认取值

BOOLEAN

参数描述

数据类型

依赖关系

未使用

DcmDspRout ineSignalPos

取值范围

0..65535

默认取值

0

参数描述

信号偏移量

依赖关系

未使用

5.2.3.17.1.2DcmDspRequestRoutineResultsOuts

5.2.3.17.1.2.1DcmDspRequestRoutineResultsOutSignal

image63

图 DcmDspRequestRoutineResultsOutSignal容器配置图

表 DcmDspRequestRoutineResultsOutSignal属性描述

UI名称

描述

D cmDspRoutine SignalLength

取值范围

0..65535

默认取值

0

参数描述

输出的信号长度

依赖关系

DcmDs pRoutineSign alEndianness

取值范围

BIG_ENDIAN/LITT LE_ENDIAN/OPAQUE

默认取值

BIG_ENDIAN

参数描述

大小端

依赖关系

未使用

DcmDspRouti neSignalType

取值范围

BOO LEAN/SINT16/SINT 16_N/SINT32/SINT 32_N/SINT8/SINT8 _N/UINT16/UINT16 _N/UINT32/UINT32 _N/UINT8/VARIABL E_LENGTH/UINT8_N

默认取值

BOOLEAN

参数描述

数据类型

依赖关系

未使用

DcmDspRout ineSignalPos

取值范围

0..65535

默认取值

0

参数描述

信号偏移量

依赖关系

未使用

DcmDspStartRoutine

image64

图 DcmDspStartRoutine容器配置图

表 DcmDspStartRoutine属性描述

UI名称

描述

Dcm DspRoutineIn terfaceArgum entIntegrity

取值范围

True/false

默认取值

false

参数描述

定义Clien tServerOperation 的值,diagArgInt egrity用于创建这 个例程的C/S接口

依赖关系

D cmDspStartRo utineConfirm ationEnabled

取值范围

True/false

默认取值

false

参数描述

允许启用/禁 用确认功能,以指 示对StartRoutine 请求的响应的传输

依赖关系

DcmDspSta rtRoutineCon firmationFnc

取值范围

默认取值

参数描述

发送者需 要传输确认时调用 的c函数(BSW模块)

依赖关系

DcmDspSta rtRoutineFnc

取值范围

默认取值

参数描述

RID启 动例程的配置接口

依赖关系

DcmDspRoutine UsePort为false才 可配置,否则自动 生成rte标准接口

DcmDspStar tRoutineRole

取值范围

0 .. 4294967295

默认取值

参数描述

每个 位代表一个专用的 角色。如果位值为 1,则授予带有子 函数startRoutine 的RoutineControl 访问权限。如果位 值为0,则不允许 该例程用于该角色

依赖关系

DcmD spStartRouti neCommonAuth orizationRef

取值范围

默认取值

参数描述

RID启动例程的 安全级会话级关联

依赖关系

DcmDspRoutine UsePort为false才 可配置,否则自动 生成rte标准接口

D cmDspStartRo utineRoleRef

取值范围

默认取值

参数描述

关联DcmDspA uthenticationRow

依赖关系

5.2.3.17.2.1DcmDspStartRoutineIn

5.2.3.17.2.1.1DcmDspStartRoutineInSignal

image65

图 DcmDspStartRoutineInSignal容器配置图

表 DcmDspStartRoutineInSignal属性描述

UI名称

描述

Dc mDspRoutineP arameterSize

取值范围

0..65535

默认取值

0

参数描述

输入的信号长度

依赖关系

DcmDs pRoutineSign alEndianness

取值范围

BIG_ENDIAN/LITT LE_ENDIAN/OPAQUE

默认取值

BIG_ENDIAN

参数描述

大小端

依赖关系

未使用

DcmDspRouti neSignalType

取值范围

BOO LEAN/SINT16/SINT 16_N/SINT32/SINT 32_N/SINT8/SINT8 _N/UINT16/UINT16 _N/UINT32/UINT32 _N/UINT8/VARIABL E_LENGTH/UINT8_N

默认取值

BOOLEAN

参数描述

数据类型

依赖关系

未使用

DcmDspRout ineSignalPos

取值范围

0..65535

默认取值

0

参数描述

信号偏移量

依赖关系

未使用

5.2.3.17.2.2DcmDspStartRoutineOut

5.2.3.17.2.2.1DcmDspStartRoutineOutSignal

image66

图 DcmDspStartRoutineOutSignal容器配置图

表 DcmDspStartRoutineOutSignal属性描述

UI名称

描述

Dc mDspRoutineP arameterSize

取值范围

0..65535

默认取值

0

参数描述

输出的信号长度

依赖关系

DcmDs pRoutineSign alEndianness

取值范围

BIG_ENDIAN/LITT LE_ENDIAN/OPAQUE

默认取值

BIG_ENDIAN

参数描述

大小端

依赖关系

未使用

DcmDspRouti neSignalType

取值范围

BOO LEAN/SINT16/SINT 16_N/SINT32/SINT 32_N/SINT8/SINT8 _N/UINT16/UINT16 _N/UINT32/UINT32 _N/UINT8/VARIABL E_LENGTH/UINT8_N

默认取值

BOOLEAN

参数描述

数据类型

依赖关系

未使用

DcmDspRout ineSignalPos

取值范围

0..65535

默认取值

0

参数描述

信号偏移量

依赖关系

未使用

DcmDspStopRoutine

image67

图 DcmDspStopRoutine容器配置图

表 DcmDspStopRoutine属性描述

UI名称

描述

Dcm DspRoutineIn terfaceArgum entIntegrity

取值范围

True/false

默认取值

false

参数描述

定义Clien tServerOperation 的值,diagArgInt egrity用于创建这 个例程的C/S接口

依赖关系

DcmDspStopRo utineConfirm ationEnabled

取值范围

True/false

默认取值

false

参数描述

允许启用/禁 用确认功能,以指 示对StopRoutine 请求的响应的传输

依赖关系

DcmDspSt opRoutineCon firmationFnc

取值范围

默认取值

参数描述

发送者需 要传输确认时调用 的c函数(BSW模块)

依赖关系

DcmDspSt opRoutineFnc

取值范围

默认取值

参数描述

RID停 止例程的配置接口

依赖关系

DcmDspRoutine UsePort为false才 可配置,否则自动 生成rte标准接口

DcmDspSto pRoutineRole

取值范围

0 .. 4294967295

默认取值

参数描述

每个 位代表一个专用的 角色。如果位值为 1,则授予带有子 函数stopRoutine 的RoutineControl 访问权限。如果位 值为0,则不允许 该例程用于该角色

依赖关系

Dcm DspStopRouti neCommonAuth orizationRef

取值范围

默认取值

参数描述

关联DcmDspCom monAuthorization

依赖关系

DcmDspRoutine UsePort为false才 可配置,否则自动 生成rte标准接口

DcmDspStopRo utineRoleRef

取值范围

默认取值

参数描述

RID停止例程的 安全级会话级关联

依赖关系

5.2.3.17.3.1DcmDspStopRoutineIn

5.2.3.17.3.1.1DcmDspStopRoutineInSignal

image68

图 DcmDspStopRoutineInSignal容器配置图

表 DcmDspStopRoutineInSignal属性描述

UI名称

描述

Dc mDspRoutineP arameterSize

取值范围

0..65535

默认取值

0

参数描述

输入的信号长度

依赖关系

DcmDs pRoutineSign alEndianness

取值范围

BIG_ENDIAN/LITT LE_ENDIAN/OPAQUE

默认取值

BIG_ENDIAN

参数描述

大小端

依赖关系

未使用

DcmDspRouti neSignalType

取值范围

BOO LEAN/SINT16/SINT 16_N/SINT32/SINT 32_N/SINT8/SINT8 _N/UINT16/UINT16 _N/UINT32/UINT32 _N/UINT8/VARIABL E_LENGTH/UINT8_N

默认取值

BOOLEAN

参数描述

数据类型

依赖关系

未使用

DcmDspRout ineSignalPos

取值范围

0..65535

默认取值

0

参数描述

信号偏移量

依赖关系

未使用

5.2.3.17.3.2DcmDspStopRoutineOut

5.2.3.17.3.2.1DcmDspStopRoutineOutSignal

image69

图 DcmDspStopRoutineOutSignal容器配置图

表 DcmDspStopRoutineOutSignal属性描述

UI名称

描述

Dc mDspRoutineP arameterSize

取值范围

0..65535

默认取值

0

参数描述

输出的信号长度

依赖关系

DcmDs pRoutineSign alEndianness

取值范围

BIG_ENDIAN/LITT LE_ENDIAN/OPAQUE

默认取值

BIG_ENDIAN

参数描述

大小端

依赖关系

未使用

DcmDspRouti neSignalType

取值范围

BOO LEAN/SINT16/SINT 16_N/SINT32/SINT 32_N/SINT8/SINT8 _N/UINT16/UINT16 _N/UINT32/UINT32 _N/UINT8/VARIABL E_LENGTH/UINT8_N

默认取值

BOOLEAN

参数描述

数据类型

依赖关系

未使用

DcmDspRout ineSignalPos

取值范围

0..65535

默认取值

0

参数描述

信号偏移量

依赖关系

未使用

DcmDspSecurity

image70

图 DcmDspSecurity容器配置图

表 DcmDspSecurity属性描述

UI名称

描述

DcmDsp SecurityMaxA ttemptCounte rReadoutTime

取值范围

0..65535

默认取值

0

参数描述

读取安全级错误计 数的最大尝试周期

依赖关系

DcmTaskTi me的倍数,填写的 是执行的最多周期

DcmDspSecurityRow

image71

图 DcmDspSecurityRow容器配置图

表 DcmDspSecurityRow属性描述

UI名称

描述

DcmDspSec urityADRSize

取值范围

1 .. 4294967295

默认取值

1

参数描述

用于获取种 子的输入参数长度

依赖关系

DcmDspSecur ityAttemptCo unterEnabled

取值范围

True/false

默认取值

False

参数描述

使能启用安全尝试 计数器的外部处理

依赖关系

Dcm DspSecurityC ompareKeyFnc

取值范围

默认取值

参数描述

用于比 较key的配置接口

依赖关系

DcmDs pSecurityUsePort 为USE_ASYNCH_FNC

DcmDspSecur ityDelayTime

取值范围

0..65535

默认取值

0

参数描述

比较 密钥失败延时时间

依赖关系

DcmDs pSecurityDel ayTimeOnBoot

取值范围

0..65535

默认取值

0

参数描述

从boot 跳转后的延时时间

依赖关系

未使用

DcmDspSecu rityGetAttem ptCounterFnc

取值范围

默认取值

参数描述

用于获取失 败计数的配置接口

依赖关系

DcmDspSecurityUs ePort为USE_ASYNC H_FNC且DcmDspSec urityAttemptCoun terEnabled为true

DcmDspSecuri tyGetSeedFnc

取值范围

默认取值

参数描述

用于获 取种子的配置接口

依赖关系

DcmDs pSecurityUsePort 为USE_ASYNCH_FNC

DcmDspSec urityKeySize

取值范围

1 .. 4294967295

默认取值

1

参数描述

密钥长度

依赖关系

DcmDspS ecurityLevel

取值范围

1 .. 63

默认取值

1

参数描述

安全级的级别

依赖关系

SecurityLevel= (SecurityAccessT ype(requestSeed) + 1) / 2

D cmDspSecurit yNumAttDelay

取值范围

1 .. 255

默认取值

1

参数描述

用于延时 的错误计数门限值

依赖关系

DcmDspSecu ritySeedSize

取值范围

1 .. 4294967295

默认取值

1

参数描述

种子长度

依赖关系

DcmDspSecu ritySetAttem ptCounterFnc

取值范围

默认取值

参数描述

用于存储错 误计数的配置接口

依赖关系

DcmDspSecurityUs ePort为USE_ASYNC H_FNC且DcmDspSec urityAttemptCoun terEnabled为true

DcmDspSec urityUsePort

取值范围

USE_ASYNC H_CLIENT_SERVER;

USE_ASYNCH_FNC

默认取值

参数描述

定义用于安 全访问的接口类型

依赖关系

DcmDspSession
DcmDspSessionRow

image72

图 DcmDspSessionRow容器配置图

表 DcmDspSessionRow属性描述

UI名称

描述

DcmDspSe ssionForBoot

取值范围

DCM_NO_BOOT /DCM_OEM_BOOT/DC M_OEM_BOOT_RESPA PP/DCM_SYS_BOOT/ DCM SYS_BOOT_RESPAPP

默认取值

D CM_NO_BOOT

参数描述

会话级是 否进行复位的类型

依赖关系

DcmDsp SessionLevel

取值范围

1..126

默认取值

1

参数描述

会话级的级别

依赖关系

DcmDspSessio nP2ServerMax

取值范围

0..1

默认取值

0

参数描述

P2时间

依赖关系

DcmD spSessionP2S tarServerMax

取值范围

0..1

默认取值

0

参数描述

P2*时间

依赖关系

DcmDspVehInfo

image73

图 DcmDspVehInfo容器配置图

表 DcmDspVehInfo属性描述

UI名称

描述

DcmDspVeh InfoInfoType

取值范围

0..255

默认取值

0

参数描述

InfoType值

依赖关系

D cmDspVehInfo NODIProvResp

取值范围

TRUE/FALSE

默认取值

False

参数描述

true: 只 允许有一个子容器

false或 不存在:不受影响

依赖关系

DcmDspVehInfoData

image74

图 DcmDspVehInfoData容器配置图

表 DcmDspVehInfoData属性描述

UI名称

描述

DcmDspVehI nfoDataOrder

取值范围

0..255

默认取值

0

参数描述

顺序值

依赖关系

未使用

DcmDspVehInf oDataReadFnc

取值范围

默认取值

参数描述

数 据获取的配置接口

依赖关系

DcmDspVeh InfoDataSize

取值范围

0..255

默认取值

1

参数描述

数据长度

依赖关系

DcmDspVehInf oDataUsePort

取值范围

True/false

默认取值

False

参数描述

是否使用port接口

依赖关系

未使用

DcmPageBufferCfg

image75

图 DcmPageBufferCfg容器配置图

表 DcmPageBufferCfg属性描述

UI名称

描述

DcmPagedB ufferEnabled

取值范围

True/false

默认取值

False

参数描述

分页 发送功能使能开关

依赖关系

DcmPagedB ufferTimeout

取值范围

0..1

默认取值

0

参数描述

分 页发送的超时时间

依赖关系

DcmPagedBuf ferEnabled为true

附录1

[1] 通过DcmTimerType配置项可以选择四种计时方法。分别为TM、OS、Mainfunction、 Callout。TM:使用 TM模块内部标准接口。OS:使用Os system counter。Mainfunction:依赖 周期调度,由Dcm内部计时。不同计时方法的对应接口由配置工具生成在Dcm_Callout.c 中,其中Callout是由客户自定义的计时类型,可以参照生成示例中TM/OS/Mainfunction的 实现,结合项目工程情况修改接口自行实现计时功能。

附录2

表 1 工程预编译宏定义表

宏定义名称

功能

范围 (使 用方 法)

默 认值

DCM_DELAY_COMM_INACTIVE=1

任意的诊断请求 结束后Dcm会维diagnostic state 为active 5秒钟,计时达到 之后才会调用ComM_DCM_I nactiveDiagnostic接口去 通知ComM模块diagnostic state 为inactive。

定 义: 使能

未 定义 :不 使能

未 定义