{{{ #!html
Diagnostic Communication Manager
}}} [[BR]] = 概要 = * DiagnosticCommunication(診断)に関する解説サイト * [https://vector.com/vj_beginners-diag_jp.html はじめての診断(ベクター・ジャパン株式会社)] * API一覧 ||= API =||= ID[[BR]][Dec] =||= ID[[BR]][Hex] =||= R4.2.2 =|| || [#Dcm_Init Dcm_Init] || 1|| 0x01|| ○ || || [#Dcm_GetVersionInfo Dcm_GetVersionInfo] || 36|| 0x24|| ○ || || [#Dcm_DemTriggerOnDTCStatus Dcm_DemTriggerOnDTCStatus] || 43|| 0x2B|| ○ || || [#Dcm_GetVin Dcm_GetVin] || 7|| 0x07|| ○ || || [#Dcm_GetSecurityLevel Dcm_GetSecurityLevel] || 13|| 0x0D|| ○ || || [#Dcm_GetSesCtrlType Dcm_GetSesCtrlType] || 6|| 0x06|| ○ || || [#Dcm_GetActiveProtocol Dcm_GetActiveProtocol] || 15|| 0x0F|| ○ || || [#Dcm_ResetToDefaultSession Dcm_ResetToDefaultSession] || 42|| 0x2A|| ○ || || [#Dcm_TriggerOnEvent Dcm_TriggerOnEvent] || 45|| 0x2D|| ○ || || [#Dcm_SetActiveDiagnostic Dcm_SetActiveDiagnostic] || 86|| 0x56|| ○ || || [#Dcm_StartOfReception Dcm_StartOfReception] || 70|| 0x46|| ○ || || [#Dcm_CopyRxData Dcm_CopyRxData] || 68|| 0x44|| ○ || || [#Dcm_TpRxIndication Dcm_TpRxIndication] || 69|| 0x45|| ○ || || [#Dcm_CopyTxData Dcm_CopyTxData] || 67|| 0x43|| ○ || || [#Dcm_TpTxConfirmation Dcm_TpTxConfirmation] || 72|| 0x48|| ○ || || [#Dcm_TxConfirmation Dcm_TxConfirmation] || 64|| 0x40|| ○ || || [#Dcm_ComM_NoComModeEntered Dcm_ComM_NoComModeEntered] || 33|| 0x21|| ○ || || [#Dcm_ComM_SilentComModeEntered Dcm_ComM_SilentComModeEntered] || 34|| 0x22|| ○ || || [#Dcm_ComM_FullComModeEntered Dcm_ComM_FullComModeEntered] || 35|| 0x23|| ○ || || [#Dcm_ReadMemory Dcm_ReadMemory] || 38|| 0x26|| ○ || || [#Dcm_WriteMemory Dcm_WriteMemory] || 39|| 0x27|| ○ || || [#Dcm_SetProgConditions Dcm_SetProgConditions] || 50|| 0x32|| ○ || || [#Dcm_GetProgConditions Dcm_GetProgConditions] || 49|| 0x31|| ○ || || [#Dcm_ProcessRequestTransferExit Dcm_ProcessRequestTransferExit] || 48|| 0x30|| ○ || || [#Dcm_ProcessRequestUpload Dcm_ProcessRequestUpload] || 87|| 0x57|| ○ || || [#Dcm_ProcessRequestDownload Dcm_ProcessRequestDownload] || 37|| 0x25|| ○ || || [#Dcm_ProcessRequestFileTransfer Dcm_ProcessRequestFileTransfer] || 68|| 0x44|| ○ || || [#Dcm_MainFunction Dcm_MainFunction] || 69|| 0x45|| ○ || || [#Xxx_GetSeed Xxx_GetSeed] || 89|| 0x59|| ○ || || [#Xxx_CompareKey Xxx_CompareKey] || 90|| 0x5A|| ○ || || [#Xxx_GetSecurityAttemptCounter Xxx_GetSecurityAttemptCounter] || 52|| 0x34|| ○ || || [#Xxx_SetSecurityAttemptCounter Xxx_SetSecurityAttemptCounter] || 59|| 0x3B|| ○ || || [#Xxx_ReadData Xxx_ReadData] || 82|| 0x52|| ○ || || [#Xxx_WriteData Xxx_WriteData] || 76|| 0x4C|| ○ || || [#Xxx_ReadDataLength Xxx_ReadDataLength] || 55|| 0x37|| ○ || || [#Xxx_ConditionCheckRead Xxx_ConditionCheckRead] || 56|| 0x38|| ○ || || [#Xxx_GetScalingInformation Xxx_GetScalingInformation] || 77|| 0x4D|| ○ || || [#Xxx_ReturnControlToECU Xxx_ReturnControlToECU] || 60|| 0x3C|| ○ || || [#Xxx_ResetToDefault Xxx_ResetToDefault] || 58|| 0x3A|| ○ || || [#Xxx_FreezeCurrentState Xxx_FreezeCurrentState] || 85|| 0x55|| ○ || || [#Xxx_ShortTermAdjustment Xxx_ShortTermAdjustment] || 64|| 0x40|| ○ || || [#Xxx_IsDidAvailable Xxx_IsDidAvailable] || 65|| 0x41|| ○ || || [#Xxx_ReadDidData Xxx_ReadDidData] || 94|| 0x5E|| ○ || || [#Xxx_WriteDidData Xxx_WriteDidData] || 91|| 0x5B|| ○ || || [#Xxx_ReadDidRangeDataLength Xxx_ReadDidRangeDataLength] || 92|| 0x5C|| ○ || || [#Xxx_Start Xxx_Start] || 93|| 0x5D|| ○ || || [#Xxx_Stop Xxx_Stop] || 95|| 0x5F|| ○ || || [#Xxx_RequestResults Xxx_RequestResults] || 50|| 0x32|| ○ || || [#Xxx_ClearDTCCheckFnc Xxx_ClearDTCCheckFnc] || 51|| 0x33|| ○ || * コンフィギュレーション一覧 * [wiki:Dcm/r422 R4.2.2] * [wiki:Dcm/r2111 R21-11] * エラーコード一覧 ||= エラーコード =||= Dec =||= Hex =||= R4.2.2 =|| || DCM_E_INTERFACE_TIMEOUT || 1|| 0x01|| ○ || || DCM_E_INTERFACE_RETURN_VALUE || 2|| 0x02|| ○ || || DCM_E_INTERFACE_BUFFER_OVERFLOW || 3|| 0x03|| ○ || || DCM_E_UNINIT || 5|| 0x05|| ○ || || DCM_E_PARAM || 6|| 0x06|| ○ || || DCM_E_PARAM_POINTER || 7|| 0x07|| ○ || || DCM_E_INIT_FAILED || 8|| 0x08|| ○ || || DCM_E_SET_PROG_CONDITIONS_FAIL || 9|| 0x09|| ○ || ---- = API仕様 = == Dcm_Init == {{{ void Dcm_Init(const Dcm_ConfigType* ConfigPtr) }}} == Dcm_GetVersionInfo == {{{ void Dcm_GetVersionInfo(Std_VersionInfoType* versionInfo) }}} == Dcm_DemTriggerOnDTCStatus == {{{ Std_ReturnType Dcm_DemTriggerOnDTCStatus(uint32 DTC, Dem_UdsStatusByteType DTCStatusOld, Dem_UdsStatusByteType DTCStatusNew) }}} == Dcm_GetVin == {{{ Std_ReturnType Dcm_GetVin(uint8* Data) }}} == Dcm_GetSecurityLevel == {{{ Std_ReturnType Dcm_GetSecurityLevel(Dcm_SecLevelType* SecLevel) }}} == Dcm_GetSesCtrlType == {{{ Std_ReturnType Dcm_GetSesCtrlType(Dcm_SesCtrlType* SesCtrlType) }}} == Dcm_GetActiveProtocol == {{{ Std_ReturnType Dcm_GetActiveProtocol(Dcm_ProtocolType* ActiveProtocol) }}} == Dcm_ResetToDefaultSession == {{{ Std_ReturnType Dcm_ResetToDefaultSession(void) }}} == Dcm_TriggerOnEvent == {{{ Std_ReturnType Dcm_TriggerOnEvent(uint8 RoeEventId) }}} == Dcm_SetActiveDiagnostic == {{{ Std_ReturnType Dcm_SetActiveDiagnostic(boolean active) }}} == Dcm_StartOfReception == {{{ BufReq_ReturnType Dcm_StartOfReception(PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr) }}} == Dcm_CopyRxData == {{{ BufReq_ReturnType Dcm_CopyRxData(PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr) }}} == Dcm_TpRxIndication == {{{ void Dcm_TpRxIndication(PduIdType id, Std_ReturnType result) }}} == Dcm_CopyTxData == {{{ BufReq_ReturnType Dcm_CopyTxData(PduIdType id, const PduInfoType* info, RetryInfoType* retry, PduLengthType* availableDataPtr) }}} == Dcm_TpTxConfirmation == {{{ void Dcm_TpTxConfirmation(PduIdType id, Std_ReturnType result) }}} == Dcm_TxConfirmation == {{{ void Dcm_TxConfirmation(PduIdType TxPduId) }}} == Dcm_ComM_NoComModeEntered == {{{ void Dcm_ComM_NoComModeEntered(uint8 NetworkId) }}} == Dcm_ComM_SilentComModeEntered == {{{ void Dcm_ComM_SilentComModeEntered(uint8 NetworkId) }}} == Dcm_ComM_FullComModeEntered == {{{ void Dcm_ComM_FullComModeEntered(uint8 NetworkId) }}} == Dcm_ReadMemory == {{{ Dcm_ReturnReadMemoryType Dcm_ReadMemory(Dcm_OpStatusType OpStatus, uint8 MemoryIdentifier, uint32 MemoryAddress, uint32 MemorySize, uint8* MemoryData, Dcm_NegativeResponseCodeType* ErrorCode) }}} == Dcm_WriteMemory == {{{ Dcm_ReturnWriteMemoryType Dcm_WriteMemory(Dcm_OpStatusType OpStatus, uint8 MemoryIdentifier, uint32 MemoryAddress, uint32 MemorySize, uint8* MemoryData, Dcm_NegativeResponseCodeType* ErrorCode) }}} == Dcm_SetProgConditions == {{{ Std_ReturnType Dcm_SetProgConditions(Dcm_OpStatusType OpStatus, Dcm_ProgConditionsType * ProgConditions) }}} == Dcm_GetProgConditions == {{{ Dcm_EcuStartModeType Dcm_GetProgConditions(Dcm_ProgConditionsType * ProgConditions) }}} == Dcm_ProcessRequestTransferExit == {{{ Std_ReturnType Dcm_ProcessRequestTransferExit(Dcm_OpStatusType OpStatus, uint8* transferRequestParameterRecord, uint32 transferRequestParameterRecordSize, uint8* transferResponseParameterRecord, uint32* transferResponseParameterRecordSize, Dcm_NegativeResponseCodeType* ErrorCode) }}} == Dcm_ProcessRequestUpload == {{{ Std_ReturnType Dcm_ProcessRequestUpload(Dcm_OpStatusType OpStatus, uint8 DataFormatIdentifier, uint32 MemoryAddress, uint32 MemorySize, uint32* BlockLength, Dcm_NegativeResponseCodeType* ErrorCode) }}} == Dcm_ProcessRequestDownload == {{{ Std_ReturnType Dcm_ProcessRequestDownload(Dcm_OpStatusType OpStatus, uint8 DataFormatIdentifier, uint32 MemoryAddress, uint32 MemorySize, uint32* BlockLength, Dcm_NegativeResponseCodeType* ErrorCode) }}} == Dcm_ProcessRequestFileTransfer == {{{ Std_ReturnType Dcm_ProcessRequestFileTransfer(Dcm_OpStatusType OpStatus, uint8 modeofOperation, uint16 fileSizeParameterLength, uint8* filePathAndName, uint8 dataFormatIdentifier, uint8* fileSizeUncompressedOrDirInfoLength, uint8* fileSizeCompressed, uint32* BlockLength, Dcm_NegativeResponseCodeType* ErrorCode) }}} == Dcm_MainFunction == {{{ void Dcm_MainFunction(void) }}} == Xxx_GetSeed == {{{ Std_ReturnType Xxx_GetSeed(Dcm_OpStatusType OpStatus, uint8* Seed, Dcm_NegativeResponseCodeType* ErrorCode) }}} == Xxx_CompareKey == {{{ Std_ReturnType Xxx_CompareKey(const uint8* Key, Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode) }}} == Xxx_GetSecurityAttemptCounter == {{{ Std_ReturnType Xxx_GetSecurityAttemptCounter(Dcm_OpStatusType OpStatus, uint8* AttemptCounter) }}} == Xxx_SetSecurityAttemptCounter == {{{ Std_ReturnType Xxx_SetSecurityAttemptCounter(Dcm_OpStatusType OpStatus, uint8 AttemptCounter) }}} == Xxx_ReadData == {{{ Std_ReturnType Xxx_ReadData(Dcm_OpStatusType OpStatus, uint8* Data, Dcm_NegativeResponseCodeType* ErrorCode) }}} == Xxx_WriteData == {{{ Std_ReturnType Xxx_WriteData(uint8* Data, uint16 DataLength, Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode) }}} == Xxx_ReadDataLength == {{{ Std_ReturnType Xxx_ReadDataLength(Dcm_OpStatusType OpStatus, uint16* DataLength) }}} == Xxx_ConditionCheckRead == {{{ Std_ReturnType Xxx_ConditionCheckRead(Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode) }}} == Xxx_GetScalingInformation == {{{ Std_ReturnType Xxx_GetScalingInformation(Dcm_OpStatusType OpStatus, uint8* ScalingInfo, Dcm_NegativeResponseCodeType* ErrorCode) }}} == Xxx_ReturnControlToECU == {{{ Std_ReturnType Xxx_ReturnControlToECU([Dcm_ControlMask_{Data} controlMask,] Dcm_NegativeResponseCodeType* ErrorCode) }}} == Xxx_ResetToDefault == {{{ Std_ReturnType Xxx_ResetToDefault(Dcm_OpStatusType OpStatus, [Dcm_ControlMask_{Data} controlMask,] Dcm_NegativeResponseCodeType* ErrorCode) }}} == Xxx_FreezeCurrentState == {{{ Std_ReturnType Xxx_FreezeCurrentState(Dcm_OpStatusType OpStatus, [Dcm_ControlMask_{Data} controlMask,] Dcm_NegativeResponseCodeType* ErrorCode) }}} == Xxx_ShortTermAdjustment == {{{ Std_ReturnType Xxx_ShortTermAdjustment(uint8* ControlStateInfo, uint16 DataLength, Dcm_OpStatusType OpStatus, [Dcm_ControlMask_{Data} controlMask,] Dcm_NegativeResponseCodeType* ErrorCode) }}} == Xxx_IsDidAvailable == {{{ Std_ReturnType Xxx_IsDidAvailable(uint16 DID, Dcm_OpStatusType OpStatus, Dcm_DidSupportedType* supported) }}} == Xxx_ReadDidData == {{{ Std_ReturnType Xxx_ReadDidData(uint16 DID, uint8* Data, Dcm_OpStatusType OpStatus, uint16 DataLength, Dcm_NegativeResponseCodeType ErrorCode) }}} == Xxx_WriteDidData == {{{ Std_ReturnType Xxx_WriteDidData(uint16 DID, uint8* Data, Dcm_OpStatusType OpStatus, uint16 DataLength, Dcm_NegativeResponseCodeType ErrorCode) }}} == Xxx_ReadDidRangeDataLength == {{{ Std_ReturnType Xxx_ReadDidRangeDataLength(uint16 DID, Dcm_OpStatusType OpStatus, uint16* DataLength) }}} == 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 currentLengthDataInVar,] [uint16* currentLengthDataOutVar,] Dcm_NegativeResponseCodeType ErrorCode) }}} == 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) }}} == Xxx_RequestResults == {{{ Std_ReturnType Xxx_RequestResults(Dcm_OpStatusType OpStatus, [DcmDspRoutineSignalType* dataOut_1,] ... [DcmDspRoutineSignalType* dataOut_n,] [uint8* dataOutVar,] [uint16* currentLengthDataOutVar,] Dcm_NegativeResponseCodeType* ErrorCode) }}} == Xxx_ClearDTCCheckFnc == {{{ Std_ReturnType Xxx_ClearDTCCheckFnc(uint32 GoDTC, Dcm_NegativeResponseCodeType* ErrorCode) }}} ---- = コンフィギュレーション仕様 = * [wiki:Dcm/r422#コンフィギュレーション仕様 R4.2.2] * [wiki:Dcm/r2111#コンフィギュレーション仕様 R21-11]