FlexRay Interface (FrIf)
Abstracts FlexRay hardware controllers for upper layers.
Funktionen — Übersicht
void FrIf_Init (const FrIf_ConfigType* FrIf_ConfigPtr);Initializes the Flex Ray Interface.Std_ReturnType FrIf_ControllerInit (uint8 FrIf_CtrlIdx);Initialized a Flex Ray CC.Std_ReturnType FrIf_SetAbsoluteTimer (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx, uint8 FrIf_Cycle, uint16 FrIf_Offset);Wraps the Flex Ray Driver API function Fr_ Set Absolute Timer().Std_ReturnType FrIf_EnableAbsoluteTimerIRQ (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx);Service FrIf_EnableAbsoluteTimerIRQ.Std_ReturnType FrIf_AckAbsoluteTimerIRQ (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx);Wraps the Flex Ray Driver API function Fr_ Ack Absolute Timer IRQ()Std_ReturnType FrIf_StartCommunication (uint8 FrIf_CtrlIdx);Wraps the Flex Ray Driver API function Fr_ Start Communication().Std_ReturnType FrIf_HaltCommunication (uint8 FrIf_CtrlIdx);Wraps the Flex Ray Driver API function Fr_ Halt Communication().Std_ReturnType FrIf_AbortCommunication (uint8 FrIf_CtrlIdx);Wraps the Flex Ray Driver API function Fr_ Abort Communication().Std_ReturnType FrIf_GetState (uint8 FrIf_ClstIdx, FrIf_StateType* FrIf_StatePtr);Get current Fr If state.Std_ReturnType FrIf_SetState (uint8 FrIf_ClstIdx, FrIf_StateTransitionType FrIf_StateTransition);Requests Fr If state machine transition.Std_ReturnType FrIf_SetWakeupChannel (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx);Wraps the Flex Ray Driver API functi on Fr_ Set Wakeup Channel().Std_ReturnType FrIf_SendWUP (uint8 FrIf_CtrlIdx);Wraps the Flex Ray Driver API function Fr_ Send WUP().Std_ReturnType FrIf_GetPOCStatus (uint8 FrIf_CtrlIdx, Fr_POCStatusType* FrIf_POCStatusPtr);Wraps the Flex Ray Driver API function Fr_ Get POCStatus().Std_ReturnType FrIf_GetGlobalTime (uint8 FrIf_CtrlIdx, uint8* FrIf_CyclePtr, uint16* FrIf_MacroTickPtr);Wraps the Flex Ray Driver API function Fr_ Get Global Time().Std_ReturnType FrIf_AllowColdstart (uint8 FrIf_CtrlIdx);Wraps the Flex Ray Driver API function Fr_ Allow Coldstart().uint16 FrIf_GetMacroticksPerCycle (uint8 FrIf_CtrlIdx);Retrieves the amount of Macroticks per Cycleuint16 FrIf_GetMacrotickDuration (uint8 FrIf_CtrlIdx);Retrieves the Duration of a Macrotick in nsStd_ReturnType FrIf_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);Requests transmission of a PDU.Std_ReturnType FrIf_SetTransceiverMode (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx, Limited by st atic configuration [Configuration Parameter FrIfCounterLimit, see FrIf06076 ]); ⚠️Wraps the Flex Ray Transceiver Driver API function FrStd_ReturnType FrIf_GetTransceiverMode (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx, FrTrcv_TrcvModeType* FrIf_TrcvModePtr);Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Get Transceiver Mode().Std_ReturnType FrIf_GetTransceiverWUReason (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx, FrTrcv_TrcvWUReasonType* FrIf_TrcvWUReasonPtr);Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Get Transceiver WUReason().Std_ReturnType FrIf_ClearTransceiverWakeup (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx);Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Clear Transceiver Wakeup().Std_ReturnType FrIf_CancelAbsoluteTimer (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx);Wraps the Flex Ray Driver API function Fr_ Cancel Absolute Timer().Std_ReturnType FrIf_GetAbsoluteTimerIRQStatus (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx, boolean* FrIf_IRQStatusPtr);Wraps the Flex Ray Driver API function Fr_ Get Absolute Timer IRQStatus()Std_ReturnType FrIf_DisableAbsoluteTimerIRQ (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx);Wraps the Flex Ray Driver API function Fr_ Disable Absolute Timer IRQ().uint32 FrIf_GetCycleLength (uint8 FrIf_CtrlIdx);This API returns the configured time of the configuration parameter "Gd Cycle" in nanoseconds for the Flex Ray controller with...Std_ReturnType FrIf_AllSlots (uint8 FrIf_CtrlIdx);Wraps the Flex Ray Driver API function Fr_ All SlotsStd_ReturnType FrIf_GetChannelStatus (uint8 FrIf_CtrlIdx, uint16* FrIf_ChannelAStatusPtr, uint16* FrIf_ChannelBStatusPtr);Wraps the Flex Ray Driver API function Fr_ Get Channel Status() and gets the channel status information.Std_ReturnType FrIf_GetClockCorrection (uint8 FrIf_CtrlIdx, sint16* FrIf_RateCorrectionPtr, sint32* FrIf_OffsetCorrectionPtr);Wraps the Flex Ray Driver API function Fr_ Get Clock Correction () and gets the current clock correction values.Std_ReturnType FrIf_GetSyncFrameList (uint8 FrIf_CtrlIdx, uint8 FrIf_ListSize, uint16* FrIf_ChannelAEvenListPtr, uint16* FrIf_ChannelBEvenListPtr, uint16* FrIf_ChannelAOddListPtr, uint16* FrIf_ChannelBOddListPtr);Service FrIf_GetSyncFrameList.Std_ReturnType FrIf_GetNumOfStartup FrIf_GetNumStartupFrames (uint8 FrIf_CtrlIdx, uint8* FrIf_NumOfStartupFramesPtr); ⚠️Wraps the Flex Ray Driver API function Fr_ Get Num Of Startup Frames and gets a list of the current number of startup frames...Std_ReturnType FrIf_GetWakeupRxStatus (uint8 FrIf_CtrlIdx, uint8* FrIf_WakeupRxStatusPtr);Wraps the Flex Ray Driver API function Fr_ Get Wakeup Rx Status and gets the wakeup received information from the Flex Ray...Std_ReturnType FrIf_CancelTransmit (PduIdType TxPduId);Requests cancellation of an ongoing transmission o f a PDU in a lower layer communication module.Std_ReturnType FrIf_DisableLPdu (uint8 FrIf_CtrlIdx, uint16 FrIf_LPduIdx);Wraps the Flex Ray Driver Function Fr_ Disable LPdu.Std_ReturnType FrIf_GetTransceiverError (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx, uint8 FrIf_BranchIdx, uint32* FrIf_BusErrorState);Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Get Transceiver Error.Std_ReturnType FrIf_EnableTransceiverBranch (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx, uint8 FrIf_BranchIdx);Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Enable Transceiver Branch.Std_ReturnType FrIf_DisableTransceiverBranch (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx, uint8 FrIf_BranchIdx);Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Disable Transceiver Branch.Std_ReturnType FrIf_ReconfigLPdu (uint8 FrIf_CtrlIdx, uint16 FrIf_LPduIdx, uint16 FrIf_FrameId, Fr_ChannelType FrIf_ChnlIdx, uint8 FrIf_CycleRepetition, uint8 FrIf_CycleOffset, uint8 FrIf_PayloadLength, uint16 FrIf_Header CRC); ⚠️Service FrIf_ReconfigLPdu.Std_ReturnType FrIf_GetNmVector (uint8 FrIf_CtrlIdx, uint8* FrIf_NmVectorPtr);Derives the Flex Ray NM Vector.void FrIf_GetVersionInfo (Std_VersionInfoType* FrIf_VersionInfoPtr);Returns the version information of this module.Std_ReturnType FrIf_ReadCCConfig (uint8 FrIf_CtrlIdx, uint8 FrIf_Config ParamIdx, uint32* FrIf_Config ParamValuePtr); ⚠️Wraps the Flex Ray Driver API function Fr_ Read CCConfig().Std_ReturnType FrIf_EnableBusMirroring (uint8 FrIf_ClstIdx, boolean FrIf_MirroringActive);Enables or disables mirroring for all Flex Ray controllers connected to the addressed Flex Ray cluster.void FrIf_CheckWakeupByTransceiver (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx);Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Check Wakeup By Transceiver().void <User_RxIndication> (PduIdType RxPduId, const PduInfoType* PduInfoPtr);Indication of a received PDU from a lower layer communication interface module.void <User_TxConfirmation> (PduIdType TxPduId, Std_ReturnType result);The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.Std_ReturnType <User_TriggerTransmit> (PduIdType TxPduId, PduInfoType* PduInfoPtr);Within this API, the upper lay er module (called module) shall check whether thevoid <Free_Op_A> (uint8 FrIf_CtrlIdx, uint16 FrIf_LPduIdx);User defined communication operation in order to support hardware specific or additional communication controller features to...void <Free_Op_B> (uint8 FrIf_CtrlIdx, uint16 FrIf_LPduIdx);User defined communication operation in order to support hardware specific or additional communication controller features to...void <UL_TxConflictNotification> (uint8 FrIf_CtrlIdx, uint16 FrIf_LPduIdx);Notification in case a Tx Conflict has been detected.
Typen — Übersicht
struct FrIf_ConfigTypeThis type contains the implementation - specific post build time configuration structure.enum FrIf_StateTypeVariables of this type are used to represent the Fr If_ State of a Flex Ray CC.FrIf_StateTransitionTypeVariables of this type are used to represent the Fr If_ State of a Flex Ray CC.
Funktionen & Typen — Detailansicht
function FrIf_Init [SWS_FrIf_05003] 📄 PDF
void FrIf_Init (const FrIf_ConfigType* FrIf_ConfigPtr);
Initializes the Flex Ray Interface.
Die Funktion FrIf_Init dient der Initialisierung des FlexRay-Interface-Moduls ([SWS_FrIf_05003]). Der Aufruf erfolgt synchron und ist als nicht reentrant (Non Reentrant) spezifiziert ([SWS_FrIf_05003]).
Parameter und Rückgabewerte
FrIf_ConfigPtr(Eingangsparameter): Basiszeiger auf die Konfigurationsstruktur des FlexRay-Interface ([SWS_FrIf_05003]).- Rückgabewert:
void– die Funktion liefert keinen Rückgabewert zurück ([SWS_FrIf_05003]).
Einschränkungen und Aufrufbedingungen
Da FrIf_Init nicht reentrant ist, darf die Funktion zu keinem Zeitpunkt parallel oder unterbrechend durch denselben oder einen anderen Thread bzw. Task erneut aufgerufen werden ([SWS_FrIf_05003]). Der Aufruf muss im Systeminitialisierungskontext erfolgen, bevor reguläre Dienste des FlexRay-Interface in Anspruch genommen werden.
Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation von AUTOSAR Classic R20-11 generiert.
Implementer's Guide folgt (Komplexität I2)
function FrIf_ControllerInit [SWS_FrIf_05004] 📄 PDF
Std_ReturnType FrIf_ControllerInit (uint8 FrIf_CtrlIdx);
Initialized a Flex Ray CC.
Die synchrone Funktion FrIf_ControllerInit dient der Initialisierung eines FlexRay Communication Controllers (FlexRay CC) [SWS_FrIf_05004]. Sie ist über die Header-Datei FrIf.h verfügbar und wird über die Service-ID 0x03 identifiziert [SWS_FrIf_05004].
Über den Eingangsparameter FrIf_CtrlIdx vom Datentyp uint8 wird der Index des zu adressierenden FlexRay-Controllers übergeben [SWS_FrIf_05004]. Weitere Ein- oder Ausgabeparameter existieren für diese Schnittstelle nicht [SWS_FrIf_05004].
Der Rückgabewert ist vom Typ Std_ReturnType und meldet den Status der Initialisierung an den Aufrufer zurück [SWS_FrIf_05004]:
E_OK: Der Aufruf des API-Dienstes des zugrundeliegenden FlexRay-Treibers war erfolgreich und lieferteE_OK[SWS_FrIf_05004].E_NOT_OK: Der API-Dienst des FlexRay-Treibers hatE_NOT_OKzurückgegeben oder es wurde im Entwicklungsmodus ein Fehler festgestellt [SWS_FrIf_05004].
Hinsichtlich der Nebenläufigkeit ist FrIf_ControllerInit reentrant für unterschiedliche Controller-Indizes (FrIf_CtrlIdx), jedoch nicht reentrant für identische Werte von FrIf_CtrlIdx [SWS_FrIf_05004]. Nebenläufige Aufrufe für denselben Controller müssen daher durch das Gesamtsystem verhindert werden.
Dieser Text wurde durch eine KI auf Basis der Spezifikation AUTOSAR R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function FrIf_SetAbsoluteTimer [SWS_FrIf_05021] 📄 PDF
Std_ReturnType FrIf_SetAbsoluteTimer (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx, uint8 FrIf_Cycle, uint16 FrIf_Offset);
Wraps the Flex Ray Driver API function Fr_ Set Absolute Timer().
function FrIf_EnableAbsoluteTimerIRQ [SWS_FrIf_05025] 📄 PDF
Std_ReturnType FrIf_EnableAbsoluteTimerIRQ (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx);
Service FrIf_EnableAbsoluteTimerIRQ.
Verwendung
Die Funktion FrIf_EnableAbsoluteTimerIRQ stellt einen synchronen Dienst mit der Service-ID 0x1d dar, der über die Header-Datei FrIf.h bereitgestellt wird [SWS_FrIf_05025]. Sie fungiert als Wrapper um die Schnittstelle Fr_EnableAbsoluteTimerIRQ() des FlexRay-Treibers zur Aktivierung des Interrupts eines absoluten Timers [SWS_FrIf_05025].
Der Aufruf erfordert zwei Eingangsparameter [SWS_FrIf_05025]:
FrIf_CtrlIdx: Index des anzusprechenden FlexRay-Kommunikationscontrollers (FlexRay CC) [SWS_FrIf_05025].FrIf_AbsTimerIdx: Index des zu aktivierenden absoluten Timers auf dem adressierten Controller [SWS_FrIf_05025].
Rückgabewerte und Fehlerbehandlung
Die Funktion liefert einen Statuswert vom Typ Std_ReturnType zurück [SWS_FrIf_05025]:
E_OK: Der Aufruf des zugrundeliegenden Treiberdienstes war erfolgreich und lieferteE_OK[SWS_FrIf_05025].E_NOT_OK: Die Treiberfunktion hatE_NOT_OKzurückgegeben oder es wurde im Entwicklungsmodus (Development Mode) ein Fehler erkannt [SWS_FrIf_05025].
Nebenläufigkeit und Reentranz
Hinsichtlich des Aufrufkontextes ist FrIf_EnableAbsoluteTimerIRQ nicht reentrant für denselben FlexRay-Controller, darf jedoch für unterschiedliche FlexRay-Controller reentrant aufgerufen werden [SWS_FrIf_05025].
Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation AUTOSAR CP R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function FrIf_AckAbsoluteTimerIRQ [SWS_FrIf_05029] 📄 PDF
Std_ReturnType FrIf_AckAbsoluteTimerIRQ (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx);
Wraps the Flex Ray Driver API function Fr_ Ack Absolute Timer IRQ()
Die synchrone Schnittstellenfunktion FrIf_AckAbsoluteTimerIRQ kapselt als Wrapper den API-Aufruf der Treiberfunktion Fr_AckAbsoluteTimerIRQ() des FlexRay-Treibers [SWS_FrIf_05029]. Sie besitzt die Service-ID 0x21, wird über den Header FrIf.h bereitgestellt und dient der Bestätigung einer Interrupt-Anforderung für einen absoluten Timer eines FlexRay Communication Controllers.
Beim Aufruf der Funktion sind zwei Eingabeparameter zu übergeben [SWS_FrIf_05029]:
FrIf_CtrlIdx: Index des zu adressierenden FlexRay Communication Controllers (CC).FrIf_AbsTimerIdx: Index des spezifischen absoluten Timers, dessen Interrupt quittiert werden soll.
Die Funktion liefert einen Rückgabewert des Typs Std_ReturnType zur Auswertung des Ergebnisses [SWS_FrIf_05029]:
E_OK: Der Aufruf der Treiber-APIFr_AckAbsoluteTimerIRQ()wurde erfolgreich durchgeführt.E_NOT_OK: Der FlexRay-Treiber meldete beim AufrufE_NOT_OK, oder es wurde ein Fehler im Entwicklungsmodus (Development Mode) erkannt.
Hinsichtlich des Nebenläufigkeitsverhaltens arbeitet die Funktion synchron. Aufrufe für unterschiedliche FlexRay CCs sind reentrant, während gleichzeitige Aufrufe für denselben FlexRay CC nicht reentrant sind und vermieden werden müssen [SWS_FrIf_05029].
Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation AUTOSAR CP R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function FrIf_StartCommunication [SWS_FrIf_05005] 📄 PDF
Std_ReturnType FrIf_StartCommunication (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Start Communication().
Die Funktion FrIf_StartCommunication fungiert als Kapselung der FlexRay-Treiberfunktion Fr_StartCommunication() und stößt die Kommunikationsaufnahme eines adressierten FlexRay-Kommunikationscontrollers an [SWS_FrIf_05005].
Verwendung und Aufrufkontext
Die Schnittstelle ist über den Header FrIf.h deklariert und besitzt die Service-ID 0x04 [SWS_FrIf_05005]. Der Aufruf wird asynchron abgewickelt [SWS_FrIf_05005]. Als einziger Eingabeparameter dient FrIf_CtrlIdx (Typ uint8), welcher den Index des anzusteuernden FlexRay-Kommunikationscontrollers festlegt; Ein-/Ausgangs- oder reine Ausgabeparameter existieren nicht [SWS_FrIf_05005].
Fehlerbehandlung und Rückgabewerte
Die Funktion gibt einen Statuscode vom Typ Std_ReturnType zurück [SWS_FrIf_05005]:
E_OK: Der Aufruf des zugrunde liegenden API-Dienstes im FlexRay-Treiber verlief erfolgreich und lieferteE_OKzurück [SWS_FrIf_05005].E_NOT_OK: Der API-Dienst des Treibers hatE_NOT_OKgemeldet oder es wurde während der Ausführung im Entwicklungsmodus (Development Mode) ein Fehler erkannt [SWS_FrIf_05005].
Nebenläufigkeit und Einschränkungen
Bezüglich der Reentranz ist FrIf_StartCommunication reentrant für voneinander abweichende Controller-Indizes (FrIf_CtrlIdx), jedoch nicht reentrant für identische Controller-Werte [SWS_FrIf_05005]. Aufrufende Module müssen daher bei gleichzeitigen Zugriffen sicherstellen, dass keine nebenläufigen Aufrufe für denselben Controller erfolgen.
Dieser Nutzungshinweis wurde von einer KI auf Basis der AUTOSAR-Spezifikation generiert.
Implementer's Guide folgt (Komplexität I2)
function FrIf_HaltCommunication [SWS_FrIf_05006] 📄 PDF
Std_ReturnType FrIf_HaltCommunication (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Halt Communication().
Die Funktion FrIf_HaltCommunication (Service-ID 0x05) stellt im FlexRay Interface (FrIf) einen Wrapper für den Aufruf der Treiber-API-Funktion Fr_HaltCommunication() dar und wird über den Header FrIf.h deklariert [SWS_FrIf_05006]. Der Dienst wird mit asynchroner Semantik ausgeführt [SWS_FrIf_05006]. Als einziger Parameter wird der Eingangswert FrIf_CtrlIdx übergeben, der den Index des jeweils anzusprechenden FlexRay-Communication-Controllers spezifiziert; Ein-/Ausgabe- oder reine Ausgabeparameter sind für diesen Dienst nicht definiert [SWS_FrIf_05006].
Der Rückgabewert ist vom Typ Std_ReturnType und signalisiert das Ergebnis des Aufrufs [SWS_FrIf_05006]:
E_OK: Der Aufruf des API-Dienstes im FlexRay-Treiber war erfolgreich und lieferteE_OKzurück [SWS_FrIf_05006].E_NOT_OK: Der API-Aufruf des FlexRay-Treibers hatE_NOT_OKzurückgegeben oder es wurde im Entwicklungsmodus (Development Mode) ein Fehler erkannt [SWS_FrIf_05006].
In Bezug auf die Nebenläufigkeit ist FrIf_HaltCommunication reentrant für unterschiedliche Werte des Controller-Index FrIf_CtrlIdx, jedoch nicht reentrant bei identischen Werten für FrIf_CtrlIdx [SWS_FrIf_05006]. Zeitgleiche oder unterbrechende Aufrufe für denselben Controller sind folglich unzulässig und müssen im Kontext des Aufrufers verhindert werden.
Dieser Text wurde von einer KI basierend auf der Spezifikation AUTOSAR CP R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function FrIf_AbortCommunication [SWS_FrIf_05007] 📄 PDF
Std_ReturnType FrIf_AbortCommunication (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Abort Communication().
Verwendung und Aufrufkontext
Die synchrone Schnittstellenfunktion FrIf_AbortCommunication fungiert als direkter Wrapper für die API-Funktion Fr_AbortCommunication() des FlexRay-Treibers [SWS_FrIf_05007]. Sie ist in der Header-Datei FrIf.h deklariert und besitzt die Service-ID 0x06 [SWS_FrIf_05007].
Über den Eingangsparameter FrIf_CtrlIdx wird der Index des anzusprechenden FlexRay Communication Controllers angegeben [SWS_FrIf_05007]. Zusätzliche Ein- oder Ausgabeparameter sind für diese Schnittstelle nicht definiert [SWS_FrIf_05007].
Rückgabewerte und Fehlerbehandlung
Die Funktion liefert einen Statuswert vom Typ Std_ReturnType zurück [SWS_FrIf_05007]:
E_OK: Der Aufruf des API-Dienstes des FlexRay-Treibers war erfolgreich und hatE_OKzurückgegeben [SWS_FrIf_05007].E_NOT_OK: Der API-Dienst des FlexRay-Treibers hatE_NOT_OKzurückgeliefert oder es wurde ein Fehler im Entwicklungsmodus erkannt [SWS_FrIf_05007].
Nebenläufigkeit und Einschränkungen
Die Ausführung von FrIf_AbortCommunication ist synchron [SWS_FrIf_05007]. Die Funktion ist reentrant für unterschiedliche Werte von FrIf_CtrlIdx, jedoch nicht reentrant für identische Controller-Indizes [SWS_FrIf_05007].
Dieser Nutzungshinweis wurde automatisch auf Basis der AUTOSAR-Spezifikation generiert.
Implementer's Guide folgt (Komplexität I1)
function FrIf_GetState [SWS_FrIf_05170] 📄 PDF
Std_ReturnType FrIf_GetState (uint8 FrIf_ClstIdx, FrIf_StateType* FrIf_StatePtr);
Get current Fr If state.
function FrIf_SetState [SWS_FrIf_05174] 📄 PDF
Std_ReturnType FrIf_SetState (uint8 FrIf_ClstIdx, FrIf_StateTransitionType FrIf_StateTransition);
Requests Fr If state machine transition.
Verwendung und Aufruf
Die synchrone Funktion FrIf_SetState fordert einen Zustandsübergang in der Zustandsmaschine des FlexRay-Interfaces an [SWS_FrIf_05174]. Als Parameter werden der Cluster-Index FrIf_ClstIdx sowie der gewünschte Übergang FrIf_StateTransition übergeben. Die Funktion liefert E_OK zurück, wenn der Aufruf erfolgreich ausgeführt und die Zustandsänderung akzeptiert wurde; im Fehlerfall wird E_NOT_OK zurückgegeben [SWS_FrIf_05174].
Fehlerbehandlung und Randbedingungen
Die Funktion ist nicht reentrant (Non Reentrant) definiert [SWS_FrIf_05174]. Ist die Entwicklungskontrolle aktiviert (FrIfDevErrorDetect == ON) und enthält der Parameter FrIf_StateTransition einen ungültigen Wert, meldet die Funktion den Fehlercode FRIF_E_INV_FRIF_STATE über Det_ReportError an das DET-Modul [SWS_FrIf_05037].
Zusammenspiel bei Offline-Übergängen
Wird FrIf_SetState mit dem Übergangsparameter FRIF_STATE_OFFLINE aufgerufen, überprüft das FlexRay-Interface für jede PDU den Zähler TxConfCounter [SWS_FrIf_05501]. Ist dieser Wert für eine PDU größer als 0, informiert das Modul die darüberliegende Schicht mit dem Aufruf <UL>_TxConfirmation(id, E_NOT_OK) über das Fehlschlagen der ausstehenden Bestätigung [SWS_FrIf_05501].
Dieser Text wurde durch ein KI-System auf Basis der AUTOSAR-Spezifikation R20-11 generiert.
Implementer's Guide folgt (Komplexität I2)
function FrIf_SetWakeupChannel [SWS_FrIf_05010] 📄 PDF
Std_ReturnType FrIf_SetWakeupChannel (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx);
Wraps the Flex Ray Driver API functi on Fr_ Set Wakeup Channel(). The enum value "FR_ CHANNEL_ AB" shall not be used.
function FrIf_SendWUP [SWS_FrIf_05011] 📄 PDF
Std_ReturnType FrIf_SendWUP (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Send WUP().
Die Funktion FrIf_SendWUP (Service-ID 0x0a) des Moduls FrIf ist über die Header-Datei FrIf.h verfügbar und dient als Schnittstellen-Wrapper für den Aufruf der API-Funktion Fr_SendWUP() des unterlagerten FlexRay-Treibers [SWS_FrIf_05011].
Verwendung und Parameter
Der Dienst wird asynchron ausgeführt [SWS_FrIf_05011]. Als einziger Übergabeparameter dient der Eingangsparameter FrIf_CtrlIdx vom Typ uint8, welcher den Index des zu adressierenden FlexRay Communication Controllers (FlexRay CC) spezifiziert [SWS_FrIf_05011]. Es werden keine Inout- oder Out-Parameter verwendet [SWS_FrIf_05011].
Rückgabewerte und Fehlerbehandlung
Als Rückgabewert liefert die Funktion einen Status vom Typ Std_ReturnType [SWS_FrIf_05011]:
E_OK: Der Aufruf des API-Dienstes des FlexRay-Treibers wurde erfolgreich ausgeführt und hatE_OKzurückgemeldet [SWS_FrIf_05011].E_NOT_OK: Der Aufruf des API-Dienstes des FlexRay-Treibers hatE_NOT_OKzurückgegeben oder es wurde im Entwicklungsmodus (Development Mode) ein Fehler erkannt [SWS_FrIf_05011].
Nebenläufigkeit und Reentranz
Hinsichtlich des gleichzeitigen Zugriffs ist FrIf_SendWUP reentrant für Aufrufe mit unterschiedlichen Werten für FrIf_CtrlIdx, jedoch nicht reentrant für identische Werte von FrIf_CtrlIdx [SWS_FrIf_05011].
Dieser Text wurde automatisch generiert und basiert auf den AUTOSAR-Spezifikationen für Release R20-11.
Implementer's Guide folgt (Komplexität I1)
function FrIf_GetPOCStatus [SWS_FrIf_05014] 📄 PDF
Std_ReturnType FrIf_GetPOCStatus (uint8 FrIf_CtrlIdx, Fr_POCStatusType* FrIf_POCStatusPtr);
Wraps the Flex Ray Driver API function Fr_ Get POCStatus().
function FrIf_GetGlobalTime [SWS_FrIf_05015] 📄 PDF
Std_ReturnType FrIf_GetGlobalTime (uint8 FrIf_CtrlIdx, uint8* FrIf_CyclePtr, uint16* FrIf_MacroTickPtr);
Wraps the Flex Ray Driver API function Fr_ Get Global Time(). Impo rtant Note: Fr If_ Get Global Time may be called within an exclusive area.
function FrIf_AllowColdstart [SWS_FrIf_05017] 📄 PDF
Std_ReturnType FrIf_AllowColdstart (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Allow Coldstart().
Verwendung und Funktionsweise
Die Funktion FrIf_AllowColdstart dient als Wrapper für die FlexRay-Treiber-API Fr_AllowColdstart() gemäß [SWS_FrIf_05017]. Sie adressiert über den Eingangsparameter FrIf_CtrlIdx den anzusprechenden FlexRay Communication Controller (CC) [SWS_FrIf_05017]. Die Ausführung der Funktion ist als asynchron spezifiziert [SWS_FrIf_05017].
Rückgabewerte und Fehlerbehandlung
Der Rückgabewert vom Typ Std_ReturnType spiegelt das Ergebnis der Ausführung wider [SWS_FrIf_05017]:
E_OK: Der zugrundeliegende API-Dienst des FlexRay-Treibers wurde erfolgreich aufgerufen und meldeteE_OKzurück [SWS_FrIf_05017].E_NOT_OK: Der Aufruf des Treibers schlug fehl (RückgabewertE_NOT_OK) oder es wurde im Entwicklungsmodus (Development Mode) ein Fehler erkannt [SWS_FrIf_05017].
Interpretation: Das Erkennen von Fehlern im Development Mode dürfte vermutlich über das Default Error Tracer (DET)-Modul erfolgen, wenngleich im Spezifikationsauszug keine spezifischen Fehler-IDs oder Prüfungen dokumentiert sind. Frage Q-5dffd71d66731cc9 (offen)
Nebenläufigkeit und Einschränkungen
Bezüglich der Reentranz ist FrIf_AllowColdstart für identische Werte von FrIf_CtrlIdx nicht reentrant, darf jedoch für unterschiedliche Controller-Indizes parallel aufgerufen werden [SWS_FrIf_05017]. Aufrufer müssen daher sicherstellen, dass gleichzeitige Aufrufe für denselben Controller synchronisiert werden. Die Schnittstelle wird über den Header FrIf.h bereitgestellt [SWS_FrIf_05017].
Dieser Nutzungshinweis wurde von einer KI erstellt und basiert auf den Spezifikationsdaten aus AUTOSAR CP R20-11.
Implementer's Guide folgt (Komplexität I1)
function FrIf_GetMacroticksPerCycle [SWS_FrIf_05018] 📄 PDF
uint16 FrIf_GetMacroticksPerCycle (uint8 FrIf_CtrlIdx);
Retrieves the amount of Macroticks per Cycle
function FrIf_GetMacrotickDuration [SWS_FrIf_05019] 📄 PDF
uint16 FrIf_GetMacrotickDuration (uint8 FrIf_CtrlIdx);
Retrieves the Duration of a Macrotick in ns
function FrIf_Transmit [SWS_FrIf_05033] 📄 PDF
Std_ReturnType FrIf_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);
Requests transmission of a PDU.
Die synchrone Funktion FrIf_Transmit fordert die Übertragung einer PDU über das FlexRay-Interface an [SWS_FrIf_05033]. Sie nimmt die ID der zu übertragenden PDU (TxPduId) sowie einen Zeiger auf die Struktur PduInfoPtr entgegen, welche die PDU-Länge, Datenzeiger und Metadaten bereitstellt [SWS_FrIf_05033].
Hinsichtlich Nebenläufigkeit und Reentranz ist FrIf_Transmit reentrant für unterschiedliche PDU-IDs, jedoch nicht reentrant für dieselbe PDU-ID [SWS_FrIf_05033]. Der Aufruf liefert E_OK zurück, sobald die Übertragungsanforderung akzeptiert wurde, andernfalls E_NOT_OK [SWS_FrIf_05033].
Eine spezifische Fehlerprüfung erfolgt bei unmittelbaren PDUs (Immediate PDUs), sofern dynamische L-SDU-Längen per Konfigurationsparameter FrIfAllowDynamicLSduLength auf FALSE deaktiviert sind [SWS_FrIf_05757]:
- Die in
PduInfoPtrübergebene Länge wird gegen die statisch konfigurierte PDU-Länge geprüft [SWS_FrIf_05757]. - Stimmt die Längenangabe nicht überein, bricht
FrIf_Transmitdie Übertragung der Immediate PDU ab und gibtE_NOT_OKzurück [SWS_FrIf_05757]. - Sofern die Entwicklungserkennung (
FrIfDevErrorDetect == ON) aktiv ist, meldet die Funktion den EntwicklungsfehlerFRIF_E_INV_PDULENGTHüberDet_ReportErroran das DET-Modul [SWS_FrIf_05757].
Dieser Text wurde von einer KI auf Basis der Spezifikation R20-11 generiert.
Implementer's Guide folgt (Komplexität I2)
function FrIf_SetTransceiverMode [SWS_FrIf_05034] 📄 PDF
Std_ReturnType FrIf_SetTransceiverMode (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx, Limited by st atic configuration [Configuration Parameter FrIfCounterLimit, see FrIf06076 ]); ⚠️
Wraps the Flex Ray Transceiver Driver API function Fr
Die synchrone Schnittstelle FrIf_SetTransceiverMode mit der Service-ID 0x13 fungiert im FlexRay-Interface als Wrapper für die Treiberfunktion FrTrcv_SetTransceiverMode() des FlexRay-Transceiver-Treibers und ist über die Header-Datei FrIf.h verfügbar [SWS_FrIf_05034]. Sie ermöglicht es oberen Schichten, den Betriebsmodus eines Transceivers für einen bestimmten FlexRay-Controller und -Kanal einzustellen [SWS_FrIf_05034].
Beim Aufruf müssen drei Parameter übergeben werden: der Controller-Index FrIf_CtrlIdx zur Adressierung des FlexRay Communication Controllers, der Kanal-Index FrIf_ChnlIdx zur Bestimmung des FlexRay-Kanals im Gültigkeitsbereich des Controllers sowie der gewünschte Transceiver-Modus FrIf_TrcvMode vom Typ FrTrcv_TrcvModeType [SWS_FrIf_05034]. Es existieren weder Ein-/Ausgabe- noch Ausgabeparameter [SWS_FrIf_05034]. Für den Parameter FrIf_ChnlIdx gilt die verbindliche Vorgabe, dass der Aufzählungswert FR_CHANNEL_AB keinesfalls verwendet werden darf [SWS_FrIf_05034].
Die Funktion ist als reentrant spezifiziert und leitet den Moduswechsel synchron an den Transceiver-Treiber weiter [SWS_FrIf_05034]. Als Ergebnis liefert sie den Status Std_ReturnType zurück: Sie meldet E_OK, wenn der Aufruf des API-Dienstes im Transceiver-Treiber erfolgreich E_OK geliefert hat; schlägt dieser Treiberaufruf fehl und liefert E_NOT_OK, wird ebenfalls E_NOT_OK zurückgegeben [SWS_FrIf_05034].
Dieser Nutzungshinweis wurde automatisiert auf Basis der AUTOSAR-Spezifikation generiert.
Implementer's Guide folgt (Komplexität I2)
function FrIf_GetTransceiverMode [SWS_FrIf_05035] 📄 PDF
Std_ReturnType FrIf_GetTransceiverMode (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx, FrTrcv_TrcvModeType* FrIf_TrcvModePtr);
Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Get Transceiver Mode(). The enum value "FR_ CHANNEL_ AB" shall not be used.
function FrIf_GetTransceiverWUReason [SWS_FrIf_05036] 📄 PDF
Std_ReturnType FrIf_GetTransceiverWUReason (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx, FrTrcv_TrcvWUReasonType* FrIf_TrcvWUReasonPtr);
Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Get Transceiver WUReason(). The enum value "FR_ CHANNEL_ AB" shall not be used.
function FrIf_ClearTransceiverWakeup [SWS_FrIf_05039] 📄 PDF
Std_ReturnType FrIf_ClearTransceiverWakeup (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx);
Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Clear Transceiver Wakeup(). The enum value "FR_ CHANNEL_ AB" shall not be used. A vailable via Fr If.h
Die synchrone Funktion FrIf_ClearTransceiverWakeup (Service-ID 0x18) fungiert als Wrapper innerhalb des FlexRay-Interfaces und kapselt den Aufruf der API-Funktion FrTrcv_ClearTransceiverWakeup() des FlexRay-Transceiver-Treibers [SWS_FrIf_05039]. Die Schnittstelle ist über die Header-Datei FrIf.h verfügbar [SWS_FrIf_05039].
Beim Aufruf erwartet die Funktion genau zwei Eingabeparameter [SWS_FrIf_05039]:
FrIf_CtrlIdx: Index des zu adressierenden FlexRay-Communication-Controllers [SWS_FrIf_05039].FrIf_ChnlIdx: Index des anzusprechenden FlexRay-Kanals im Gültigkeitsbereich des ControllersFrIf_CtrlIdx[SWS_FrIf_05039].
Weitere Parameter (inout oder out) sind für die Funktion nicht definiert [SWS_FrIf_05039].
In Bezug auf Nebenläufigkeit und Randbedingungen ist die Funktion als reentrant klassifiziert [SWS_FrIf_05039]. Als wesentliche funktionale Einschränkung schreibt die Spezifikation vor, dass der Enumerationswert FR_CHANNEL_AB für den Parameter FrIf_ChnlIdx nicht verwendet werden darf [SWS_FrIf_05039].
Das Ergebnis der Operation wird synchron als Std_ReturnType zurückgeliefert und bildet unmittelbar das Resultat des Treiberservices ab [SWS_FrIf_05039]:
E_OK: Der API-Dienst des FlexRay-Transceiver-Treibers wurde erfolgreich ausgeführt und hatE_OKzurückgegeben [SWS_FrIf_05039].E_NOT_OK: Der Aufruf des Treiberservices schlug fehl und hatE_NOT_OKzurückgemeldet [SWS_FrIf_05039].
Dieser Nutzungshinweis wurde von einer KI auf Basis der Spezifikation AUTOSAR CP R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function FrIf_CancelAbsoluteTimer [SWS_FrIf_05023] 📄 PDF
Std_ReturnType FrIf_CancelAbsoluteTimer (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx);
Wraps the Flex Ray Driver API function Fr_ Cancel Absolute Timer() .
Die Funktion FrIf_CancelAbsoluteTimer dient dem synchronen Abbrechen eines konfigurierten absoluten Timers auf einem FlexRay-Communication-Controller (CC) [SWS_FrIf_05023]. Sie fungiert als Wrapper um die entsprechende Treiberfunktion Fr_CancelAbsoluteTimer() des FlexRay-Treibers und ist über den Header FrIf.h verfügbar [SWS_FrIf_05023].
Parameter und Rückgabewerte
Beim Aufruf werden zwei Eingangsparameter übergeben [SWS_FrIf_05023]:
FrIf_CtrlIdx: Index des anzusprechenden FlexRay-Controllers.FrIf_AbsTimerIdx: Index des abzubrechenden absoluten Timers.
Die Funktion liefert einen Status vom Typ Std_ReturnType zurück [SWS_FrIf_05023]:
E_OK: Der zugrunde liegende Aufruf der FlexRay-Treiber-API wurde erfolgreich mitE_OKbeendet [SWS_FrIf_05023].E_NOT_OK: Der Aufruf der Treiber-API schlug fehl (RückgabeE_NOT_OK) oder es wurde im Entwicklungsmodus (Development Mode) ein Fehler erkannt [SWS_FrIf_05023].
Nebenläufigkeit und Einschränkungen
Die Ausführung erfolgt synchron mit der Service-ID 0x1b [SWS_FrIf_05023]. Hinsichtlich der Reentranz ist der Dienst für unterschiedliche FlexRay CCs reentrant, darf jedoch für denselben FlexRay CC nicht nebenläufig aufgerufen werden [SWS_FrIf_05023].
Dieser Text wurde von einer KI auf Basis der Spezifikation AUTOSAR Classic R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function FrIf_GetAbsoluteTimerIRQStatus [SWS_FrIf_05027] 📄 PDF
Std_ReturnType FrIf_GetAbsoluteTimerIRQStatus (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx, boolean* FrIf_IRQStatusPtr);
Wraps the Flex Ray Driver API function Fr_ Get Absolute Timer IRQStatus()
function FrIf_DisableAbsoluteTimerIRQ [SWS_FrIf_05031] 📄 PDF
Std_ReturnType FrIf_DisableAbsoluteTimerIRQ (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx);
Wraps the Flex Ray Driver API function Fr_ Disable Absolute Timer IRQ().
Die Funktion FrIf_DisableAbsoluteTimerIRQ ist Teil des FlexRay-Interface-Moduls und wird über die Header-Datei FrIf.h bereitgestellt [SWS_FrIf_05031]. Sie dient als synchroner Wrapper für die Funktion Fr_DisableAbsoluteTimerIRQ() der FlexRay-Treiber-API und leitet die Anforderung zur Deaktivierung der Interrupt-Erzeugung des adressierten absoluten Timers an die Treiberebene weiter [SWS_FrIf_05031].
Aufrufkontext und Parameter
Der Aufruf erfolgt synchron unter Verwendung der Service-ID 0x23 [SWS_FrIf_05031]. Die Schnittstelle verfügt über keine Ein-/Ausgabe- oder reinen Ausgabeparameter, verlangt jedoch zwei obligatorische Eingangsparameter [SWS_FrIf_05031]:
FrIf_CtrlIdx: Index des anzusprechenden FlexRay-Communication-Controllers (CC) [SWS_FrIf_05031].FrIf_AbsTimerIdx: Index des zu konfigurierenden absoluten Timers [SWS_FrIf_05031].
Rückgabewerte und Fehlerbehandlung
Die Funktion gibt den Status über den Rückgabetyp Std_ReturnType an den Aufrufer zurück [SWS_FrIf_05031]:
E_OK: Signalisiert, dass der Aufruf des API-Dienstes des FlexRay-Treibers erfolgreich war undE_OKzurückgeliefert hat [SWS_FrIf_05031].E_NOT_OK: Zeigt an, dass der API-Dienst des FlexRay-TreibersE_NOT_OKzurückgegeben hat oder im Entwicklungsmodus (Development Mode) ein Fehler festgestellt wurde [SWS_FrIf_05031].
Nebenläufigkeit und Reentranz
Gemäß den Reentranz-Vorgaben ist FrIf_DisableAbsoluteTimerIRQ nicht reentrant für denselben FlexRay-Communication-Controller, jedoch reentrant für unterschiedliche FlexRay-CCs [SWS_FrIf_05031]. Aufrufe für dieselbe Controller-Instanz dürfen daher nicht nebenläufig aus verschiedenen Kontexten ohne Synchronisation erfolgen.
Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation AUTOSAR Classic R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function FrIf_GetCycleLength [SWS_FrIf_05239] 📄 PDF
uint32 FrIf_GetCycleLength (uint8 FrIf_CtrlIdx);
This API returns the configured time of the configuration parameter "Gd Cycle" in nanoseconds for the Flex Ray controller with index Fr If_ Ctrl Idx.
function FrIf_AllSlots [SWS_FrIf_05020] 📄 PDF
Std_ReturnType FrIf_AllSlots (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ All Slots
Die synchrone Schnittstelle FrIf_AllSlots dient innerhalb des FlexRay-Interfaces als Wrapper für den Aufruf der zugrundeliegenden Treiberfunktion Fr_AllSlots des FlexRay-Treibers [SWS_FrIf_05020]. Die Funktion wird über die Header-Datei FrIf.h bereitgestellt und besitzt die Service-ID 0x33 [SWS_FrIf_05020]. Als einziger Übergabeparameter wird FrIf_CtrlIdx erwartet, welcher den logischen Index des anzusprechenden FlexRay-Communication-Controllers definiert [SWS_FrIf_05020]. Ein- und Ausgabeparameter (inout/out) sind für diesen Dienst nicht vorgesehen [SWS_FrIf_05020].
Als Rückgabewert liefert die Funktion den Status Std_ReturnType mit folgenden Bedeutungen [SWS_FrIf_05020]:
E_OK: Der Aufruf der Treiber-APIFr_AllSlotswar erfolgreich und lieferteE_OKzurück [SWS_FrIf_05020].E_NOT_OK: Der Aufruf des FlexRay-Treibers ist fehlgeschlagen bzw. hatE_NOT_OKzurückgegeben, oder es wurde während der Ausführung im Entwicklungsmodus ein Fehler detektiert [SWS_FrIf_05020].
Bezüglich des Laufzeitverhaltens und der Nebenläufigkeit ist FrIf_AllSlots als nicht reentrant (non reentrant) spezifiziert [SWS_FrIf_05020]. Die aufrufende Instanz muss daher gewährleisten, dass gleichzeitige oder überlappende Aufrufe für den betroffenen Controller ausgeschlossen sind. Interpretation: Vermutlich muss der Aufruf aus einem geschützten Task-Kontext heraus erfolgen, da die Schnittstelle bei parallelem Zugriff kein eigenes Reentranz-Management bereitstellt. Frage Q-e4ce542c60b470c8 (offen)
Dieser Text wurde von einer KI erstellt; maßgeblich ist der AUTOSAR-Standard.
Implementer's Guide folgt (Komplexität I1)
function FrIf_GetChannelStatus [SWS_FrIf_05030] 📄 PDF
Std_ReturnType FrIf_GetChannelStatus (uint8 FrIf_CtrlIdx, uint16* FrIf_ChannelAStatusPtr, uint16* FrIf_ChannelBStatusPtr);
Wraps the Flex Ray Driver API function Fr_ Get Channel Status() and gets the channel status information.
function FrIf_GetClockCorrection [SWS_FrIf_05071] 📄 PDF
Std_ReturnType FrIf_GetClockCorrection (uint8 FrIf_CtrlIdx, sint16* FrIf_RateCorrectionPtr, sint32* FrIf_OffsetCorrectionPtr);
Wraps the Flex Ray Driver API function Fr_ Get Clock Correction () and gets the current clock correction values.
function FrIf_GetSyncFrameList [SWS_FrIf_05072] 📄 PDF
Std_ReturnType FrIf_GetSyncFrameList (uint8 FrIf_CtrlIdx, uint8 FrIf_ListSize, uint16* FrIf_ChannelAEvenListPtr, uint16* FrIf_ChannelBEvenListPtr, uint16* FrIf_ChannelAOddListPtr, uint16* FrIf_ChannelBOddListPtr);
Service FrIf_GetSyncFrameList.
function FrIf_GetNumStartupFrames [SWS_FrIf_05073] 📄 PDF
Std_ReturnType FrIf_GetNumOfStartupFrames (uint8 FrIf_CtrlIdx, uint8* FrIf_NumOfStartupFramesPtr);
Wraps the Flex Ray Driver API function Fr_ Get Num Of Startup Frames and gets a list of the current number of startup frames seen on the cluster. See variable v Startup Pairs of [12] for details.
function FrIf_GetWakeupRxStatus [SWS_FrIf_05102] 📄 PDF
Std_ReturnType FrIf_GetWakeupRxStatus (uint8 FrIf_CtrlIdx, uint8* FrIf_WakeupRxStatusPtr);
Wraps the Flex Ray Driver API function Fr_ Get Wakeup Rx Status and gets the wakeup received information from the Flex Ray controller.
function FrIf_CancelTransmit [SWS_FrIf_05070] 📄 PDF
Std_ReturnType FrIf_CancelTransmit (PduIdType TxPduId);
Requests cancellation of an ongoing transmission o f a PDU in a lower layer communication module.
Verwendung
Die synchrone Funktion FrIf_CancelTransmit fordert den Abbruch einer laufenden PDU-Übertragung in einem unterlagerten Kommunikationsmodul an [SWS_FrIf_05070]. Als Eingabeparameter wird TxPduId übergeben, welcher die abzubrechende PDU identifiziert. Die Ausführung erfolgt synchron und liefert einen Rückgabewert vom Typ Std_ReturnType [SWS_FrIf_05070]:
E_OK: Der Abbruch der Übertragung wurde durch das Zielmodul erfolgreich ausgeführt.E_NOT_OK: Der Abbruch wurde vom Zielmodul abgelehnt.
Nebenläufigkeit und Einschränkungen
Hinsichtlich der Nebenläufigkeit ist FrIf_CancelTransmit reentrant für unterschiedliche PDU-IDs, jedoch nicht reentrant für dieselbe TxPduId [SWS_FrIf_05070]. Bei Aufrufen aus parallelen Kontexten für dieselbe PDU-ID dürfte daher aufruferseitig eine externe Synchronisation erforderlich sein, um Race Conditions zu vermeiden. Frage Q-38e799ac1564f60f (offen)
Fehlerbehandlung und Integration
Spezifische DET- oder DEM-Fehlercodes sind in der Schnittstelle nicht definiert; das Fehlschlagen eines Abbruchs wird unmittelbar über den Rückgabewert E_NOT_OK signalisiert [SWS_FrIf_05070]. Der Dienst besitzt die Service-ID 0x4a und wird über die Header-Datei FrIf.h bereitgestellt [SWS_FrIf_05070].
Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation erstellt.
Implementer's Guide folgt (Komplexität I2)
function FrIf_DisableLPdu [SWS_FrIf_05710] 📄 PDF
Std_ReturnType FrIf_DisableLPdu (uint8 FrIf_CtrlIdx, uint16 FrIf_LPduIdx);
Wraps the Flex Ray Driver Function Fr_ Disable LPdu. It disables the hardware resource of an LPdu for transmission/ recept ion.
Die Funktion FrIf_DisableLPdu dient als Wrapper für die Treiberfunktion Fr_DisableLPdu des FlexRay-Treibers und deaktiviert die zugrunde liegende Hardware-Ressource einer L-PDU für das Senden bzw. den Empfang [SWS_FrIf_05710].
Aufruf und Parameter
Der Aufruf von FrIf_DisableLPdu erfolgt synchron über die Schnittstelle FrIf.h mit der Service-ID 0x28 [SWS_FrIf_05710]. Die Funktion erwartet zwei Eingangsparameter:
FrIf_CtrlIdx: Index des FlexRay-Communication-Controllers im Kontext des FlexRay-Interface [SWS_FrIf_05710].FrIf_LPduIdx: Eindeutiger Index zur Identifikation des betroffenen FlexRay-Frames [SWS_FrIf_05710].
Rückgabewerte und Fehlerbehandlung
Die Funktion liefert als Ergebnis einen Status vom Typ Std_ReturnType zurück [SWS_FrIf_05710]:
E_OK: Der API-Aufruf wurde erfolgreich abgeschlossen [SWS_FrIf_05710].E_NOT_OK: Der API-Aufruf wurde aufgrund von Fehlern abgebrochen [SWS_FrIf_05710].
Nebenläufigkeit und Einschränkungen
Hinsichtlich des Nebenläufigkeitsverhaltens ist FrIf_DisableLPdu als nicht reentrant für dasselbe Gerät spezifiziert (Non Reentrant for the same device) [SWS_FrIf_05710]. Parallele Aufrufe für denselben Controller bzw. dasselbe Gerät müssen daher auf Aufruferseite vermieden oder synchronisiert werden.
Dieser Text wurde automatisch erstellt und basiert ausschließlich auf den Angaben der Spezifikation.
Implementer's Guide folgt (Komplexität I1)
function FrIf_GetTransceiverError [SWS_FrIf_05032] 📄 PDF
Std_ReturnType FrIf_GetTransceiverError (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx, uint8 FrIf_BranchIdx, uint32* FrIf_BusErrorState);
Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Get Transceiver Error. The enum value "FR_ CHANNEL_ AB" shall not be used.
function FrIf_EnableTransceiverBranch [SWS_FrIf_05085] 📄 PDF
Std_ReturnType FrIf_EnableTransceiverBranch (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx, uint8 FrIf_BranchIdx);
Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Enable Transceiver Branch. The enum value "FR_ CHANNEL_ AB" shall not be used.
Die Funktion FrIf_EnableTransceiverBranch kapselt als synchroner und reentranter Wrapper den API-Aufruf FrTrcv_EnableTransceiverBranch des unterlagerten FlexRay-Transceiver-Treibers [SWS_FrIf_05085]. Über diese Schnittstelle wird ein bestimmter Zweig eines Transceivers, beispielsweise im Kontext eines aktiven Sterns, gezielt aktiviert [SWS_FrIf_05085]. Die Funktionsdeklaration und zugehörige Typen werden über die Header-Datei FrIf.h bereitgestellt [SWS_FrIf_05085].
Parameter und Aufrufbedingungen
Beim Aufruf müssen drei Eingabeparameter übergeben werden [SWS_FrIf_05085]:
FrIf_CtrlIdx: Adressiert den Index des jeweiligen FlexRay-Communication-Controllers [SWS_FrIf_05085].FrIf_ChnlIdx: Spezifiziert den FlexRay-Kanal innerhalb des Gültigkeitsbereichs des ControllersFrIf_CtrlIdx[SWS_FrIf_05085]. Dabei gilt die zwingende Einschränkung, dass der Enum-WertFR_CHANNEL_ABnicht verwendet werden darf [SWS_FrIf_05085].FrIf_BranchIdx: Bestimmt über einen nullbasierten Index den konkreten Zweig des Transceivers, auf welchen die Aktivierung angewendet wird [SWS_FrIf_05085].
Rückgabewerte
Die Funktion liefert einen Statuswert vom Typ Std_ReturnType zurück, welcher direkt das Ergebnis des weitergeleiteten Treiberaufrufs abbildet [SWS_FrIf_05085]:
E_OK: Der Aufruf des TreiberservicesFrTrcv_EnableTransceiverBranchwar erfolgreich und hatE_OKzurückgemeldet [SWS_FrIf_05085].E_NOT_OK: Der Aufruf des Treiberservices hatE_NOT_OKgemeldet [SWS_FrIf_05085].
Dieser Text wurde von einer KI auf Basis der Spezifikation AUTOSAR CP R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function FrIf_DisableTransceiverBranch [SWS_FrIf_05028] 📄 PDF
Std_ReturnType FrIf_DisableTransceiverBranch (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx, uint8 FrIf_BranchIdx);
Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Disable Transceiver Branch. The enum value "FR_ CHANNEL_ AB" shall not be used.
Die synchrone und reentrante Funktion FrIf_DisableTransceiverBranch kapselt als Wrapper-Funktion den Dienst FrTrcv_DisableTransceiverBranch des FlexRay-Transceiver-Treibers [SWS_FrIf_05028]. Sie wird über die Header-Datei FrIf.h bereitgestellt, besitzt die Service-ID 0x37 und dient dazu, einen bestimmten Zweig eines aktiven Stern-Transceivers gezielt zu deaktivieren [SWS_FrIf_05028].
Beim Aufruf sind drei Eingangsparameter zu übergeben:
FrIf_CtrlIdx: Index des zu adressierenden FlexRay-Controllers [SWS_FrIf_05028].FrIf_ChnlIdx: FlexRay-Kanal im Gültigkeitsbereich des Controllers. Hierbei gilt die verbindliche Vorgabe, dass der Enum-WertFR_CHANNEL_ABnicht verwendet werden darf [SWS_FrIf_05028].FrIf_BranchIdx: Nullbasierter Index, der den jeweiligen Zweig des Transceivers identifiziert, auf den die Operation angewendet werden soll [SWS_FrIf_05028].
Als Rückgabewert liefert die Schnittstelle einen Status vom Typ Std_ReturnType zurück. Sie gibt E_OK zurück, wenn der Aufruf des Transceiver-Treibers erfolgreich war, und E_NOT_OK, falls der Treiberdienst E_NOT_OK gemeldet hat [SWS_FrIf_05028]. Spezifische DET- oder DEM-Fehlermeldungen sind im Spezifikationsumfang nicht dokumentiert; ein Scheitern resultiert vermutlich direkt aus dem Verhalten des unterlagerten Treibers. Frage Q-52d5e5fedd147532 (offen)
Dieser Text wurde von einer KI auf Basis der Spezifikation AUTOSAR R20-11 generiert.
Implementer's Guide folgt (Komplexität I2)
function FrIf_ReconfigLPdu [SWS_FrIf_05048] 📄 PDF
Std_ReturnType FrIf_ReconfigLPdu (uint8 FrIf_CtrlIdx, uint16 FrIf_LPduIdx, uint16 FrIf_FrameId, Fr_ChannelType FrIf_ChnlIdx, uint8 FrIf_CycleRepetition, uint8 FrIf_CycleOffset, uint8 FrIf_PayloadLength, uint16 FrIf_Header CRC); ⚠️
Service FrIf_ReconfigLPdu.
Die synchrone Funktion FrIf_ReconfigLPdu dient der Neukonfiguration einer L-PDU im FlexRay-Interface (FrIf) und reicht den Aufruf direkt an die Treiberschnittstelle Fr_ReconfigLPdu des FlexRay-Treibers weiter [SWS_FrIf_05048]. Die Schnittstelle wird über den Header FrIf.h zur Verfügung gestellt [SWS_FrIf_05048].
Parameter und Konfigurationseinschränkungen
FrIf_CtrlIdx: Adressiert den Index des FlexRay-Kommunikations-Controllers innerhalb des FlexRay-Treibers [SWS_FrIf_05048].FrIf_LPduIdx: Bestimmt den eindeutigen Index zur Identifikation des zu konfigurierenden FlexRay-Frames [SWS_FrIf_05048].FrIf_FrameId,FrIf_CycleRepetition,FrIf_CycleOffset: Definieren die neue FlexRay-Frame-ID sowie Wiederholung und Offset des Zyklusfilter-Mechanismus der L-PDU [SWS_FrIf_05048].FrIf_ChnlIdx: Bestimmt den FlexRay-Kanal vom TypFr_ChannelType[SWS_FrIf_05048]. Hierbei ist strikt vorgegeben, dass der Enum-WertFR_CHANNEL_ABnicht verwendet werden darf [SWS_FrIf_05048].FrIf_PayloadLengthundFrIf_HeaderCRC: Legen die Nutzdatenlänge in Byte sowie die zugehörige Header-CRC fest, auf welche die L-PDU eingestellt werden soll [SWS_FrIf_05048].
Rückgabewerte und Ausführungskontext
Der Rückgabewert vom Typ Std_ReturnType gibt das Ergebnis der Neukonfiguration an: E_OK signalisiert die erfolgreiche Durchführung des API-Aufrufs, während E_NOT_OK einen Fehlerabbruch anzeigt [SWS_FrIf_05048].
Die Funktion ist synchron und als nicht reentrant (Non Reentrant) spezifiziert [SWS_FrIf_05048]. Sie darf folglich nicht nebenläufig aufgerufen werden.
Dieser Nutzungshinweis basiert auf der Spezifikation AUTOSAR Classic R20-11.
Implementer's Guide folgt (Komplexität I1)
function FrIf_GetNmVector [SWS_FrIf_05016] 📄 PDF
Std_ReturnType FrIf_GetNmVector (uint8 FrIf_CtrlIdx, uint8* FrIf_NmVectorPtr);
Derives the Flex Ray NM Vector. Av ailable via Fr If.h
function FrIf_GetVersionInfo [SWS_FrIf_05002] 📄 PDF
void FrIf_GetVersionInfo (Std_VersionInfoType* FrIf_VersionInfoPtr);
Returns the version information of this module.
function FrIf_ReadCCConfig [SWS_FrIf_05313] 📄 PDF
Std_ReturnType FrIf_ReadCCConfig (uint8 FrIf_CtrlIdx, uint8 FrIf_Config ParamIdx, uint32* FrIf_Config ParamValuePtr); ⚠️
Wraps the Flex Ray Driver API function Fr_ Read CCConfig().
Die Funktion FrIf_ReadCCConfig stellt einen synchronen Dienst des FlexRay-Interfaces mit der Service-ID 0x3b dar und ist über den Header FrIf.h deklariert [SWS_FrIf_05313]. Ihre primäre Aufgabe besteht darin, als Wrapper die Treiberfunktion Fr_ReadCCConfig() des zugrundeliegenden FlexRay-Treibers aufzurufen, um Konfigurationsparameter eines Controllers auszulesen [SWS_FrIf_05313].
Die Schnittstelle erwartet beim Aufruf drei Parameter [SWS_FrIf_05313]:
FrIf_CtrlIdx(Eingang): Der numerische Index des anzusprechenden FlexRay-Kommunikations-Controllers (CC).FrIf_ConfigParamIdx(Eingang): Der Index des spezifischen Konfigurationsparameters, dessen Wert abgefragt werden soll.FrIf_ConfigParamValuePtr(Ausgang): Ein Zeiger auf die Speicherstelle, an welcher der gelesene 32-Bit-Konfigurationswert hinterlegt wird.
Der Rückgabewert vom Typ Std_ReturnType signalisiert das Ergebnis der Abfrage [SWS_FrIf_05313]:
E_OK: Der Aufruf der Treiber-APIFr_ReadCCConfig()wurde erfolgreich ausgeführt und gabE_OKzurück.E_NOT_OK: Der FlexRay-Treiber meldeteE_NOT_OKoder es wurde während der Ausführung im Entwicklungsmodus (Development Mode) ein Fehler erkannt.
In Bezug auf Nebenläufigkeit und Ausführungsumgebung ist FrIf_ReadCCConfig nicht reentrant für denselben FlexRay-Controller, jedoch reentrant für unterschiedliche Controller [SWS_FrIf_05313]. Bei Zugriffen auf denselben Controller muss der Aufrufer daher eine geeignete Synchronisation gewährleisten. Ein im Entwicklungsmodus detektierter Fehler dürfte vermutlich an das Default Error Tracer (DET) weitergeleitet werden. Frage Q-bfe56460515de4de (offen)
Dieser Nutzungshinweis wurde von einer KI generiert und basiert ausschließlich auf den Spezifikationsdaten von AUTOSAR Classic Release R20-11.
Implementer's Guide folgt (Komplexität I1)
function FrIf_EnableBusMirroring [SWS_FrIf_05726] 📄 PDF
Std_ReturnType FrIf_EnableBusMirroring (uint8 FrIf_ClstIdx, boolean FrIf_MirroringActive);
Enables or disables mirroring for all Flex Ray controllers connected to the addressed Flex Ray cluster.
Verwendung und Semantik
Die synchrone Funktion FrIf_EnableBusMirroring schaltet das Bus-Mirroring für sämtliche FlexRay-Controller um, die an den übergebenen FlexRay-Cluster angebunden sind [SWS_FrIf_05726]. Über den Parameter FrIf_ClstIdx wird der jeweilige Cluster adressiert. Der boolesche Parameter FrIf_MirroringActive bestimmt den Modus: Bei Übergabe von TRUE wird für jeden auf den Controllern empfangenen oder gesendeten Frame die Schnittstelle Mirror_ReportFlexRayFrame aufgerufen; bei FALSE wird das Weiterleiten der Frames an das Mirror-Modul deaktiviert [SWS_FrIf_05726].
Rückgabewerte und Fehlerbehandlung
Der Funktionsaufruf liefert einen Status vom Typ Std_ReturnType zurück [SWS_FrIf_05726]:
E_OK: Der Spiegelungsmodus für den angegebenen Cluster wurde erfolgreich aktualisiert [SWS_FrIf_05726].E_NOT_OK: Das Umschalten wurde abgewiesen, wenn die Spiegelungsfunktion global deaktiviert ist (KonfigurationsparameterFrIfBusMirroringSupport) oder ein ungültiger Index vorliegt [SWS_FrIf_05726]. Interpretation: Die SpezifikationsangabeFrIf_CtrlIdxbeiE_NOT_OKdürfte sich trotz der abweichenden Bezeichnung auf die Überprüfung des Cluster-IndexFrIf_ClstIdxbeziehungsweise der zugeordneten Controller beziehen. Frage Q-9daba2ff2b1a3ff1 (offen)
Nebenläufigkeit und Integration
Die Funktion ist als reentrant deklariert und besitzt die Service-ID 0x4b; sie wird über die Header-Datei FrIf.h bereitgestellt [SWS_FrIf_05726]. Aufrufer müssen beachten, dass die Ausführung synchron erfolgt. Zusätzliche Fehlerkanäle über DET oder DEM sind für diesen Service nicht aufgeführt.
Dieser Text wurde von einer KI erstellt; maßgeblich ist die AUTOSAR-Spezifikation.
Implementer's Guide folgt (Komplexität I2)
function FrIf_CheckWakeupByTransceiver [SWS_FrIf_05041] 📄 PDF
void FrIf_CheckWakeupByTransceiver (uint8 FrIf_CtrlIdx, Fr_ChannelType FrIf_ChnlIdx);
Wraps the Flex Ray Transceiver Driver API function Fr Trcv_ Check Wakeup By Transceiver(). The enum value "FR_ CHANNEL_ AB" shall not be used.
Verwendung und Aufrufkontext
Die Funktion FrIf_CheckWakeupByTransceiver (Service-ID 0x39) fungiert im FlexRay-Interface als synchroner Wrapper für die Funktion FrTrcv_CheckWakeupByTransceiver() des FlexRay-Transceiver-Treibers [SWS_FrIf_05041]. Sie wird über den Header FrIf.h bereitgestellt und besitzt keinen Rückgabewert [SWS_FrIf_05041].
Für die Adressierung der jeweiligen Hardwareinstanz verlangt die Schnittstelle zwei Pflichtparameter [SWS_FrIf_05041]:
FrIf_CtrlIdx(Eingangsparameter,uint8): Index des zu adressierenden FlexRay-Communication-Controllers [SWS_FrIf_05041].FrIf_ChnlIdx(Eingangsparameter,Fr_ChannelType): Index des anzusprechenden FlexRay-Kanals innerhalb des Gültigkeitsbereichs des angegebenen ControllersFrIf_CtrlIdx[SWS_FrIf_05041].
Nebenläufigkeit und Einschränkungen
Die Spezifikation kennzeichnet die Schnittstelle als reentrant, sodass synchrone Aufrufe nebenläufig abgesetzt werden können [SWS_FrIf_05041].
Für den Kanalparameter FrIf_ChnlIdx existiert eine strikte Anwendungsbeschränkung: Der Aufzählungswert FR_CHANNEL_AB darf nicht übergeben werden [SWS_FrIf_05041]. Interpretation: Dies dürfte bedeuten, dass der zugrunde liegende Transceiver-Treiber keine kombinierte Wakeup-Prüfung beider Kanäle in einem Aufruf unterstützt und Systeme mit zwei FlexRay-Kanälen stattdessen sequenziell oder kanalweise getrennt geprüft werden müssen. Frage Q-a30cf39f0d3ca295 (offen)
Dieser Text wurde von einer KI erstellt und basiert auf AUTOSAR R20-11.
Implementer's Guide folgt (Komplexität I1)
function <User_RxIndication> [SWS_FrIf_05045] 📄 PDF
void <User_RxIndication> (PduIdType RxPduId, const PduInfoType* PduInfoPtr);
Indication of a received PDU from a lower layer communication interface module.
Die Callback-Funktion <User_RxIndication> dient der Signalisierung einer empfangenen PDU aus der darunterliegenden Kommunikationsschnittstellenschicht [SWS_FrIf_05045]. Interpretation: Der Bezeichner dürfte einen konfigurierbaren Callback einer oberen Schicht darstellen, der bei Eintreffen von FlexRay-Daten benachrichtigt wird. Frage Q-a9037bc7502dd9ea (offen)
Verwendung und Parameter
Die Ausführung erfolgt synchron ohne Rückgabewert (void) [SWS_FrIf_05045]. Beim Aufruf werden zwei Eingabeparameter übergeben [SWS_FrIf_05045]:
RxPduId(PduIdType): Eindeutige Kennung der empfangenen PDU [SWS_FrIf_05045].PduInfoPtr(const PduInfoType*): Zeiger auf eine Struktur mit der Länge der empfangenen PDU (SduLength), einem Zeiger auf den Puffer mit den Nutzdaten (SduDataPtr) sowie zugehörigen Metadaten [SWS_FrIf_05045].
Nebenläufigkeit und Konfiguration
Hinsichtlich der Reentranz ist die Funktion für unterschiedliche PDU-IDs reentrant, darf jedoch für dieselbe PDU-ID nicht reentrant aufgerufen werden [SWS_FrIf_05045]. Die Schnittstelle ist im Modul konfigurierbar verfügbar („Available via configurable“) [SWS_FrIf_05045]. Spezifische Fehlercodes, Rückgabewerte oder Benachrichtigungen an DET und DEM sind in den Quellen für diese Schnittstelle nicht definiert [SWS_FrIf_05045].
Dieser Text wurde automatisch erstellt. Alle Angaben basieren ausschließlich auf den Spezifikationsdaten des Moduls FrIf.
function <User_TxConfirmation> [SWS_FrIf_05046] 📄 PDF
void <User_TxConfirmation> (PduIdType TxPduId, Std_ReturnType result);
The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.
Die konfigurierbare Callback-Funktion <User_TxConfirmation> wird durch das unterlagerte Kommunikationsschnittstellenmodul aufgerufen, um den Abschluss eines Sendevorgangs für eine PDU zu bestätigen [SWS_FrIf_05046]. Sie meldet der übergeordneten Schicht synchron, ob die Übertragung der entsprechenden PDU erfolgreich verlaufen ist oder fehlgeschlagen ist [SWS_FrIf_05046].
Die Schnittstelle besitzt keinen Rückgabewert (void) und erwartet zwei Eingangsparameter [SWS_FrIf_05046]:
TxPduId(TypPduIdType): Bezeichnet die eindeutige ID der übertragenen PDU [SWS_FrIf_05046].result(TypStd_ReturnType): Gibt das Ergebnis der Übertragung an, wobeiE_OKdie erfolgreiche Übertragung bestätigt undE_NOT_OKdas Fehlschlagen der PDU-Übertragung meldet [SWS_FrIf_05046].
Die Funktion arbeitet synchron [SWS_FrIf_05046]. Hinsichtlich der Nebenläufigkeit ist sie reentrant für unterschiedliche PDU-IDs, jedoch nicht reentrant für dieselbe TxPduId [SWS_FrIf_05046]. Parallele Bestätigungsaufrufe für identische PDU-IDs müssen daher ausgeschlossen werden.
Spezifische Fehlercodes neben E_NOT_OK oder gesonderte Meldungen an DET oder DEM sind für diesen Aufruf nicht spezifiziert [SWS_FrIf_05046]. Interpretation: Da die Schnittstelle als konfigurierbar ausgewiesen ist, dürfte der Bezeichner <User_TxConfirmation> als Platzhalter für den in der übergeordneten Schicht tatsächlich konfigurierten Funktionsnamen dienen [SWS_FrIf_05046]. Frage Q-f2a08258df49b3ec (offen)
Dieser Text wurde von einer KI erstellt und dient als Hilfestellung zur AUTOSAR-Spezifikation.
function <User_TriggerTransmit> [SWS_FrIf_05047] 📄 PDF
Std_ReturnType <User_TriggerTransmit> (PduIdType TxPduId, PduInfoType* PduInfoPtr);
Within this API, the upper lay er module (called module) shall check whether the AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_FlexRayInterface available data fits into the buffer size reported by Pdu Info Ptr - >Sdu Length. If it fits, it shall copy its data into the buffer provided by Pdu Info Ptr - >Sdu Data Ptr and update the length of the actual c opied data in Pdu Info Ptr - >Sdu Length. If not, it returns E_ NOT_ OK without changing Pdu Info Ptr.
Verwendung
Die synchrone Callback-Funktion <User_TriggerTransmit> wird aufgerufen, um SDU-Daten einer oberen Schicht für die Übertragung anzufordern [SWS_FrIf_05047]. Als Parameter werden die Kennung TxPduId der zu sendenden SDU sowie der Zeiger PduInfoPtr vom Typ PduInfoType* übergeben [SWS_FrIf_05047]. Der Aufrufer stellt über PduInfoPtr->SduDataPtr einen Zielpuffer bereit und gibt in PduInfoPtr->SduLength die verfügbare Puffergröße an [SWS_FrIf_05047].
Das aufgerufene Modul der oberen Schicht prüft, ob die bereitstehenden Daten in die angegebene Puffergröße passen [SWS_FrIf_05047]:
- Passen die Daten, kopiert das Modul diese in
PduInfoPtr->SduDataPtr, aktualisiertPduInfoPtr->SduLengthauf die Anzahl der tatsächlich kopierten Bytes und gibtE_OKzurück [SWS_FrIf_05047]. - Passen die Daten nicht, gibt das Modul
E_NOT_OKzurück, ohnePduInfoPtrzu verändern [SWS_FrIf_05047].
Fehlerbehandlung und Nebenläufigkeit
Im Fehlerfall (Rückgabewert E_NOT_OK) wurden keine SDU-Daten kopiert. In diesem Fall darf PduInfoPtr nicht weiter verwendet werden, da er einen NULL-Zeiger enthalten oder auf ungültige Daten verweisen kann [SWS_FrIf_05047].
Die Schnittstelle ist reentrant für unterschiedliche PDU-IDs, jedoch nicht reentrant für dieselbe PDU-ID [SWS_FrIf_05047]. Die Verfügbarkeit der Funktion ist konfigurierbar [SWS_FrIf_05047].
Dieser Text wurde von einer KI erstellt. Alle Angaben basieren ausschließlich auf den Spezifikationen des AUTOSAR-Releases R20-11.
function <Free_Op_A> [SWS_FrIf_05316] 📄 PDF
void <Free_Op_A> (uint8 FrIf_CtrlIdx, uint16 FrIf_LPduIdx);
User defined communication operation in order to support hardware specific or additional communication controller features to increase performance.
Die Funktion <Free_Op_A> ist als anwenderdefinierte Kommunikationsoperation im FlexRay-Interface konzipiert, um hardwarespezifische oder zusätzliche Leistungsmerkmale des Communication Controllers zur Steigerung der Gesamtperformance zu unterstützen [SWS_FrIf_05316]. Die Deklaration dieser Schnittstelle wird über den Header FrIf_Externals.h bereitgestellt [SWS_FrIf_05316].
Für den Aufruf sind zwei funktionale Eingangsparameter vorgeschrieben [SWS_FrIf_05316]:
FrIf_CtrlIdx(Typuint8): Kennzeichnet als Index den konkret anzusprechenden FlexRay Communication Controller [SWS_FrIf_05316].FrIf_LPduIdx(Typuint16): Dient als eindeutiger Index zur Identifikation des jeweiligen FlexRay-Frames [SWS_FrIf_05316].
Die Operation wird synchron ausgeführt und besitzt keinen Rückgabewert (void); Ein- und Ausgabeparameter sind ebenfalls nicht vorgesehen [SWS_FrIf_05316]. Im Hinblick auf Nebenläufigkeit und Aufrufkontext ist die Funktion reentrant für unterschiedliche Werte von FrIf_LPduIdx, jedoch explizit nicht reentrant bei Verwendung desselben Index FrIf_LPduIdx [SWS_FrIf_05316].
Spezifische Fehlercodes sowie Mechanismen zur Fehlerüberwachung über das Default Error Tracer (DET) oder das Diagnostic Event Manager (DEM) Modul sind in der Spezifikation nicht ausgewiesen [SWS_FrIf_05316]. Aufrufende Komponenten müssen daher vor der Ausführung sicherstellen, dass keine konkurrierenden Zugriffe auf denselben Frame-Index erfolgen [SWS_FrIf_05316].
Dieser Nutzungshinweis wurde automatisiert auf Basis der AUTOSAR-Spezifikation erstellt.
function <Free_Op_B> [SWS_FrIf_05317] 📄 PDF
void <Free_Op_B> (uint8 FrIf_CtrlIdx, uint16 FrIf_LPduIdx);
User defined communication operation in order to support hardware specific or additional communication controller features to increase performance.
Die benutzerdefinierte Funktion <Free_Op_B> dient der Durchführung anwenderspezifischer Kommunikationsoperationen im FlexRay-Interface [SWS_FrIf_05317]. Ihr Zweck besteht darin, hardwarespezifische oder zusätzliche Leistungsmerkmale des FlexRay-Communication-Controllers zu unterstützen, um die Kommunikationsleistung zu steigern [SWS_FrIf_05317]. Die Funktionsdeklaration wird über die Header-Datei FrIf_Externals.h bereitgestellt [SWS_FrIf_05317].
Aufruf und Parameter
Die Operation wird synchron aufgerufen und liefert keinen Rückgabewert (void) [SWS_FrIf_05317]. Sie verarbeitet zwei Eingangsparameter, während weder Ein-/Ausgangs- noch Ausgangsparameter existieren [SWS_FrIf_05317]:
FrIf_CtrlIdx: Index des anzusprechenden FlexRay-Communication-Controllers (Typuint8) [SWS_FrIf_05317].FrIf_LPduIdx: Eindeutiger Index zur Kennzeichnung des jeweiligen FlexRay-Frames (Typuint16) [SWS_FrIf_05317].
Nebenläufigkeit und Einschränkungen
Hinsichtlich der Reentranz ist die Funktion für unterschiedliche LPdu-Indizes (FrIf_LPduIdx) reentrant, für denselben LPdu-Index jedoch explizit nicht reentrant spezifiziert [SWS_FrIf_05317]. Aufrufer müssen daher sicherstellen, dass zeitgleiche Aufrufe für dieselbe PDU unterbleiben.
Interpretation: Da die Operation als benutzerdefiniert gekennzeichnet und in FrIf_Externals.h abgelegt ist, dürfte die tatsächliche Implementierung anwenderspezifisch bzw. treibererweiternd bereitgestellt werden müssen. Frage Q-6668832db63b9906 (offen)
Dieser Text wurde von einer KI erstellt. Alle Angaben basieren ausschließlich auf den Spezifikationen des Release R20-11.
function <UL_TxConflictNotification> [SWS_FrIf_91001] 📄 PDF
void <UL_TxConflictNotification> (uint8 FrIf_CtrlIdx, uint16 FrIf_LPduIdx);
Notification in case a Tx Conflict has been detected.
Verwendung
Die Benachrichtigungsfunktion <UL_ Tx Conflict Notification> wird aufgerufen, sobald im FlexRay-Interface ein Übertragungskonflikt (Tx Conflict) festgestellt wurde [SWS_FrIf_91001]. Die Deklaration dieser Schnittstelle wird über die Header-Datei Fr If_ Externals.h zur Verfügung gestellt [SWS_FrIf_91001].
Die Funktion besitzt keinen Rückgabewert und nimmt zwei Eingangsparameter entgegen [SWS_FrIf_91001]:
Fr If_ Ctrl Idx: Kennung des adressierten FlexRay-Communication-Controllers [SWS_FrIf_91001].Fr If_ LPdu Idx: Kennung des betroffenen gesendeten FlexRay-Frames [SWS_FrIf_91001].
Nebenläufigkeit und Einschränkungen
Der Aufruf erfolgt mit synchroner Semantik [SWS_FrIf_91001]. Hinsichtlich der Nebenläufigkeit ist die Ausführung reentrant für unterschiedliche Indizes von Fr If_ LPdu Idx, jedoch explizit nicht reentrant für denselben LPdu-Index [SWS_FrIf_91001]. Bei der Implementierung ist daher sicherzustellen, dass gleichzeitige Aufrufe für denselben Frame-Index unterbunden werden.
Fehlerbehandlung und Zusammenspiel
Die Spezifikation definiert für diese Callback-Schnittstelle keine gesonderten DET- oder DEM-Meldungen und keine spezifischen Fehlercodes [SWS_FrIf_91001]. Interpretation: Die übergeordnete Schicht dürfte den Aufruf bereitstellen, um unmittelbar aufgetretene Konflikte auf der FlexRay-Übertragungsstrecke protokollieren oder behandeln zu können. Frage Q-fc63c251dbc03307 (offen)
Dieser Text wurde von einer KI erstellt und nach festen Richtlinien geprüft. Fachliche Belege stammen ausschließlich aus der Spezifikation.
type FrIf_ConfigType [SWS_FrIf_05301] 📄 PDF
This type contains the implementation - specific post build time configuration structure. Only pointers of this type are allowed.
type FrIf_StateType [SWS_FrIf_05755] 📄 PDF
Variables of this type are used to represent the Fr If_ State of a Flex Ray CC.
Verwendung und Wertebereich
Der Aufzählungstyp FrIf_StateType wird in der Header-Datei FrIf.h definiert und dient im FlexRay Interface dazu, den aktuellen Betriebszustand eines FlexRay Communication Controllers (FlexRay CC) abzubilden [SWS_FrIf_05755]. Variablen dieses Typs erfassen, ob ein Controller für den Kommunikationsbetrieb bereitsteht und ob eine Synchronisation mit dem FlexRay-Cluster vorliegt [SWS_FrIf_05755].
Der Wertebereich umfasst zwei definierte Zustände [SWS_FrIf_05755]:
FRIF_STATE_OFFLINE: Der FlexRay CC ist nicht kommunikationsbereit, und der FlexRay-Cluster ist nicht synchronisiert [SWS_FrIf_05755].FRIF_STATE_ONLINE: Der FlexRay CC ist bereit für die Kommunikation, und der FlexRay-Cluster ist synchronisiert [SWS_FrIf_05755].
Integration und Randbedingungen
Die Zustände spiegeln fundamentale Kommunikationsphasen wider: Solange FRIF_STATE_OFFLINE anliegt, kann keine reguläre Cluster-Kommunikation über den Controller erfolgen, während FRIF_STATE_ONLINE den synchronisierten Sende- und Empfangsbetrieb kennzeichnet [SWS_FrIf_05755]. Da der Spezifikationsauszug keine weiteren API-Signaturen oder Fehlermeldungen nennt, dürfte der Typ primär in Statusabfragen oder Zustandsübergängen des FlexRay Interface Verwendung finden. Frage Q-071cd300dcaa0a3b (offen)
Dieser Text wurde von einer KI generiert und basiert auf der Spezifikation AUTOSAR R20-11.
Implementer's Guide folgt (Komplexität I1)
type FrIf_StateTransitionType [SWS_FrIf_05303] 📄 PDF
Variables of this type are used to represent the Fr If_ State of a Flex Ray CC.
Der Enumerationstyp FrIf_StateTransitionType wird über die Header-Datei FrIf.h bereitgestellt und dient gemäß [SWS_FrIf_05303] der Repräsentation bzw. Anforderung von Zustandsübergängen für einen FlexRay-Communication-Controller (FlexRay CC).
Verwendung und Wertebereich
Variablen dieses Typs nehmen Werte an, um gezielte Zustandswechsel eines FlexRay CC anzufordern [SWS_FrIf_05303]. Der Wertebereich umfasst folgende Literale:
FRIF_GOTO_OFFLINE: Literal zur Anforderung eines Übergangs in den ZustandFRIF_STATE_OFFLINE[SWS_FrIf_05303].FRIF_GOTO_ONLINE: Literal zur Anforderung eines Übergangs in den ZustandFRIF_STATE_ONLINE[SWS_FrIf_05303].
Kontext und Zusammenspiel
Obwohl die formale Beschreibung des Typs von der Repräsentation des Zustands eines FlexRay CC spricht, legen die definierten Literale die Interpretation nahe, dass dieser Aufzählungstyp primär als Steuerparameter zur Beauftragung von Zustandswechseln (offline oder online) dient [SWS_FrIf_05303]. Da der Payload keine weiteren Schnittstellen, Reentranz-Vorgaben oder Fehlercodes für diesen Typ aufführt, gelten die allgemeinen Einbindungsregeln über die Header-Datei FrIf.h.
Dieser Text wurde von einer KI erstellt. Er basiert auf AUTOSAR R20-11 und dem Requirement [SWS_FrIf_05303].
Implementer's Guide folgt (Komplexität I1)
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/CP_MOD_FrIf- Status
- unspecified
- Version
AUTOSAR/AP/record/CP_MOD_FrIf@rel:R20-11#37404d12- Content hash
37404d12- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_FlexRayInterface.pdf#nameddest=SWS_FrIf_05003
claude-opus-5-5· 2026-10-13