AUTOSAR Classic SAE J1939
Commercial vehicle SAE J1939 stack: Diagnostic Communication Manager (J1939Dcm), Network Management (J1939Nm), Request Manager (J1939Rm), Transport Layer (J1939Tp), and Functional Safety Communication Protocol (J1939Fscp).
Initialisation et état
J1939Dcm_DeInitJ1939Dcm_GetVersionInfoJ1939Dcm_InitJ1939Nm_DeInitJ1939Nm_GetVersionInfoJ1939Nm_InitJ1939Rm_DeInitJ1939Rm_GetVersionInfoJ1939Rm_InitJ1939Tp_GetVersionInfoJ1939Tp_InitServices
J1939Dcm_DemTriggerOnDTCStatusJ1939Dcm_GenericDMxTransmitJ1939Dcm_RequestIndicationJ1939Dcm_SetStateJ1939Nm_GetBusOffDelayJ1939Nm_GetStateJ1939Nm_NetworkReleaseJ1939Nm_NetworkRequestJ1939Nm_PassiveStartUpJ1939Nm_RequestIndicationJ1939Rm_CancelRequestTimeoutJ1939Rm_CheckReceivedComIPduJ1939Rm_SendAckJ1939Rm_SendRequestJ1939Rm_SetStateJ1939Tp_CancelReceiveJ1939Tp_CancelTransmitJ1939Tp_ChangeParameterJ1939Tp_ShutdownJ1939Tp_TransmitUser_AckIndicationUser_RequestIndicationUser_RequestTimeoutIndicationCallbacks
J1939Dcm_RxIndicationJ1939Dcm_TpRxIndicationJ1939Dcm_TpTxConfirmationJ1939Dcm_TxConfirmationJ1939Nm_RxIndicationJ1939Nm_TxConfirmationJ1939Rm_RxIndicationJ1939Rm_TxConfirmationJ1939Tp_RxIndicationJ1939Tp_TxConfirmationReq_ReturnTypeJ1939Dcm_CopyRxDataReq_ReturnTypeJ1939Dcm_CopyTxDataReq_ReturnTypeJ1939Dcm_StartOfReceptionCallouts et interfaces attendues
<Generic DMx Copy Rx Data><Generic DMx Copy Tx Data><Generic DMx Request Indication><Generic DMx RxIndication><Generic DMx Start Of Reception><Generic DMx TxConfirmation><User_Address Claimed Indication>Cyclique
J1939Dcm_MainFunctionJ1939Nm_MainFunctionJ1939Rm_MainFunctionJ1939Tp_MainFunctionTypes
CalibrationIDArrayTypeJ1939Dcm_ConfigTypeJ1939Dcm_StateTypeJ1939Nm_ConfigTypeJ1939Rm_AckCodeJ1939Rm_ConfigTypeJ1939Rm_ExtIdInfoTypeJ1939Rm_ExtIdTypeJ1939Rm_StateTypeJ1939Tp_ConfigTypeFonctions
<Generic DMx Copy Rx Data><Generic DMx Copy Tx Data><Generic DMx Request Indication><Generic DMx RxIndication><Generic DMx Start Of Reception><Generic DMx TxConfirmation><User_Address Claimed Indication>J1939Dcm_DeInitJ1939Dcm_DemTriggerOnDTCStatusJ1939Dcm_GenericDMxTransmitJ1939Dcm_GetVersionInfoJ1939Dcm_InitJ1939Dcm_MainFunctionJ1939Dcm_RequestIndicationJ1939Dcm_RxIndicationJ1939Dcm_SetStateJ1939Dcm_TpRxIndicationJ1939Dcm_TpTxConfirmationJ1939Dcm_TxConfirmationJ1939Nm_DeInitJ1939Nm_GetBusOffDelayJ1939Nm_GetStateJ1939Nm_GetVersionInfoJ1939Nm_InitJ1939Nm_MainFunctionJ1939Nm_NetworkReleaseJ1939Nm_NetworkRequestJ1939Nm_PassiveStartUpJ1939Nm_RequestIndicationJ1939Nm_RxIndicationJ1939Nm_TxConfirmationJ1939Rm_CancelRequestTimeoutJ1939Rm_CheckReceivedComIPduJ1939Rm_DeInitJ1939Rm_GetVersionInfoJ1939Rm_InitJ1939Rm_MainFunctionJ1939Rm_RxIndicationJ1939Rm_SendAckJ1939Rm_SendRequestJ1939Rm_SetStateJ1939Rm_TxConfirmationJ1939Tp_CancelReceiveJ1939Tp_CancelTransmitJ1939Tp_ChangeParameterJ1939Tp_GetVersionInfoJ1939Tp_InitJ1939Tp_MainFunctionJ1939Tp_RxIndicationJ1939Tp_ShutdownJ1939Tp_TransmitJ1939Tp_TxConfirmationReq_ReturnTypeJ1939Dcm_CopyRxDataReq_ReturnTypeJ1939Dcm_CopyTxDataReq_ReturnTypeJ1939Dcm_StartOfReceptionUser_AckIndicationUser_RequestIndicationUser_RequestTimeoutIndicationTypes
CalibrationIDArrayTypeJ1939Dcm_ConfigTypeJ1939Dcm_StateTypeJ1939Nm_ConfigTypeJ1939Rm_AckCodeJ1939Rm_ConfigTypeJ1939Rm_ExtIdInfoTypeJ1939Rm_ExtIdTypeJ1939Rm_StateTypeJ1939Tp_ConfigTypeCarte des thèmes
J1939Dcm
24J1939Nm
14J1939Rm
19Aucune donnée d'élément pour cette version
J1939Dcm
Service Name <Generic DMx Copy Rx Data> Syntax Buf Req_ Return Type <Generic DMx Copy Rx Data> ( uint8 dm Id, Network Handle Type channel, const Pdu Info Type* info, Pdu Length Type* buffer Size Ptr ) Sync/ Async Synchronous Reentrancy Non Reentrant Parameters (in) dm Id Number of the J1939 diagnostic message. channel Channel on which the message is received. info Provides the source buffer (Sdu Data Ptr) and the number of bytes to be copied (Sdu Length). An Sdu Length of 0 can be used to query the current amount of available buffer in the upper layer module. In this case, the Sdu Data Ptr may be a NULL_ PTR. Param eters (inout) None Parameters (out) buffer Size Ptr Available receive buffer after data has been copied. Return value Buf Req _ - Return - Type BUFREQ_ OK: Data copied successfully BUFREQ_ E_ NOT_ OK: Data was not copied because an error occurred. Descript ion This function is called to provide the received data of a diagnostic message segment to the upper layer. Each call to this function provides the next part of the diagnostic message data. The size of the remaining buffer is written to the position indic ated by buffer Size Ptr. Available via J1939Dcm.h
BufReq_ReturnType <Generic DMx Copy Rx Data>(uint8 dmId, NetworkHandleType channel, const PduInfoType* info, PduLengthType* bufferSizePtr);This function is called to acquire the transmit data of a diagnostic message segment. Each call to this function provides the next part of the diagnostic message data unles s retry - >Tp Data State is TP_ DATARETRY. In this case the function restarts to copy the data beginning at the offset from the current position indicated by retry - >Tx Tp Data Cnt. The size of the remaining data is written to the position indicated by availa ble Data Ptr.
BufReq_ReturnType <Generic DMx Copy Tx Data>(uint8 dmId, NetworkHandleType channel, const PduInfoType info, const RetryInfoType* retry, PduLengthType* availableDataPtr);Called after a diagnostic message has been received, the result indicates whether the reception was successful or not.
void <Generic DMx RxIndication>(uint8* dmId, NetworkHandleType channel, Std_ReturnType result);Called after a diagnostic message has been transmitted, the result indicates whether the transmission was successful or not.
void <Generic DMx TxConfirmation>(uint8 dmId, NetworkHandleType channel, Std_ReturnType result);This function resets the J1939 Diagnostic Communication Manager to the uninitialized state.
void J1939Dcm_DeInit(void);Requests transmission of a diagnostic message
Std_ReturnType J1939Dcm_GenericDMxTransmit(uint8 dmId, uint8 node, NetworkHandleType channel, uint8 destAddress, uint8 priority);Returns the version information of this module.
void J1939Dcm_GetVersionInfo(Std_VersionInfoType* versioninfo);This function initializes the J1939 Diagnostic Communication Manager.
void J1939Dcm_Init(const J1939Dcm_ConfigType* configPtr);Main function of the J1939 Diagnostic Communication Manager. Used for scheduling purposes and timeout supervision.
void J1939Dcm_MainFunction(void);Indication of a receive d PDU from a lower layer communication interface module.
void J1939Dcm_RxIndication(PduIdType RxPduId, const PduInfoType* PduInfoPtr);Changes the communication state of J1939Dcm to offline or online.
Std_ReturnType J1939Dcm_SetState(NetworkHandleType channel, uint8 node, J1939Dcm_StateType newState);Called after an I - PDU has been received via the TP API, the result indicates whether the transmission was successful or not.
void J1939Dcm_TpRxIndication(PduIdType id, Std_ReturnType result);This function is called after the I - PDU has been transmitted on its network, the result i ndicates whether the transmission was successful or not.
void J1939Dcm_TpTxConfirmation(PduIdType id, Std_ReturnType result);The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.
void J1939Dcm_TxConfirmation(PduIdType TxPduId, Std_ReturnType result);This function is called to provide the received data of an I - PDU segment (N - PDU) to the upper layer. Each call to this function provides the next part of the I - PDU data. The size of the remaining buffer is written to the position indicated by b uffer Size Ptr.
BufReq_ReturnType J1939Dcm_CopyRxData(PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);This function is called t o acquire the transmit data of an I - PDU segment (N - PDU). Each call to this function provides the next part of the I - PDU data unless retry - >Tp Data State is TP_ DATARETRY. In this case the function restarts to copy the data beginning at the offset from the current position indicated by retry - >Tx Tp Data Cnt. The size of the remaining data is written to the position indicated by available Data Ptr.
BufReq_ReturnType J1939Dcm_CopyTxData(PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);This function is called at the start of receiving an N - SDU. The N - SDU might be fragmented into multiple N - PDUs (FF with one or more following CFs) or might consist of a single N - PDU (SF). The service shall provide the currently available maximum buffer size when invoked with Tp Sdu Leng th equal to 0.
BufReq_ReturnType J1939Dcm_StartOfReception(PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);- Variation --
This is the base type for the configuration of the J1939 Diagnostic Communication Manager. A pointer to an instance of this structure will be used in the initialization of the J1939 Diagnostic Communication Manager. The content of this structure is defined in chapter 10 Configuration specification.
This type represents the communication state of the J1939 Diagnostic Communication Manager. Available J1939Dcm.h via
J1939Nm
This function resets the J1939 Network Management module to the uninitialized state.
void J1939Nm_DeInit(void);This callout function returns the number of Can SM base cycles to wait additi onally to L1/ L2 after a Bus Off occurred.
void J1939Nm_GetBusOffDelay(NetworkHandleType network, uint8* delayCyclesPtr);Service Name J1939Nm_ Get State Syntax Std_ Return Type J1939Nm_ Get State ( Network Handle Type Network Handle, Nm_ State Type* nm State Ptr, Nm_ Mode Type* nm Mode Ptr ) Service ID [hex] 0x0d Sync/ Async Synchronous Reentrancy Reentrant Parameters (in) Network Handle Identification of the NM - channel Parameters (inout) None Parameters (out) nm State Ptr Pointer where state of the network management shall be copied to. nm Mode Ptr Pointer where the mode of the network management shall be copied to. Return value Std _ Return - Type E_ OK: No error E_ NOT_ OK: Getting of NM state has failed De scription Returns the state and the mode of the network management. Available via J1939Nm.h
Std_ReturnType J1939Nm_GetState(NetworkHandleType NetworkHandle, Nm_StateType* nmStatePtr, Nm_ModeType* nmModePtr);Returns the version information of this module.
void J1939Nm_GetVersionInfo(Std_VersionInfoType* versionInfo);This function initializes the J1939 Network Management module.
void J1939Nm_Init(const J1939Nm_ConfigType* configPtr);Main function of the J1939 Network Management module. Used for scheduling purposes and timeout supervision.
void J1939Nm_MainFunction(void);Release the network, since ECU doesn't have to communicate on the bus.
Std_ReturnType J1939Nm_NetworkRelease(NetworkHandleType nmChannelHandle);Request the network, since ECU needs to communicate on the bus.
Std_ReturnType J1939Nm_NetworkRequest(NetworkHandleType nmChannelHandle);Passive startup of the NM. It triggers the transition from Bus - Sleep Mode to the Network Mode without requesting the network.
Std_ReturnType J1939Nm_PassiveStartUp(NetworkHandleType nmChannelHandle);Indication of a received PDU from a lower layer communication interface module.
void J1939Nm_RxIndication(PduIdType RxPduId, const PduInfoType* PduInfoPtr);The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.
void J1939Nm_TxConfirmation(PduIdType TxPduId, Std_ReturnType result);This is the base type for the configuration of the J1939 Network Management module. A pointer to an instance of this structure will be used in the initialization of the J1939 Network Management module. The content of this structure is defined in chapter 10 Configuration specification.
J1939Rm
Cancels timeout monitoring of a request. If the request is not active, or timeout monitoring was not requested, this call has no effect.
Std_ReturnType J1939Rm_CancelRequestTimeout(uint8 userId, NetworkHandleType channel, uint32 requestedPgn, const J1939Rm_ExtIdInfoType* extIdInfo, uint8 destAddress);Reports a received ComIPdu. If this ComIPdu was requested via J1939Rm_SendRequest or the SendRequest service operation, a request timeout for this request is stopped.
boolean J1939Rm_CheckReceivedComIPdu(PduIdType PduId, const PduInfoType* PduInfoPtr);This function resets the J1939 Request Manager to the uninitialized state.
void J1939Rm_DeInit(void);Returns the version information of this module.
void J1939Rm_GetVersionInfo(Std_VersionInfoType* versionInfo);This function initializes the J1939 Request Manager.
void J1939Rm_Init(const J1939Rm_ConfigType* configPtr);Main function of the J1939 Request Manager. Used for scheduling purposes and timeout supervision.
void J1939Rm_MainFunction(void);Indication of a received PDU from a lower layer communication interface module.
void J1939Rm_RxIndication(PduIdType RxPduId, const PduInfoType* PduInfoPtr);Requests transmission of an Acknowledgement PG.
Std_ReturnType J1939Rm_SendAck(uint8 userId, NetworkHandleType channel, uint32 ackPgn, const J1939Rm_ExtIdInfoType* extIdInfo, J1939Rm_AckCode ackCode, uint8 ackAddress, uint8 priority, boolean broadcast);Requests transmission of a Request or Request2 PG.
Std_ReturnType J1939Rm_SendRequest(uint8 userId, NetworkHandleType channel, uint32 requestedPgn, const J1939Rm_ExtIdInfoType* extIdInfo, uint8 destAddress, uint8 priority, boolean checkTimeout);Changes the communication state of J1939Rm to offline (only Request for AC supported) or online.
Std_ReturnType J1939Rm_SetState(NetworkHandleType channel, uint8 node, J1939Rm_StateType newState);The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.
void J1939Rm_TxConfirmation(PduIdType TxPduId, Std_ReturnType result);Indicates timeout of a request triggered with the same parameters.
void < User >_RequestTimeoutIndication(uint8 node, NetworkHandleType channel, uint32 requestedPgn, const J1939Rm_ExtIdInfoType* extIdInfo, uint8 destAddress); ⚠️This type represents the available kinds of acknowledgements. Variation –
This is the base type for the configuration of the J1939 Request Manager. A pointer to an instance of this structure will be used in the initialization of the J1939 Request Manager. The content of this structure is defined in chapter 10 Configuration specification.
This type represents a set of extended identifiers. Variation –
This type represents the available kinds of extended identifier usage. Variation –
This type represents the communication state of the J1939 Request Manager.
J1939Tp
Requests cancellation of an ongoing reception of a PDU in a lower layer transport protocol module.
Std_ReturnType J1939Tp_CancelReceive(PduIdType RxPduId);Requests cancellation of an ongoing transmission of a PDU in a lower layer communication module.
Std_ReturnType J1939Tp_CancelTransmit(PduIdType TxPduId);Request to change a specific transport protocol parameter (e.g. block size).
Std_ReturnType J1939Tp_ChangeParameter(PduIdType id, TPParameterType parameter, uint16 value);Returns the version information of J1939Tp.
void J1939Tp_GetVersionInfo(Std_VersionInfoType* VersionInfo);This function initializes the J1939Tp module.
void J1939Tp_Init(const J1939Tp_ConfigType* ConfigPtr);Main function of the J1939Tp. Used for scheduling purposes and timeout supervision.
void J1939Tp_MainFunction(void);Indication of a received PDU from a lower layer communication interface module.
void J1939Tp_RxIndication(PduIdType RxPduId, const PduInfoType* PduInfoPtr);This function is used to shutdown the J1939Tp module.
void J1939Tp_Shutdown(void);Requests transmission of a PDU.
Std_ReturnType J1939Tp_Transmit(PduIdType TxPduId, const PduInfoType* PduInfoPtr);The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.
void J1939Tp_TxConfirmation(PduIdType TxPduId, Std_ReturnType result);Data structure containing post - build configuration data of J1939 - TP.
Module im Cluster
SAE J1939 Diagnostic Communication Manager (J1939Dcm)
AUTOSAR Classic Communication Services-Modul SAE J1939 Diagnostic Communication Manager (J1939Dcm, Spezifikation: AUTOSAR_CP_SWS_SAEJ1939DiagnosticCommunicationManager.pdf, AUTOSAR_SWS_SAEJ1939DiagnosticCommunicationManager.pdf).
SAE J1939 Functional Safety Communication Protocol (J1939Fscp)
AUTOSAR Classic Communication Services-Modul SAE J1939 Functional Safety Communication Protocol (J1939Fscp, Spezifikation: AUTOSAR_CP_SWS_SAEJ1939FunctionalSafetyCommProtocol.pdf).
SAE J1939 Network Management (J1939Nm)
AUTOSAR Classic Communication Services-Modul SAE J1939 Network Management (J1939Nm, Spezifikation: AUTOSAR_CP_SWS_SAEJ1939NetworkManagement.pdf, AUTOSAR_SWS_SAEJ1939NetworkManagement.pdf).
SAE J1939 Request Manager (J1939Rm)
AUTOSAR Classic Communication Services-Modul SAE J1939 Request Manager (J1939Rm, Spezifikation: AUTOSAR_CP_SWS_SAEJ1939RequestManager.pdf, AUTOSAR_SWS_SAEJ1939RequestManager.pdf).
SAE J1939 Transport Layer (J1939Tp)
AUTOSAR Classic Communication Services-Modul SAE J1939 Transport Layer (J1939Tp, Spezifikation: AUTOSAR_CP_SWS_SAEJ1939TransportLayer.pdf, AUTOSAR_SWS_SAEJ1939TransportLayer.pdf).