AUTOSAR Classic Zeitsynchronisation
Synchronized Time-Base Manager (StbM), Time Service (Tm), and bus-specific time synchronization modules (CanTSyn, EthTSyn, FrTSyn).
Inicialización y estado
CanTSyn_GetVersionInfoCanTSyn_InitEthTSyn_GetVersionInfoEthTSyn_InitFrTSyn_GetVersionInfoFrTSyn_InitStbM_GetVersionInfoStbM_InitTm_GetVersionInfoServicios · Get…
Servicios · Set…
Servicios · Reset…
Servicios · Busy…
Servicios · Eth…
Servicios · Icv…
Servicios · Shift…
Servicios · Sync…
Servicios · Otros
Customer_TimeNotificationCallbackTimeBaseEthTSyn_TrcvLinkStateChgSPduTxConfirmationFctStbM_BusGetCurrentTimeStbM_BusSetGlobalTimeStbM_CanSetMasterTimingDataStbM_CanSetSlaveTimingDataStbM_CloneTimeBaseStbM_FrSetMasterTimingDataStbM_FrSetSlaveTimingDataStbM_StartTimerStbM_TriggerTimeTransmissionStbM_UpdateGlobalTimeCallbacks
CanTSyn_RxIndicationCanTSyn_TxConfirmationEthTSyn_RxIndicationEthTSyn_TxConfirmationFrTSyn_RxIndicationFrTSyn_TriggerTransmitCallouts e interfaces esperadas
<Time Base><Time Base>#2<Time Base>#3Cíclico
CanTSyn_MainFunctionEthTSyn_MainFunctionFrTSyn_MainFunctionStbM_MainFunctionTipos
CanTSyn_ConfigTypeCanTSyn_TransmissionModeTypeEthTSyn_ConfigTypeEthTSyn_TransmissionModeTypeFrTSyn_ConfigTypeFrTSyn_TransmissionModeTypeStbM_CanTimeMasterMeasurementTypeStbM_CanTimeSlaveMeasurementTypeStbM_CloneConfigTypeStbM_ConfigTypeStbM_CustomerIdTypeStbM_EthTimeMasterMeasurementTypeStbM_EthTimeSlaveMeasurementTypeStbM_FrTimeMasterMeasurementTypeStbM_FrTimeSlaveMeasurementTypeStbM_MasterConfigTypeStbM_MeasurementTypeStbM_OffsetRecordTableBlockTypeStbM_OffsetRecordTableHeadTypeStbM_PdelayInitiatorMeasurementTypeStbM_PdelayResponderMeasurementTypeStbM_PortIdTypeStbM_ProtocolParamTypeStbM_RateDeviationTypeStbM_SynchronizedTimeBaseTypeStbM_SyncRecordTableBlockTypeStbM_SyncRecordTableHeadTypeStbM_TimeBaseNotificationTypeStbM_TimeBaseStatusTypeStbM_TimeDiffTypeStbM_TimeStampExtendedTypeStbM_TimeStampShortTypeStbM_TimeStampTypeStbM_TimeSyncTypeStbM_UserDataTypeStbM_VirtualLocalTimeTypeTm_PredefTimer100us32bitTypeTm_PredefTimer1us16bitTypeTm_PredefTimer1us24bitTypeTm_PredefTimer1us32bitTypeFunciones
<Time Base><Time Base>#2<Time Base>#3CanTSyn_GetVersionInfoCanTSyn_IcvGenerationIndicationCanTSyn_IcvVerificationIndicationCanTSyn_InitCanTSyn_MainFunctionCanTSyn_RxIndicationCanTSyn_SetTransmissionModeCanTSyn_TxConfirmationCustomer_TimeNotificationCallbackTimeBaseEthTSyn_GetProtocolParamEthTSyn_GetProtocolParam#2EthTSyn_GetVersionInfoEthTSyn_InitEthTSyn_MainFunctionEthTSyn_RxIndicationEthTSyn_SetProtocolParamEthTSyn_SetProtocolParam#2EthTSyn_SetTransmissionModeEthTSyn_TrcvLinkStateChgEthTSyn_TxConfirmationFrTSyn_GetVersionInfoFrTSyn_IcvGenerationIndicationFrTSyn_IcvVerificationIndicationFrTSyn_InitFrTSyn_MainFunctionFrTSyn_RxIndicationFrTSyn_SetTransmissionModeFrTSyn_TriggerTransmitGetRxFreshnessFctGetTxFreshnessFctGetTxFreshnessTruncDataFctSPduTxConfirmationFctStbM_BusGetCurrentTimeStbM_BusSetGlobalTimeStbM_CanSetMasterTimingDataStbM_CanSetSlaveTimingDataStbM_CloneTimeBaseStbM_EthSetMasterTimingDataStbM_EthSetPdelayInitiatorDataStbM_EthSetPdelayResponderDataStbM_EthSetSlaveTimingDataStbM_FrSetMasterTimingDataStbM_FrSetSlaveTimingDataStbM_GetBusProtocolParamStbM_GetCurrentSafeTimeStbM_GetCurrentTimeStbM_GetCurrentTimeExtendedStbM_GetCurrentVirtualLocalTimeStbM_GetFallbackVirtualLocalTimeStbM_GetMasterConfigStbM_GetOffsetStbM_GetOffsetTimeRecordHeadStbM_GetRateDeviationStbM_GetRxFreshnessStbM_GetSyncTimeRecordHeadStbM_GetTimeBaseStatusStbM_GetTimeBaseUpdateCounterStbM_GetTimeLeapStbM_GetTxFreshnessStbM_GetTxFreshnessTruncDataStbM_GetVersionInfoStbM_InitStbM_MainFunctionStbM_SetBusProtocolParamStbM_SetCloningOffsetStbM_SetGlobalTimeStbM_SetOffsetStbM_SetRateCorrectionStbM_SetUserDataStbM_StartTimerStbM_TriggerTimeTransmissionStbM_UpdateGlobalTimeTm_BusyWait1usTm_BusyWait1us16bitTm_BusyWait1us24bitTm_BusyWait1us32bitTm_GetTimeSpanTm_GetTimeSpan100us32bitTm_GetTimeSpan1us16bitTm_GetTimeSpan1us24bitTm_GetTimeSpan1us32bitTm_GetVersionInfoTm_ResetTimerTm_ResetTimer100us32bitTm_ResetTimer1us16bitTm_ResetTimer1us24bitTm_ResetTimer1us32bitTm_ShiftTimer100us32bitTm_ShiftTimer1us16bitTm_ShiftTimer1us24bitTm_ShiftTimer1us32bitTm_SyncTimer100us32bitTm_SyncTimer1us16bitTm_SyncTimer1us24bitTm_SyncTimer1us32bitTipos
CanTSyn_ConfigTypeCanTSyn_TransmissionModeTypeEthTSyn_ConfigTypeEthTSyn_TransmissionModeTypeFrTSyn_ConfigTypeFrTSyn_TransmissionModeTypeStbM_CanTimeMasterMeasurementTypeStbM_CanTimeSlaveMeasurementTypeStbM_CloneConfigTypeStbM_ConfigTypeStbM_CustomerIdTypeStbM_EthTimeMasterMeasurementTypeStbM_EthTimeSlaveMeasurementTypeStbM_FrTimeMasterMeasurementTypeStbM_FrTimeSlaveMeasurementTypeStbM_MasterConfigTypeStbM_MeasurementTypeStbM_OffsetRecordTableBlockTypeStbM_OffsetRecordTableHeadTypeStbM_PdelayInitiatorMeasurementTypeStbM_PdelayResponderMeasurementTypeStbM_PortIdTypeStbM_ProtocolParamTypeStbM_RateDeviationTypeStbM_SynchronizedTimeBaseTypeStbM_SyncRecordTableBlockTypeStbM_SyncRecordTableHeadTypeStbM_TimeBaseNotificationTypeStbM_TimeBaseStatusTypeStbM_TimeDiffTypeStbM_TimeStampExtendedTypeStbM_TimeStampShortTypeStbM_TimeStampTypeStbM_TimeSyncTypeStbM_UserDataTypeStbM_VirtualLocalTimeTypeTm_PredefTimer100us32bitTypeTm_PredefTimer1us16bitTypeTm_PredefTimer1us24bitTypeTm_PredefTimer1us32bitTypeMapa de temas
CanTSyn
10EthTSyn
13FrTSyn
10StbM
78Tm
27No hay datos de elementos para esta versión
CanTSyn
Returns the version information of this module.
void CanTSyn_GetVersionInfo(Std_VersionInfoType* versioninfo);By this API service the CanTSyn gets an indication and the result of ICV generation.
void CanTSyn_IcvGenerationIndication(uint32 jobId, Crypto_ResultType result);By this API service the CanTSyn gets an indication and the result of ICV verification.
void CanTSyn_IcvVerificationIndication(uint32 jobId, Crypto_ResultType result);This function initializes the Time Synchronization over CAN.
void CanTSyn_Init(const CanTSyn_ConfigType* configPtr);Main function for cyclic call / resp. Timesync message transmission
void CanTSyn_MainFunction(void);Indication of a received PDU from a lower layer communication interface module.
void CanTSyn_RxIndication(PduIdType RxPduId, const PduInfoType* PduInfoPtr);This API is used to turn on and off the TX capabilities of the CanTSyn.
void CanTSyn_SetTransmissionMode(uint8 CtrlIdx, CanTSyn_TransmissionModeType Mode);The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.
void CanTSyn_TxConfirmation(PduIdType TxPduId, Std_ReturnType result);This is the base type for the configuration of the Time Synchronization over CAN. A pointer to an instance of this structure will be used in the initialization of the Time Synchronization over CAN. The content of this structure is defined in chapter 10 Configuration specification.
Handles the enabling and disabling of the transmission mode
EthTSyn
This API is used to read FollowUp information TLV parameters from received Follow_Up message.
Std_ReturnType EthTSyn_GetProtocolParam(StbM_SynchronizedTimeBaseType timeBaseId, StbM_ProtocolParamType* protocolParam);This API is used to read Follow Up information TLV parameters from received Follow_ Up message.
Std_ReturnType EthTSyn_GetProtocolParam(StbM_SynchronizedTimeBaseType timeBaseId, StbM_ProtocolParamType* protocolParam);Returns the version information of this module.
void EthTSyn_GetVersionInfo(Std_VersionInfoType* versioninfo);This function initializes the Time Synchronization over Ethernet.
void EthTSyn_Init(const EthTSyn_ConfigType* configPtr);Main function for cyclic call / resp. Sync, Follow_Up and Pdelay_Req transmissions
void EthTSyn_MainFunction(void);This API is used to set FollowUp information TLV parameters of a Follow_Up message prior transmission. The API is called within StbM_SetBusProtocolParam which provides the content of the structure protocolParam.
Std_ReturnType EthTSyn_SetProtocolParam(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_ProtocolParamType* protocolParam);This API is used to set Follow Up information TLV parameters of a Follow_ Up message prior transmission. The API is called within Stb M_ Set Bus Protocol Param which provides the content of the structure p rotocol Param.
Std_ReturnType EthTSyn_SetProtocolParam(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_ProtocolParamType* protocolParam);This API is used to turn on and off the TX capabilities of the EthTSyn.
void EthTSyn_SetTransmissionMode(uint8 CtrlIdx, EthTSyn_TransmissionModeType Mode);Allows resetting state machine in case of unexpected Link loss to avoid inconsistent Sync and Follow_Up sequences
Std_ReturnType EthTSyn_TrcvLinkStateChg(uint8 CtrlIdx, EthTrcv_LinkStateType TrcvLinkState);Confirms the transmission of an Ethernet frame
void EthTSyn_TxConfirmation(uint8 CtrlIdx, Eth_BufIdxType BufIdx, Std_ReturnType Result);This is the base type for the configuration of the Global Time Synchronization over Ethernet. A pointer to an instance of this structure will be used in the initialization of the Global Time Synchronization over Ethernet. The content of this structure is defined in chapter 10 Configuration specification.
Handles the enabling and disabling of the transmission mode
FrTSyn
Returns the version information of this module.
void FrTSyn_GetVersionInfo(Std_VersionInfoType* versioninfo);By this API service the FrTSyn gets an indication and the result of ICV generation.
void FrTSyn_IcvGenerationIndication(uint32 jobId, Crypto_ResultType result);By this API service the FrTSyn gets an indication and the result of ICV verification.
void FrTSyn_IcvVerificationIndication(uint32 jobId, Crypto_ResultType result);This function initializes the Time Synchronization over FlexRay.
void FrTSyn_Init(const FrTSyn_ConfigType* configPtr);Main function for cyclic call / resp. Timesync message transmission
void FrTSyn_MainFunction(void);Indication of a received PDU from a lower layer communication interface module.
void FrTSyn_RxIndication(PduIdType RxPduId, const PduInfoType* PduInfoPtr);This API is used to turn on and off the TX capabilities of the FrTSyn.
void FrTSyn_SetTransmissionMode(uint8 CtrlIdx, FrTSyn_TransmissionModeType Mode);Within this API, the upper layer module (called module) shall check whether the available data fits into the buffer size reported by PduInfoPtr->SduLength. If it fits, it shall copy its data into the buffer provided by PduInfoPtr->SduDataPtr and update the length of the actual copied data in PduInfoPtr->SduLength. If not, it returns E_NOT_OK without changing PduInfoPtr.
Std_ReturnType FrTSyn_TriggerTransmit(PduIdType TxPduId, PduInfoType* PduInfoPtr);This is the base type for the configuration of the Time Synchronization over FlexRay. A pointer to an instance of this structure will be used in the initialization of the Time Synchronization over FlexRay. The content of this structure is defined in chapter 10 Configuration specification.
Handles the enabling and disabling of the transmission mode
StbM
The callback notifies the customers, when a <Time Base> related event occurs, which is enabled by the notification mask
Std_ReturnType StatusNotificationCallback<Time Base>(StbM_TimeBaseNotificationType eventNotification);Provides a recorded snapshot data block of the measurement data table belonging to the Synchronized Time Base.
Std_ReturnType SyncTimeRecordBlockCallback<Time Base>(const StbM_SyncRecordTableBlockType* syncRecordTableBlock);Provides a recorded snapshot data block of the measurement data table belonging to the Offset Time Base.
Std_ReturnType OffsetTimeRecordBlockCallback<Time Base>(const StbM_OffsetRecordTableBlockType* offsetRecordTableBlock);This callback notifies the <Customer>, when a Time Base reaches the time value set by Stb M_ Start Timer for the <Time Base>
Std_ReturnType <Customer>_TimeNotificationCallback<Time Base>(StbM_TimeDiffType deviationTime);This interface is used by the StbM to query the current freshness value.
This API returns the freshness value from the Most Significant Bits in the first byte, of the Freshness array, in big endian format Tags: atp.Status=draft
Std_ReturnType GetTxFreshnessFct(uint16 StbMFreshnessValueId, uint8* StbMFreshnessValue, uint32* StbMFreshnessValueLength);This interface is used by the StbM to obtain the current freshness value. The interface function provides also the truncated freshness transmitted in the secured time sync message. Tags: atp.Status=draft
This interface is used by the StbM to indicate that the Secured Time Synchronization Message has been initiated for transmission. Tags: atp.Status=draft
void SPduTxConfirmationFct(uint16 StbMFreshnessValueId);Returns the current Time Tuple, status and User Data of the Time Base.
Std_ReturnType StbM_BusGetCurrentTime(StbM_SynchronizedTimeBaseType timeBaseId, StbM_TimeStampType* globalTimePtr, StbM_VirtualLocalTimeType* localTimePtr, StbM_UserDataType* userData);Allows the Time Base Provider Modules to forward a new Global Time tuple (i.e., Rx Time Tuple) to the Stb M.
Std_ReturnType StbM_BusSetGlobalTime(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_TimeStampType* globalTimePtr, const StbM_UserDataType* userDataPtr, const StbM_MeasurementType* measureDataPtr, const StbM_VirtualLocalTimeType* localTimePtr);Provides CAN Timesyn module specific data for a Time Master to the Stb M. Tags: atp.Status=draft
Std_ReturnType StbM_CanSetMasterTimingData(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_CanTimeMasterMeasurementType* measureDataPtr);Allows the Can TSyn Module to forward CAN specific details to the Stb M. Tags: atp.Status=draft
Std_ReturnType StbM_CanSetSlaveTimingData(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_CanTimeSlaveMeasurementType* measureDataPtr);Copies Time Base data (current time, user data, rate corrction) from Source Time Base to Destination Time Base. The Source Time Base is identified by the parameter Stb MSource Time Base (ECUC_ Stb M_00074). Stb?M_?Clone Time Base behaves synchronuously (immediate copy of Time Base) if DEFERRED_ COPY flag of parameter clone Cfg is set to true, otherwise it behaves asynchronuously (deferred copy of Time Base). Note: Even, if conf igured to behave synchronuously (immediate copy of Time Base), actual transmission of cloned Time Base value on the bus occurs asynchronuously.
Std_ReturnType StbM_CloneTimeBase(StbM_SynchronizedTimeBaseType timeBaseId, StbM_CloneConfigType cloneCfg, StbM_TimeBaseStatusType statusMask, StbM_TimeBaseStatusType statusValue);Provides Ethernet Timesyn module specific data for a Time Master to the Stb M. Tags: atp.Status=draft
Std_ReturnType StbM_EthSetMasterTimingData(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_EthTimeMasterMeasurementType* measureDataPtr);- Tags: atp.Status=draft
Std_ReturnType StbM_EthSetPdelayInitiatorData(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_PdelayInitiatorMeasurementType* measureDataPtr);- Tags: atp.Status=draft
Std_ReturnType StbM_EthSetPdelayResponderData(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_PdelayResponderMeasurementType* measureDataPtr);Allows the Eth TSyn Module to forward Ethernet specific details to the Stb M. Tags: atp.Status=draft
Std_ReturnType StbM_EthSetSlaveTimingData(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_EthTimeSlaveMeasurementType* measureDataPtr);Provides Flexray Timesyn module specific data for a Time Master to the Stb M. Tags: atp.Status=draft
Std_ReturnType StbM_FrSetMasterTimingData(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_FrTimeMasterMeasurementType* measureDataPtr);Allows the Fr TSyn Module to forward Flexray specific details to the Stb M. Tags: atp.Status=draft
Std_ReturnType StbM_FrSetSlaveTimingData(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_FrTimeSlaveMeasurementType* measureDataPtr);This API is used to get bus specific parameters from received Follow_ Up message
Std_ReturnType StbM_GetBusProtocolParam(StbM_SynchronizedTimeBaseType timeBaseId, StbM_ProtocolParamType* protocolParam);Returns a time triple (Local Time, Fallback Local Time, Global time and timebase status) and user data details. Note: This API shall be called with locked interrupts / within an Exclusive Area to prevent interruption (i.e., the risk that the time stamp is outdated on return of the function call). Tags: atp.Status=draft ▽ △
Std_ReturnType StbM_GetCurrentSafeTime(StbM_SynchronizedTimeBaseType timeBaseId, StbM_TimeTripleType* timeTriple, StbM_UserDataType* userData);Returns a time value (Local Time Base derived from Global Time Base) in standard format. Note: This API shall be called with locked interrupts / within an Exclusive Area to prevent interruption (i.e., the risk that the time stamp is outdated on return of the function call).
Std_ReturnType StbM_GetCurrentTime(StbM_SynchronizedTimeBaseType timeBaseId, StbM_TimeStampType* timeStamp, StbM_UserDataType* userData);Returns a time value (Local Time Base derived from Global Time Base) in extended format. Note: This API shall be called with locked interrupts / within an Exclusive Area to prevent interruption (i.e., the risk that the time stamp is outdated on return of the function call).
Std_ReturnType StbM_GetCurrentTimeExtended(StbM_SynchronizedTimeBaseType timeBaseId, StbM_TimeStampExtendedType* timeStamp, StbM_UserDataType* userData);Returns the Virtual Local Time of the referenced Time Base.
Std_ReturnType StbM_GetCurrentVirtualLocalTime(StbM_SynchronizedTimeBaseType timeBaseId, StbM_VirtualLocalTimeType* localTimePtr);Returns the Fallback Virtual Local Time of the referenced Time Base. Tags: atp.Status=draft
Std_ReturnType StbM_GetFallbackVirtualLocalTime(StbM_SynchronizedTimeBaseType timeBaseId, StbM_VirtualLocalTimeType* localTimePtr);Indicates if the functionality for a system wide master (e.g. Stb M_ Set Global Time) for a given Time Base is ava ilable or not.
Std_ReturnType StbM_GetMasterConfig(StbM_SynchronizedTimeBaseType timeBaseId, StbM_MasterConfigType* masterConfig);Allows the Timesync Modules to get the current Offset Time and User Data.
Std_ReturnType StbM_GetOffset(StbM_SynchronizedTimeBaseType timeBaseId, StbM_TimeStampType* timeStamp, StbM_UserDataType* userData);Accesses to the recorded snapshot data Header of the table belonging to the Offset Time Base.
Std_ReturnType StbM_GetOffsetTimeRecordHead(StbM_SynchronizedTimeBaseType timeBaseId, StbM_OffsetRecordTableHeadType* offsetRecordTableHead);Returns value of the current rate deviation of a Time Base
Std_ReturnType StbM_GetRateDeviation(StbM_SynchronizedTimeBaseType timeBaseId, StbM_RateDeviationType* rateDeviation);This interface is used by the StbM to query the current freshness value. Tags: atp.Status=draft
Accesses to the recorded snapshot data Header of the table belonging to the Synchronized Time Base. Available v ia Stb M.h
Std_ReturnType StbM_GetSyncTimeRecordHead(StbM_SynchronizedTimeBaseType timeBaseId, StbM_SyncRecordTableHeadType* syncRecordTableHead);Returns detailed status information for a Synchronized (or Pure Local) Time Base and, if called for an Offset Time Base, for the Offset Time Base and the underlying Synchronized Time Base.
Std_ReturnType StbM_GetTimeBaseStatus(StbM_SynchronizedTimeBaseType timeBaseId, StbM_TimeBaseStatusType* syncTimeBaseStatus, StbM_TimeBaseStatusType* offsetTimeBaseStatus);Allows the Timesync Modules to detect, whether a Time Base should be transmitted immediately in the subsequent <Bus>TSyn_ Main Function() cycle.
uint8 StbM_GetTimeBaseUpdateCounter(StbM_SynchronizedTimeBaseType timeBaseId);Returns value of Time Leap.
Std_ReturnType StbM_GetTimeLeap(StbM_SynchronizedTimeBaseType timeBaseId, StbM_TimeDiffType* timeJump);This API returns the freshness value from the Most Significant Bits in the first byte, of the Freshness array, in big endian format. Tags: atp.Status=draft
Std_ReturnType StbM_GetTxFreshness(uint16 StbMFreshnessValueId, uint8* StbMFreshnessValue, uint32* StbMFreshnessValueLength);This interface is used by the StbM to obtain the current freshness value. The interface function provides also the truncated freshness transmitted in the secured time sync message. Tags: atp.Status=draft
Returns the version information of this module.
void StbM_GetVersionInfo(Std_VersionInfoType* versioninfo);Initializes the Synchronized Time - base Manager
void StbM_Init(const StbM_ConfigType* ConfigPtr);This function will be called cyclically by a task body provided by the BSW Schedule. It will invoke the triggered customers and synchronize the referenced OS Schedule Tables.
void StbM_MainFunction(void);This API is used to set bus specific parameters of a Time Master
Std_ReturnType StbM_SetBusProtocolParam(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_ProtocolParamType* protocolParam);Sets an offset time that will be added to the synchronized time when cloning a Time Base.
Std_ReturnType StbM_SetCloningOffset(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_TimeStampType* timeOffset);Allows the Customers to set the new global time that has to be valid for the system, which will be sent to the busses. This function will be used if a Time Master is present in this ECU.
Std_ReturnType StbM_SetGlobalTime(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_TimeStampType* timeStamp, const StbM_UserDataType* userData);Allows the Customers and the Timesync Modules to set the Offset Time and the User Data.
Std_ReturnType StbM_SetOffset(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_TimeStampType* timeStamp, const StbM_UserDataType* userData);Allows to set the rate of a Synchronized Time Base (being either a Pure Local Time Base or not).
Std_ReturnType StbM_SetRateCorrection(StbM_SynchronizedTimeBaseType timeBaseId, StbM_RateDeviationType rateDeviation);Allows the Customers to set the new User Data that has to be valid for the system, which will be sent to the busses.
Std_ReturnType StbM_SetUserData(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_UserDataType* userData);Sets a time value, which the Time Base value is compared against
Std_ReturnType StbM_StartTimer(StbM_SynchronizedTimeBaseType timeBaseId, StbM_CustomerIdType customerId, const StbM_TimeStampType* expireTime);Called by the <Upper Layer> to force the Times ync Modules to transmit the current Time Base again due to an incremented time Base Update Counter[time Base Id]
Std_ReturnType StbM_TriggerTimeTransmission(StbM_SynchronizedTimeBaseType timeBaseId);Allows the Customers to set the Global Time that will be sent to the buses. This function will be used if a Time Master is present in this ECU. Using Update Global Time will not lead to an immediate transmission of the Global Time.
Std_ReturnType StbM_UpdateGlobalTime(StbM_SynchronizedTimeBaseType timeBaseId, const StbM_TimeStampType* timeStamp, const StbM_UserDataType* userData);Structure with detailed data for Time Validation of the Time Master on CAN Variation ({ecuc(Can TSyn/ Can TSyn General/ Can TSyn Time Validation Support)} == True)
Structure with detailed timing data for the Time Slave on CAN Variation ({ecuc(Can TSyn/ Can TSyn General/ Can TSyn Time Validation Support)} == True)
bit DEFERRED_ COPY 0x01 True: copy of time information to destination is deferred until Source Time base is updated next time by <bus> TSyn module False: time information copied immediately to Destination Time Base bit IMMEDIATE_ TX 0x02 True: time information is transmitted on destination bus immediately after cloning False: time information is transmitted on destination bus only on ne xt cyclic transmission after cloning bit APPLY_ RATE 0x04 True: Rate correction value of SOurce Time Base shall be applied to Destination Time Base Description Bitfield to configure the cloning process. Bit 3 .. 7 are always 0 (reserved for future usage). Variation --
Configuration data structure of the Stb M module.
unique identifier of a notification customer Variation --
Structure with detailed data for Time Validation of the Time Master on Ethernet Variation ({ecuc(Eth TSyn/ Eth TSyn General/ Eth TSyn Time Validation Support)} == True)
Structure with detailed data for Time Validation of the Time Slave on Ethernet Variation ({ecuc(Eth TSyn/ Eth TSyn General/ Eth TSyn Time Validation Support)} == True)
Structure with detailed data for Time Validation of the Time Master on Flexray Variation ({ecuc(Fr TSyn/ Fr TSyn General/ Fr TSyn Time Validation Support)} == True)
Structure with detailed data for Time Validation of the Time Slave on Flexray Variation ({ecuc(Fr TSyn/ Fr TSyn General/ Fr TSyn Time Validation Support)} == True)
This type indicates if an ECU is configured for a system wide master for a given Time Base is available or not. Variation --
Structure which contains additional measurement data
Offset Time Base Record Table Block Variation --
Offset Time Base Record Table Header Variation --
Structure with detailed timing data for the p Delay Initiator Variation ({ecuc(Eth TSyn/ Eth TSyn General/ Eth TSyn Time Validation Support)} == True)
Structure with detailed timing d ata for the p Delay Responder Variation ({ecuc(Eth TSyn/ Eth TSyn General/ Eth TSyn Time Validation Support)} == True)
Structure which contains port identity data Variation ({ecuc(Eth TSyn/ Eth TSyn General/ Eth TSyn Time Validation Support)} == True)
This structure defines Time Sync protocol specific parameters relevant for the individual Time Sync modules (only Eth TSyn specific parameters are known so far) Variation --
Variables of this type are used to express a rate deviation in ppm. Variation --
Variables of this type are used to represent the kind of synchronized time - base. Variation --
Synchronized Time Base Record Table Block Variation --
Synchronized Time Base Record Table Header Variation --
bit EV_ GLOBAL_ TIME 0x01 Bit 0 (LSB): 0: synchronization to global time master not changed 1: GLOBAL_ TIME_ BASE in Stb M_ Time Base Status Type has changed from 0 to 1 bit EV_ TIMEOUT_ OCCURRED 0x02 Bit 1: 1: TIMEOUT bit in time Base Status has changed from 0 to 1 0: otherwise bit EV_ TIMEOUT_ REMOVED 0x04 Bit 2 1: TIMEOUT bit in time Base Status has changed from 1 to 0 0: otherwise bit EV_ TIMELEAP_ FUTURE 0x08 Bit 3 1: TIMELEAP_ FUTURE bit in time Base Status has changed from 0 to 1 0: otherwise bit EV_ TIMELEAP_ FUTURE_ REMOVED 0x10 Bit 4 1: TIMELEAP_ FUTURE bit in time Base Status has changed from 1 to 0 0: otherwise bit EV_ TIMELEAP_ PAST 0x20 Bit 5 1: TI MELEAP_ PAST bit in time Base Status has changed from 0 to 1 0: otherwise bit EV_ TIMELEAP_ PAST_ REMOVED 0x40 Bit 6 1: TIMELEAP_ PAST bit in time Base Status has changed from 1 to 0 0: otherwise bit EV_ SYNC_ TO_ SUBDOMAIN 0x80 Bit 7 1: SYNC_ TO_ GATEWAY bit in time Base Status has changed from 0 to 1 0: otherwise bit EV_ SYNC_ TO_ GLOBAL_ MASTER 0x100 Bit 8 1: SYNC_ TO_ GATEWAY bit of Time Domain changes from 1 to 0 0: otherwise bit EV_ RESYNC 0x0200 Bit 9: 1: A synchronization of the local time to the valid Global Time value has occured 0: No resynchronization event occured bit EV_ RATECORRECTION 0x0400 Bit 10 1: a valid rate correction has been calculated (not beyond limits) 0: No rate correction c alculated Description The Stb M_ Time Base Notification Type type defines a number of global time related events. The type definition is used for storing the events in the status variable Notification Events and for setting the mask variable Notification Mask which defines a subset of events for which an interrupt request shall be raised. Variation --
bit TIMEOUT 0x01 Bit 0 (LSB): 0x00: No Timeout on receiving Synchronisation Messages 0x01: Timeout on receiving Synchronisation Messages bit SYNC_ TO_ GATEWAY 0x04 Bit 2 0x00: Local Time Base is synchronous to Global Time Master 0x04: Local Time Base updates are based on a Time Gateway below the Global Time Master bit GLOBAL_ TIME_ BASE 0x08 Bit 3 0x00: Local Time Base is based on Local Time Base reference clock on ly (never synchronized with Global Time Base) 0x08: Local Time Base was at least synchronized with Global Time Base one time bit TIMELEAP_ FUTURE 0x10 Bit 4 0x00: No leap into the future within the received time for Time Base 0x10: Leap into the future w ithin the received time for Time Base exceeds a configured threshold bit TIMELEAP_ PAST 0x20 Bit 5 0x00: No leap into the past within the received time for Time Base 0x20: Leap into the past within the received time for Time Base exceeds a configured thr eshold Description Bit 1, 6, and 7 are always 0 (reserved for future usage) Variables of this type are used to express if and how a Local Time Base is synchronized to the Global Time Master. The type is a bitfield of individual status bits, although not e very combination is possible, i.e. any of the bits TIMEOUT, TIMELEAP_ FUTURE, TIMELEAP_ PAST and SYNC_ TO_ GATEWAY can only be set if the GLOBAL_ TIME_ BASE bit is set. Variation --
Variables of this type are used to express time differences / offsets as signed values in in nanoseconds Variation --
Variables of this type are used for expressing time stamps including relative time and absolute calendar time. The absolute time starts from 1970 - 01 - 01. Variation --
Variables of this type are used for expressing time stamps with a limited range including relative time and absolute calendar time. The absolute time starts from 1970 - 01 - 01. 0 to 4.294.967.295 s ~ 136 years 0 to 999999999ns [0x3B9A C9FF] invalid value in nanoseconds: [0x3B9A CA00] to [0x3FFF FFFF] Bit 30 and 31 reserved, default: 0 Variation --
Variables of this type are used for expressing time stamps including relative time and absolute calendar time. The absolute time starts from 1970 - 01 - 01. 0 to 281474976710655s == 3257812230d [0x FFFF FFFF FFFF] 0 to 999999999ns [0x3B9A C9FF] invalid value i n nanoseconds: [0x3B9A CA00] to [0x3FFF FFFF] Bit 30 and 31 reserved, default: 0 Variation --
Indicates the underlying Time Sync module Variation --
Current user data of the Time Base Variation --
Variables of this type store time stamps of the Virtual Local Time. The unit is nanoseconds. Variation --
Tm
Performs busy waiting by polling with a guaranteed minimum waiting time.
Std_ReturnType Tm_BusyWait1us(uint8 WaitingTimeMin);Performs busy waiting by polling with a guaranteed minimum waiting time.
Std_ReturnType Tm_BusyWait1us16bit(uint8 WaitingTimeMin);Performs busy waiting by polling with a guaranteed minimum waiting time.
Std_ReturnType Tm_BusyWait1us24bit(uint8 WaitingTimeMin);Performs busy waiting by polling with a guaranteed minimum waiting time.
Std_ReturnType Tm_BusyWait1us32bit(uint8 WaitingTimeMin);Delivers the (relative) value of the time since the last reset (or shifting) of the timer instance.
Std_ReturnType Tm_GetTimeSpan(uint32 timerId, uint32* timeSpan);Service Name Tm_ Get Time Span100us32bit Syntax Std_ Return Type Tm_ Get Time Span100us32bit ( const Tm_ Predef Timer100us32bit Type* Timer Ptr, uint32* Time Span Ptr ) Service ID [hex] 0x12 Sync/ Async Synchronous Reentrancy Reentrant Parameters (in) Timer Ptr Pointer to a timer instance defined by the user. Parameters (inout) None Parameters (out) Time Span Ptr Pointer to time span destination data in RAM Return value Std _ Return - Type E_ OK: The underlying GPT driver service has returned E_ OK and no development error has been detected E_ NOT_ OK: The underlying GPT driver service has returned E_ NOT_ OK, or a development error has been detected Descripti on Delivers the time difference (current time - reference time). Available via Tm.h
Std_ReturnType Tm_GetTimeSpan100us32bit(const Tm_PredefTimer100us32bitType* TimerPtr, uint32* TimeSpanPtr);Delivers the time difference (current time - reference time).
Std_ReturnType Tm_GetTimeSpan1us16bit(const Tm_PredefTimer1us16bitType* TimerPtr, uint16* TimeSpanPtr);Service Name Tm_ Get Time Span1us24bit Syntax Std_ Return Type Tm_ Get Time Span1us24bit ( const Tm_ Predef Timer1us24bit Type* Timer Ptr, uint32* Time Span Ptr ) Service ID [hex] 0x8 Sync/ Async Synchronous Reentrancy Reentrant Parameters (in) Timer Ptr Pointer to a timer instance defined by the user. Parameters (inout) None Parameters (out) Time Span Ptr Pointer to time span destination data in RAM Return value Std _ Return - Type E_ OK: The underlying GPT driver service has returned E_ OK and no development error has been detected E_ NOT_ OK: The underlying GPT driver service has returned E_ NOT_ OK, or a development error has been detected Descripti on Delivers the time difference (current time - reference time). Available via Tm.h
Std_ReturnType Tm_GetTimeSpan1us24bit(const Tm_PredefTimer1us24bitType* TimerPtr, uint32* TimeSpanPtr);Delivers the time difference (current time - reference time).
Std_ReturnType Tm_GetTimeSpan1us32bit(const Tm_PredefTimer1us32bitType* TimerPtr, uint32* TimeSpanPtr);Returns the version information of this module.
void Tm_GetVersionInfo(Std_VersionInfoType* VersionInfoPtr);Reset a timer instance by setting the reference time to the current value of the related PreDef Timer.
Std_ReturnType Tm_ResetTimer(uint32 timerId);Resets a timer instance (use r point of view).
Std_ReturnType Tm_ResetTimer100us32bit(Tm_PredefTimer100us32bitType* TimerPtr);Resets a timer instance (user point of view).
Std_ReturnType Tm_ResetTimer1us16bit(Tm_PredefTimer1us16bitType* TimerPtr);Resets a timer instance (use r point of view).
Std_ReturnType Tm_ResetTimer1us24bit(Tm_PredefTimer1us24bitType* TimerPtr);Resets a timer instance (user point of view).
Std_ReturnType Tm_ResetTimer1us32bit(Tm_PredefTimer1us32bitType* TimerPtr);Shifts the reference time of the timer instance.
void Tm_ShiftTimer100us32bit(Tm_PredefTimer100us32bitType* TimerPtr, uint32 TimeValue);Shifts the reference time of the timer instance.
void Tm_ShiftTimer1us16bit(Tm_PredefTimer1us16bitType* TimerPtr, uint16 TimeValue);Shifts the reference time of the timer instance.
void Tm_ShiftTimer1us24bit(Tm_PredefTimer1us24bitType* TimerPtr, uint32 TimeValue);Shifts the reference time of the timer instance.
void Tm_ShiftTimer1us32bit(Tm_PredefTimer1us32bitType* TimerPtr, uint32 TimeValue);Synchronizes two timer instances.
void Tm_SyncTimer100us32bit(Tm_PredefTimer100us32bitType* TimerDstPtr, const Tm_PredefTimer100us32bitType* TimerSrcPtr);Synchronizes two timer instances.
void Tm_SyncTimer1us16bit(Tm_PredefTimer1us16bitType* TimerDstPtr, const Tm_PredefTimer1us16bitType* TimerSrcPtr);Synchronizes two timer instances.
void Tm_SyncTimer1us24bit(Tm_PredefTimer1us24bitType* TimerDstPtr, const Tm_PredefTimer1us24bitType* TimerSrcPtr);Synchronizes two timer instances.
void Tm_SyncTimer1us32bit(Tm_PredefTimer1us32bitType* TimerDstPtr, const Tm_PredefTimer1us32bitType* TimerSrcPtr);Data type of Time Service Predef Timer 100µs32bit. The structure contains the reference time.
Data type of Time Service Predef Timer 1us16bit. The structure contains the reference time.
Data type of Time Service Predef Timer 1us24bit. The structure contains the reference time.
Data type of Time Service Predef Timer 1us32bit. The structure contains the reference time.
Module im Cluster
Time Sync Over CAN (CanTSyn)
AUTOSAR Classic Communication Services-Modul Time Sync Over CAN (CanTSyn, Spezifikation: AUTOSAR_CP_SWS_TimeSyncOverCAN.pdf, AUTOSAR_SWS_TimeSyncOverCAN.pdf).
Time Sync Over Ethernet (EthTSyn)
AUTOSAR Classic Communication Services-Modul Time Sync Over Ethernet (EthTSyn, Spezifikation: AUTOSAR_CP_SWS_TimeSyncOverEthernet.pdf, AUTOSAR_SWS_TimeSyncOverEthernet.pdf).
Time Sync Over FlexRay (FrTSyn)
AUTOSAR Classic Communication Services-Modul Time Sync Over FlexRay (FrTSyn, Spezifikation: AUTOSAR_CP_SWS_TimeSyncOverFlexRay.pdf, AUTOSAR_SWS_TimeSyncOverFlexRay.pdf).
Synchronized Time-Base Manager (StbM)
AUTOSAR Classic System Services-Modul Synchronized Time-Base Manager (StbM, Spezifikation: AUTOSAR_CP_SWS_SynchronizedTimeBaseManager.pdf, AUTOSAR_SWS_SynchronizedTimeBaseManager.pdf).
Time Service (Tm)
AUTOSAR Classic System Services-Modul Time Service (Tm, Spezifikation: AUTOSAR_CP_SWS_TimeService.pdf, AUTOSAR_SWS_TimeService.pdf).