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
функция FrIf_Init [SWS_FrIf_05003] 📄 PDF
void FrIf_Init (const FrIf_ConfigType* FrIf_ConfigPtr);
Initializes the Flex Ray Interface.
Функция FrIf_Init служит для инициализации модуля интерфейса FlexRay ([SWS_FrIf_05003]). Вызов выполняется синхронно и специфицирован как нереентерабельный (Non Reentrant) ([SWS_FrIf_05003]).
Параметры и возвращаемые значения
FrIf_ConfigPtr(входной параметр): базовый указатель на конфигурационную структуру интерфейса FlexRay ([SWS_FrIf_05003]).- Возвращаемое значение:
void— функция не возвращает никакого значения ([SWS_FrIf_05003]).
Ограничения и условия вызова
Поскольку FrIf_Init нереентерабельна, функция ни в какой момент времени не должна вызываться повторно параллельно или с прерыванием тем же самым либо другим потоком или задачей ([SWS_FrIf_05003]). Вызов должен выполняться в контексте инициализации системы, до задействования регулярных служб интерфейса FlexRay.
Это указание по использованию было сгенерировано автоматически на основе спецификации AUTOSAR Classic R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция FrIf_ControllerInit [SWS_FrIf_05004] 📄 PDF
Std_ReturnType FrIf_ControllerInit (uint8 FrIf_CtrlIdx);
Initialized a Flex Ray CC.
Синхронная функция FrIf_ControllerInit служит для инициализации FlexRay Communication Controller (FlexRay CC) [SWS_FrIf_05004]. Она доступна через заголовочный файл FrIf.h и идентифицируется через Service-ID 0x03 [SWS_FrIf_05004].
Через входной параметр FrIf_CtrlIdx типа данных uint8 передается индекс адресуемого контроллера FlexRay [SWS_FrIf_05004]. Другие входные или выходные параметры для этого интерфейса отсутствуют [SWS_FrIf_05004].
Возвращаемое значение имеет тип Std_ReturnType и сообщает вызывающей стороне статус инициализации [SWS_FrIf_05004]:
E_OK: вызов API-сервиса базового драйвера FlexRay завершился успешно и вернулE_OK[SWS_FrIf_05004].E_NOT_OK: API-сервис драйвера FlexRay вернулE_NOT_OKили в режиме разработки была обнаружена ошибка [SWS_FrIf_05004].
В отношении параллелизма FrIf_ControllerInit реентерабельна для различных индексов контроллеров (FrIf_CtrlIdx), однако нереентерабельна для идентичных значений FrIf_CtrlIdx [SWS_FrIf_05004]. Параллельные вызовы для одного и того же контроллера поэтому должны предотвращаться на уровне всей системы.
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция 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().
функция FrIf_EnableAbsoluteTimerIRQ [SWS_FrIf_05025] 📄 PDF
Std_ReturnType FrIf_EnableAbsoluteTimerIRQ (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx);
Service FrIf_EnableAbsoluteTimerIRQ.
Использование
Функция FrIf_EnableAbsoluteTimerIRQ представляет собой синхронную службу с Service-ID 0x1d, предоставляемую через заголовочный файл FrIf.h [SWS_FrIf_05025]. Она выступает в роли обёртки вокруг интерфейса Fr_EnableAbsoluteTimerIRQ() драйвера FlexRay для активации прерывания абсолютного таймера [SWS_FrIf_05025].
Вызов требует двух входных параметров [SWS_FrIf_05025]:
FrIf_CtrlIdx: индекс адресуемого коммуникационного контроллера FlexRay (FlexRay CC) [SWS_FrIf_05025].FrIf_AbsTimerIdx: индекс активируемого абсолютного таймера на адресуемом контроллере [SWS_FrIf_05025].
Возвращаемые значения и обработка ошибок
Функция возвращает значение состояния типа Std_ReturnType [SWS_FrIf_05025]:
E_OK: вызов базовой службы драйвера прошёл успешно и вернулE_OK[SWS_FrIf_05025].E_NOT_OK: функция драйвера вернулаE_NOT_OK, либо была обнаружена ошибка в режиме разработки (Development Mode) [SWS_FrIf_05025].
Параллелизм и реентерабельность
Что касается контекста вызова, FrIf_EnableAbsoluteTimerIRQ нереентерабельна для одного и того же контроллера FlexRay, однако может реентерабельно вызываться для разных контроллеров FlexRay [SWS_FrIf_05025].
Это указание по использованию было сгенерировано автоматически на основе спецификации AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция 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()
Синхронная интерфейсная функция FrIf_AckAbsoluteTimerIRQ в качестве обёртки инкапсулирует API-вызов функции драйвера Fr_AckAbsoluteTimerIRQ() драйвера FlexRay [SWS_FrIf_05029]. Она имеет Service-ID 0x21, предоставляется через заголовочный файл FrIf.h и служит для подтверждения запроса на прерывание для абсолютного таймера коммуникационного контроллера FlexRay.
При вызове функции необходимо передать два входных параметра [SWS_FrIf_05029]:
FrIf_CtrlIdx: индекс целевого FlexRay Communication Controller (CC).FrIf_AbsTimerIdx: индекс конкретного абсолютного таймера, прерывание которого требуется квитировать.
Функция возвращает значение типа Std_ReturnType для оценки результата [SWS_FrIf_05029]:
E_OK: вызов API драйвераFr_AckAbsoluteTimerIRQ()был успешно выполнен.E_NOT_OK: драйвер FlexRay сообщил при вызовеE_NOT_OK, либо была обнаружена ошибка в режиме разработки (Development Mode).
Что касается параллелизма, функция работает синхронно. Вызовы для разных FlexRay CC реентерабельны, тогда как одновременные вызовы для одного и того же FlexRay CC нереентерабельны и их следует избегать [SWS_FrIf_05029].
Это указание по использованию было сгенерировано автоматически на основе спецификации AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция FrIf_StartCommunication [SWS_FrIf_05005] 📄 PDF
Std_ReturnType FrIf_StartCommunication (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Start Communication().
Функция FrIf_StartCommunication действует как обертка над функцией драйвера FlexRay Fr_StartCommunication() и инициирует начало связи адресованного коммуникационного контроллера FlexRay [SWS_FrIf_05005].
Использование и контекст вызова
Интерфейс объявлен в заголовочном файле FrIf.h и имеет Service-ID 0x04 [SWS_FrIf_05005]. Вызов обрабатывается асинхронно [SWS_FrIf_05005]. Единственным входным параметром служит FrIf_CtrlIdx (тип uint8), который определяет индекс управляемого коммуникационного контроллера FlexRay; входные/выходные или чисто выходные параметры отсутствуют [SWS_FrIf_05005].
Обработка ошибок и возвращаемые значения
Функция возвращает код состояния типа Std_ReturnType [SWS_FrIf_05005]:
E_OK: вызов базового API-сервиса в драйвере FlexRay прошел успешно и вернулE_OK[SWS_FrIf_05005].E_NOT_OK: API-сервис драйвера сообщилE_NOT_OKили во время выполнения в режиме разработки (Development Mode) была обнаружена ошибка [SWS_FrIf_05005].
Параллелизм и ограничения
Касательно реентерабельности: FrIf_StartCommunication реентерабельна для отличающихся друг от друга индексов контроллеров (FrIf_CtrlIdx), однако нереентерабельна для идентичных значений контроллера [SWS_FrIf_05005]. Поэтому при одновременных обращениях вызывающие модули должны гарантировать, что параллельные вызовы для одного и того же контроллера не выполняются.
Это указание по использованию было сгенерировано ИИ на основе спецификации AUTOSAR.
Руководство разработчика реализации в подготовке (сложность I2)
функция FrIf_HaltCommunication [SWS_FrIf_05006] 📄 PDF
Std_ReturnType FrIf_HaltCommunication (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Halt Communication().
Функция FrIf_HaltCommunication (Service-ID 0x05) представляет собой во FlexRay Interface (FrIf) обертку для вызова функции API драйвера Fr_HaltCommunication() и объявляется через заголовочный файл FrIf.h [SWS_FrIf_05006]. Сервис выполняется с асинхронной семантикой [SWS_FrIf_05006]. В качестве единственного параметра передается входное значение FrIf_CtrlIdx, специфицирующее индекс соответствующего вызываемого FlexRay Communication Controller; входные/выходные или чисто выходные параметры для этого сервиса не определены [SWS_FrIf_05006].
Возвращаемое значение имеет тип Std_ReturnType и сигнализирует результат вызова [SWS_FrIf_05006]:
E_OK: вызов API-сервиса в драйвере FlexRay был успешным и вернулE_OK[SWS_FrIf_05006].E_NOT_OK: API-вызов драйвера FlexRay вернулE_NOT_OKили в режиме разработки (Development Mode) была обнаружена ошибка [SWS_FrIf_05006].
В отношении параллелизма FrIf_HaltCommunication реентерабельна для различных значений индекса контроллера FrIf_CtrlIdx, однако нереентерабельна при идентичных значениях для FrIf_CtrlIdx [SWS_FrIf_05006]. Одновременные или прерывающие вызовы для одного и того же контроллера, следовательно, недопустимы и должны предотвращаться в контексте вызывающей стороны.
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция FrIf_AbortCommunication [SWS_FrIf_05007] 📄 PDF
Std_ReturnType FrIf_AbortCommunication (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Abort Communication().
Использование и контекст вызова
Синхронная интерфейсная функция FrIf_AbortCommunication выступает в роли прямого обёрточного вызова для API-функции Fr_AbortCommunication() драйвера FlexRay [SWS_FrIf_05007]. Она объявлена в заголовочном файле FrIf.h и имеет Service-ID 0x06 [SWS_FrIf_05007].
Через входной параметр FrIf_CtrlIdx задаётся индекс адресуемого коммуникационного контроллера FlexRay [SWS_FrIf_05007]. Дополнительные входные или выходные параметры для этого интерфейса не определены [SWS_FrIf_05007].
Возвращаемые значения и обработка ошибок
Функция возвращает значение состояния типа Std_ReturnType [SWS_FrIf_05007]:
E_OK: вызов API-службы драйвера FlexRay прошёл успешно и вернулE_OK[SWS_FrIf_05007].E_NOT_OK: API-служба драйвера FlexRay вернулаE_NOT_OK, либо была обнаружена ошибка в режиме разработки [SWS_FrIf_05007].
Параллелизм и ограничения
Выполнение FrIf_AbortCommunication является синхронным [SWS_FrIf_05007]. Функция реентерабельна для различных значений FrIf_CtrlIdx, однако нереентерабельна для идентичных индексов контроллера [SWS_FrIf_05007].
Это указание по использованию сгенерировано автоматически на основе спецификации AUTOSAR.
Руководство разработчика реализации в подготовке (сложность I1)
функция FrIf_GetState [SWS_FrIf_05170] 📄 PDF
Std_ReturnType FrIf_GetState (uint8 FrIf_ClstIdx, FrIf_StateType* FrIf_StatePtr);
Get current Fr If state.
функция FrIf_SetState [SWS_FrIf_05174] 📄 PDF
Std_ReturnType FrIf_SetState (uint8 FrIf_ClstIdx, FrIf_StateTransitionType FrIf_StateTransition);
Requests Fr If state machine transition.
Использование и вызов
Синхронная функция FrIf_SetState запрашивает переход состояния в автомате состояний FlexRay-интерфейса [SWS_FrIf_05174]. В качестве параметров передаются индекс кластера FrIf_ClstIdx, а также желаемый переход FrIf_StateTransition. Функция возвращает E_OK, если вызов был успешно выполнен и изменение состояния принято; в случае ошибки возвращается E_NOT_OK [SWS_FrIf_05174].
Обработка ошибок и граничные условия
Функция определена как нереентерабельная (Non Reentrant) [SWS_FrIf_05174]. Если контроль разработки активирован (FrIfDevErrorDetect == ON) и параметр FrIf_StateTransition содержит недопустимое значение, функция сообщает код ошибки FRIF_E_INV_FRIF_STATE через Det_ReportError в модуль DET [SWS_FrIf_05037].
Взаимодействие при переходах в режим Offline
Если FrIf_SetState вызывается с параметром перехода FRIF_STATE_OFFLINE, FlexRay-интерфейс проверяет счетчик TxConfCounter для каждой PDU [SWS_FrIf_05501]. Если это значение для какой-либо PDU больше 0, модуль информирует вышележащий уровень с помощью вызова <UL>_TxConfirmation(id, E_NOT_OK) о сбое ожидающего подтверждения [SWS_FrIf_05501].
Этот текст был сгенерирован системой ИИ на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция 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.
функция FrIf_SendWUP [SWS_FrIf_05011] 📄 PDF
Std_ReturnType FrIf_SendWUP (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Send WUP().
Функция FrIf_SendWUP (Service-ID 0x0a) модуля FrIf доступна через заголовочный файл FrIf.h и служит интерфейсной оберткой для вызова API-функции Fr_SendWUP() нижележащего драйвера FlexRay [SWS_FrIf_05011].
Использование и параметры
Сервис выполняется асинхронно [SWS_FrIf_05011]. Единственным передаваемым параметром служит входной параметр FrIf_CtrlIdx типа uint8, который специфицирует индекс адресуемого FlexRay Communication Controller (FlexRay CC) [SWS_FrIf_05011]. Параметры Inout или Out не используются [SWS_FrIf_05011].
Возвращаемые значения и обработка ошибок
В качестве возвращаемого значения функция возвращает статус типа Std_ReturnType [SWS_FrIf_05011]:
E_OK: вызов API-сервиса драйвера FlexRay был выполнен успешно и вернулE_OK[SWS_FrIf_05011].E_NOT_OK: вызов API-сервиса драйвера FlexRay вернулE_NOT_OKили в режиме разработки (Development Mode) была обнаружена ошибка [SWS_FrIf_05011].
Параллелизм и реентерабельность
Что касается одновременного доступа, FrIf_SendWUP реентерабельна для вызовов с различными значениями для FrIf_CtrlIdx, однако нереентерабельна для идентичных значений FrIf_CtrlIdx [SWS_FrIf_05011].
Этот текст был сгенерирован автоматически и основан на спецификациях AUTOSAR для релиза R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция 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().
функция 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.
функция FrIf_AllowColdstart [SWS_FrIf_05017] 📄 PDF
Std_ReturnType FrIf_AllowColdstart (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Allow Coldstart().
Использование и принцип работы
Функция FrIf_AllowColdstart служит обёрткой для API драйвера FlexRay Fr_AllowColdstart() согласно [SWS_FrIf_05017]. Через входной параметр FrIf_CtrlIdx она адресует требуемый коммуникационный контроллер (CC) FlexRay [SWS_FrIf_05017]. Выполнение функции специфицировано как асинхронное [SWS_FrIf_05017].
Возвращаемые значения и обработка ошибок
Возвращаемое значение типа Std_ReturnType отражает результат выполнения [SWS_FrIf_05017]:
E_OK: базовый API-сервис драйвера FlexRay был успешно вызван и вернулE_OK[SWS_FrIf_05017].E_NOT_OK: вызов драйвера завершился сбоем (возвращаемое значениеE_NOT_OK), либо была обнаружена ошибка в режиме разработки (Development Mode) [SWS_FrIf_05017].
Интерпретация: обнаружение ошибок в Development Mode, предположительно, осуществляется через модуль Default Error Tracer (DET), хотя в выдержке из спецификации не задокументированы конкретные ID ошибок или проверки. Вопрос Q-5dffd71d66731cc9 (открытый)
Параллелизм и ограничения
Что касается реентерабельности, FrIf_AllowColdstart нереентерабельна для одинаковых значений FrIf_CtrlIdx, однако может вызываться параллельно для разных индексов контроллера [SWS_FrIf_05017]. Поэтому вызывающие стороны должны обеспечивать синхронизацию одновременных вызовов для одного и того же контроллера. Интерфейс предоставляется через заголовочный файл FrIf.h [SWS_FrIf_05017].
Данное указание по использованию создано ИИ и основано на данных спецификации из AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция FrIf_GetMacroticksPerCycle [SWS_FrIf_05018] 📄 PDF
uint16 FrIf_GetMacroticksPerCycle (uint8 FrIf_CtrlIdx);
Retrieves the amount of Macroticks per Cycle
функция FrIf_GetMacrotickDuration [SWS_FrIf_05019] 📄 PDF
uint16 FrIf_GetMacrotickDuration (uint8 FrIf_CtrlIdx);
Retrieves the Duration of a Macrotick in ns
функция FrIf_Transmit [SWS_FrIf_05033] 📄 PDF
Std_ReturnType FrIf_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);
Requests transmission of a PDU.
Синхронная функция FrIf_Transmit запрашивает передачу PDU через интерфейс FlexRay [SWS_FrIf_05033]. Она принимает ID передаваемой PDU (TxPduId), а также указатель на структуру PduInfoPtr, которая предоставляет длину PDU, указатель на данные и метаданные [SWS_FrIf_05033].
В отношении параллелизма и реентерабельности FrIf_Transmit реентерабельна для различных ID PDU, однако нереентерабельна для одного и того же ID PDU [SWS_FrIf_05033]. Вызов возвращает E_OK, как только запрос на передачу был принят, иначе E_NOT_OK [SWS_FrIf_05033].
Специфическая проверка ошибок выполняется для немедленных PDU (Immediate PDUs), если динамические длины L-SDU деактивированы конфигурационным параметром FrIfAllowDynamicLSduLength со значением FALSE [SWS_FrIf_05757]:
- Переданная в
PduInfoPtrдлина проверяется на соответствие статически сконфигурированной длине PDU [SWS_FrIf_05757]. - Если указание длины не совпадает,
FrIf_Transmitпрерывает передачу Immediate PDU и возвращаетE_NOT_OK[SWS_FrIf_05757]. - Если обнаружение ошибок разработки (
FrIfDevErrorDetect == ON) активно, функция сообщает об ошибке разработкиFRIF_E_INV_PDULENGTHчерезDet_ReportErrorв модуль DET [SWS_FrIf_05757].
Данный текст был сгенерирован ИИ на основе спецификации R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция 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
Синхронный интерфейс FrIf_SetTransceiverMode с Service-ID 0x13 функционирует во FlexRay-интерфейсе как обертка для функции драйвера FrTrcv_SetTransceiverMode() драйвера трансивера FlexRay и доступен через заголовочный файл FrIf.h [SWS_FrIf_05034]. Он позволяет верхним уровням настраивать режим работы трансивера для определенного контроллера и канала FlexRay [SWS_FrIf_05034].
При вызове должны быть переданы три параметра: индекс контроллера FrIf_CtrlIdx для адресации FlexRay Communication Controller, индекс канала FrIf_ChnlIdx для определения канала FlexRay в области действия контроллера, а также желаемый режим трансивера FrIf_TrcvMode типа FrTrcv_TrcvModeType [SWS_FrIf_05034]. Входные/выходные или выходные параметры отсутствуют [SWS_FrIf_05034]. Для параметра FrIf_ChnlIdx действует обязательное требование, согласно которому значение перечисления FR_CHANNEL_AB ни в коем случае не должно использоваться [SWS_FrIf_05034].
Функция специфицирована как реентерабельная и синхронно перенаправляет смену режима в драйвер трансивера [SWS_FrIf_05034]. В качестве результата она возвращает статус Std_ReturnType: она сообщает E_OK, если вызов API-сервиса в драйвере трансивера успешно вернул E_OK; если этот вызов драйвера завершается сбоем и возвращает E_NOT_OK, то также возвращается E_NOT_OK [SWS_FrIf_05034].
Это указание по использованию было сгенерировано автоматически на основе спецификации AUTOSAR.
Руководство разработчика реализации в подготовке (сложность I2)
функция 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.
функция 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.
функция 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
Синхронная функция FrIf_ClearTransceiverWakeup (Service-ID 0x18) выступает в роли обёртки внутри интерфейса FlexRay и инкапсулирует вызов API-функции FrTrcv_ClearTransceiverWakeup() драйвера трансивера FlexRay [SWS_FrIf_05039]. Интерфейс доступен через заголовочный файл FrIf.h [SWS_FrIf_05039].
При вызове функция ожидает ровно два входных параметра [SWS_FrIf_05039]:
FrIf_CtrlIdx: индекс адресуемого коммуникационного контроллера FlexRay [SWS_FrIf_05039].FrIf_ChnlIdx: индекс требуемого канала FlexRay в области действия контроллераFrIf_CtrlIdx[SWS_FrIf_05039].
Другие параметры (inout или out) для функции не определены [SWS_FrIf_05039].
В отношении параллелизма и граничных условий функция классифицирована как реентерабельная [SWS_FrIf_05039]. В качестве существенного функционального ограничения спецификация предписывает, что значение перечисления FR_CHANNEL_AB не должно использоваться для параметра FrIf_ChnlIdx [SWS_FrIf_05039].
Результат операции синхронно возвращается как Std_ReturnType и напрямую отражает результат службы драйвера [SWS_FrIf_05039]:
E_OK: API-служба драйвера трансивера FlexRay была успешно выполнена и вернулаE_OK[SWS_FrIf_05039].E_NOT_OK: вызов службы драйвера завершился сбоем и вернулE_NOT_OK[SWS_FrIf_05039].
Это указание по использованию было сгенерировано ИИ на основе спецификации AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция 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() .
Функция FrIf_CancelAbsoluteTimer служит для синхронного прерывания сконфигурированного абсолютного таймера на коммуникационном контроллере FlexRay (CC) [SWS_FrIf_05023]. Она действует как оболочка вокруг соответствующей функции драйвера Fr_CancelAbsoluteTimer() драйвера FlexRay и доступна через заголовочный файл FrIf.h [SWS_FrIf_05023].
Параметры и возвращаемые значения
При вызове передаются два входных параметра [SWS_FrIf_05023]:
FrIf_CtrlIdx: индекс адресуемого FlexRay-контроллера.FrIf_AbsTimerIdx: индекс прерываемого абсолютного таймера.
Функция возвращает статус типа Std_ReturnType [SWS_FrIf_05023]:
E_OK: базовый вызов API драйвера FlexRay успешно завершился сE_OK[SWS_FrIf_05023].E_NOT_OK: вызов API драйвера завершился сбоем (возвратE_NOT_OK) или в режиме разработки (Development Mode) была обнаружена ошибка [SWS_FrIf_05023].
Параллелизм и ограничения
Выполнение происходит синхронно с идентификатором службы (Service ID) 0x1b [SWS_FrIf_05023]. В отношении реентерабельности служба реентерабельна для различных FlexRay CC, однако не должна вызываться параллельно для одного и того же FlexRay CC [SWS_FrIf_05023].
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR Classic R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция 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()
функция 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().
Функция FrIf_DisableAbsoluteTimerIRQ является частью модуля интерфейса FlexRay и предоставляется через заголовочный файл FrIf.h [SWS_FrIf_05031]. Она служит синхронной оболочкой для функции Fr_DisableAbsoluteTimerIRQ() API драйвера FlexRay и перенаправляет запрос на деактивацию генерации прерываний адресуемого абсолютного таймера на уровень драйвера [SWS_FrIf_05031].
Контекст вызова и параметры
Вызов выполняется синхронно с использованием идентификатора службы (Service ID) 0x23 [SWS_FrIf_05031]. Интерфейс не имеет входно-выходных или чисто выходных параметров, но требует двух обязательных входных параметров [SWS_FrIf_05031]:
FrIf_CtrlIdx: индекс адресуемого коммуникационного контроллера FlexRay (CC) [SWS_FrIf_05031].FrIf_AbsTimerIdx: индекс конфигурируемого абсолютного таймера [SWS_FrIf_05031].
Возвращаемые значения и обработка ошибок
Функция возвращает статус вызывающему компоненту через тип возвращаемого значения Std_ReturnType [SWS_FrIf_05031]:
E_OK: сигнализирует о том, что вызов службы API драйвера FlexRay прошел успешно и вернулE_OK[SWS_FrIf_05031].E_NOT_OK: указывает на то, что служба API драйвера FlexRay вернулаE_NOT_OKили в режиме разработки (Development Mode) была выявлена ошибка [SWS_FrIf_05031].
Параллелизм и реентерабельность
Согласно требованиям к реентерабельности, функция FrIf_DisableAbsoluteTimerIRQ нереентерабельна для одного и того же коммуникационного контроллера FlexRay, однако реентерабельна для различных FlexRay CC [SWS_FrIf_05031]. Поэтому вызовы для одной и той же инстанции контроллера не должны производиться параллельно из разных контекстов без синхронизации.
Это указание по использованию было автоматически сгенерировано на основе спецификации AUTOSAR Classic R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция 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.
функция FrIf_AllSlots [SWS_FrIf_05020] 📄 PDF
Std_ReturnType FrIf_AllSlots (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ All Slots
Синхронный интерфейс FrIf_AllSlots служит в рамках интерфейса FlexRay оболочкой для вызова базовой функции драйвера Fr_AllSlots драйвера FlexRay [SWS_FrIf_05020]. Функция предоставляется через заголовочный файл FrIf.h и имеет идентификатор службы (Service ID) 0x33 [SWS_FrIf_05020]. В качестве единственного входного параметра ожидается FrIf_CtrlIdx, который определяет логический индекс адресуемого коммуникационного контроллера FlexRay (FlexRay Communication Controller) [SWS_FrIf_05020]. Входно-выходные и выходные параметры (inout/out) для этой службы не предусмотрены [SWS_FrIf_05020].
В качестве возвращаемого значения функция выдает статус Std_ReturnType со следующими значениями [SWS_FrIf_05020]:
E_OK: вызов API драйвераFr_AllSlotsпрошел успешно и вернулE_OK[SWS_FrIf_05020].E_NOT_OK: вызов драйвера FlexRay завершился неудачно либо вернулE_NOT_OK, или во время выполнения в режиме разработки была обнаружена ошибка [SWS_FrIf_05020].
Что касается поведения во время выполнения и параллельности, FrIf_AllSlots специфицирована как нереентерабельная (non reentrant) [SWS_FrIf_05020]. Поэтому вызывающая инстанция должна гарантировать исключение одновременных или перекрывающихся вызовов для соответствующего контроллера. Интерпретация: предположительно, вызов должен осуществляться из защищенного контекста задачи, поскольку интерфейс при параллельном доступе не предоставляет собственного управления реентерабельностью. Вопрос Q-e4ce542c60b470c8 (открытый)
Этот текст был создан ИИ; определяющим является стандарт AUTOSAR.
Руководство разработчика реализации в подготовке (сложность I1)
функция 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.
функция 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.
функция 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.
функция 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.
функция 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.
функция 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.
Использование
Синхронная функция FrIf_CancelTransmit запрашивает отмену текущей передачи PDU в нижележащем коммуникационном модуле [SWS_FrIf_05070]. В качестве входного параметра передается TxPduId, который идентифицирует отменяемую PDU. Выполнение происходит синхронно и возвращает значение типа Std_ReturnType [SWS_FrIf_05070]:
E_OK: отмена передачи успешно выполнена целевым модулем.E_NOT_OK: отмена была отклонена целевым модулем.
Параллелизм и ограничения
С точки зрения параллелизма FrIf_CancelTransmit реентерабельна для различных ID PDU, но не реентерабельна для одного и того же TxPduId [SWS_FrIf_05070]. При вызовах из параллельных контекстов для одного и того же ID PDU со стороны вызывающего объекта, вероятно, потребуется внешняя синхронизация во избежание состояний гонки. Вопрос Q-38e799ac1564f60f (открытый)
Обработка ошибок и интеграция
Специфические коды ошибок DET или DEM в интерфейсе не определены; сбой отмены сигнализируется непосредственно через возвращаемое значение E_NOT_OK [SWS_FrIf_05070]. Сервис имеет Service-ID 0x4a и предоставляется через заголовочный файл FrIf.h [SWS_FrIf_05070].
Это указание по использованию создано автоматически на основе спецификации.
Руководство разработчика реализации в подготовке (сложность I2)
функция 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.
Функция FrIf_DisableLPdu служит оберткой для функции драйвера Fr_DisableLPdu драйвера FlexRay и деактивирует базовый аппаратный ресурс L-PDU для передачи или приема [SWS_FrIf_05710].
Вызов и параметры
Вызов FrIf_DisableLPdu происходит синхронно через интерфейс FrIf.h с Service-ID 0x28 [SWS_FrIf_05710]. Функция ожидает два входных параметра:
FrIf_CtrlIdx: индекс FlexRay Communication Controller в контексте интерфейса FlexRay [SWS_FrIf_05710].FrIf_LPduIdx: уникальный индекс для идентификации затрагиваемого фрейма FlexRay [SWS_FrIf_05710].
Возвращаемые значения и обработка ошибок
В качестве результата функция возвращает статус типа Std_ReturnType [SWS_FrIf_05710]:
E_OK: вызов API был успешно завершен [SWS_FrIf_05710].E_NOT_OK: вызов API был прерван из-за ошибок [SWS_FrIf_05710].
Параллелизм и ограничения
В отношении поведения при параллелизме FrIf_DisableLPdu специфицирована как нереентерабельная для одного и того же устройства (Non Reentrant for the same device) [SWS_FrIf_05710]. Поэтому параллельные вызовы для одного и того же контроллера или одного и того же устройства должны избегаться или синхронизироваться на стороне вызывающего объекта.
Этот текст был создан автоматически и основан исключительно на данных спецификации.
Руководство разработчика реализации в подготовке (сложность I1)
функция 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.
функция 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.
Функция FrIf_EnableTransceiverBranch в качестве синхронной и реентерабельной функции-обёртки инкапсулирует вызов API FrTrcv_EnableTransceiverBranch нижележащего драйвера трансивера FlexRay [SWS_FrIf_05085]. Через этот интерфейс целенаправленно активируется определённая ветвь трансивера, например, в контексте активной звезды [SWS_FrIf_05085]. Объявление функции и соответствующие типы предоставляются через заголовочный файл FrIf.h [SWS_FrIf_05085].
Параметры и условия вызова
При вызове необходимо передать три входных параметра [SWS_FrIf_05085]:
FrIf_CtrlIdx: адресует индекс соответствующего коммуникационного контроллера FlexRay [SWS_FrIf_05085].FrIf_ChnlIdx: задаёт канал FlexRay в области действия контроллераFrIf_CtrlIdx[SWS_FrIf_05085]. При этом действует обязательное ограничение, согласно которому значение перечисленияFR_CHANNEL_ABиспользовать запрещено [SWS_FrIf_05085].FrIf_BranchIdx: определяет через индекс с отсчётом от нуля конкретную ветвь трансивера, к которой применяется активация [SWS_FrIf_05085].
Возвращаемые значения
Функция возвращает значение статуса типа Std_ReturnType, которое напрямую отражает результат перенаправленного вызова драйвера [SWS_FrIf_05085]:
E_OK: вызов сервиса драйвераFrTrcv_EnableTransceiverBranchзавершился успешно и вернулE_OK[SWS_FrIf_05085].E_NOT_OK: вызов сервиса драйвера сообщил оE_NOT_OK[SWS_FrIf_05085].
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция 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.
Синхронная и реентерабельная функция FrIf_DisableTransceiverBranch инкапсулирует в качестве функции-обёртки службу FrTrcv_DisableTransceiverBranch драйвера трансивера FlexRay [SWS_FrIf_05028]. Она предоставляется через заголовочный файл FrIf.h, имеет Service-ID 0x37 и служит для целенаправленного отключения определённой ветви приёмопередатчика активной звезды [SWS_FrIf_05028].
При вызове необходимо передать три входных параметра:
FrIf_CtrlIdx: индекс адресуемого контроллера FlexRay [SWS_FrIf_05028].FrIf_ChnlIdx: канал FlexRay в области действия контроллера. При этом действует обязательное требование: значение перечисленияFR_CHANNEL_ABиспользовать запрещено [SWS_FrIf_05028].FrIf_BranchIdx: отсчитываемый от нуля индекс, идентифицирующий соответствующую ветвь трансивера, к которой должна быть применена операция [SWS_FrIf_05028].
В качестве возвращаемого значения интерфейс возвращает статус типа Std_ReturnType. Он возвращает E_OK, если вызов драйвера трансивера прошёл успешно, и E_NOT_OK, если служба драйвера сообщила E_NOT_OK [SWS_FrIf_05028]. Специфические сообщения об ошибках DET или DEM в объёме спецификации не задокументированы; сбой, вероятно, напрямую обусловлен поведением нижележащего драйвера. Вопрос Q-52d5e5fedd147532 (открытый)
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция 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.
Синхронная функция FrIf_ReconfigLPdu служит для реконфигурации L-PDU в интерфейсе FlexRay (FrIf) и передает вызов напрямую в интерфейс драйвера Fr_ReconfigLPdu драйвера FlexRay [SWS_FrIf_05048]. Интерфейс предоставляется через заголовочный файл FrIf.h [SWS_FrIf_05048].
Параметры и ограничения конфигурации
FrIf_CtrlIdx: адресует индекс коммуникационного контроллера FlexRay внутри драйвера FlexRay [SWS_FrIf_05048].FrIf_LPduIdx: определяет уникальный индекс для идентификации конфигурируемого кадра FlexRay [SWS_FrIf_05048].FrIf_FrameId,FrIf_CycleRepetition,FrIf_CycleOffset: определяют новый идентификатор кадра (Frame ID) FlexRay, а также повторение и смещение механизма фильтрации циклов для L-PDU [SWS_FrIf_05048].FrIf_ChnlIdx: определяет канал FlexRay типаFr_ChannelType[SWS_FrIf_05048]. При этом строго задано, что значение перечисленияFR_CHANNEL_ABиспользовать запрещено [SWS_FrIf_05048].FrIf_PayloadLengthиFrIf_HeaderCRC: задают длину полезных данных в байтах, а также соответствующий CRC заголовка, на которые должна быть настроена L-PDU [SWS_FrIf_05048].
Возвращаемые значения и контекст выполнения
Возвращаемое значение типа Std_ReturnType указывает результат реконфигурации: E_OK сигнализирует об успешном выполнении вызова API, тогда как E_NOT_OK указывает на аварийное завершение из-за ошибки [SWS_FrIf_05048].
Функция является синхронной и специфицирована как нереентерабельная (Non Reentrant) [SWS_FrIf_05048]. Следовательно, её нельзя вызывать параллельно.
Данное указание по использованию основано на спецификации AUTOSAR Classic R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция 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
функция FrIf_GetVersionInfo [SWS_FrIf_05002] 📄 PDF
void FrIf_GetVersionInfo (Std_VersionInfoType* FrIf_VersionInfoPtr);
Returns the version information of this module.
функция 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().
Функция FrIf_ReadCCConfig представляет собой синхронную службу интерфейса FlexRay с ID службы 0x3b и объявлена в заголовке FrIf.h [SWS_FrIf_05313]. Её основная задача состоит в том, чтобы в качестве обёртки вызывать функцию драйвера Fr_ReadCCConfig() базового драйвера FlexRay для считывания параметров конфигурации контроллера [SWS_FrIf_05313].
При вызове интерфейс ожидает три параметра [SWS_FrIf_05313]:
FrIf_CtrlIdx(вход): числовой индекс адресуемого коммуникационного контроллера (CC) FlexRay.FrIf_ConfigParamIdx(вход): индекс конкретного параметра конфигурации, значение которого необходимо запросить.FrIf_ConfigParamValuePtr(выход): указатель на область памяти, в которой сохраняется считанное 32-битное значение конфигурации.
Возвращаемое значение типа Std_ReturnType сигнализирует о результате запроса [SWS_FrIf_05313]:
E_OK: вызов API драйвераFr_ReadCCConfig()был успешно выполнен и вернулE_OK.E_NOT_OK: драйвер FlexRay сообщил оE_NOT_OKили во время выполнения в режиме разработки (Development Mode) была обнаружена ошибка.
Что касается параллельности и среды выполнения, FrIf_ReadCCConfig является нереентерабельной для одного и того же контроллера FlexRay, однако реентерабельна для различных контроллеров [SWS_FrIf_05313]. Поэтому при обращениях к одному и тому же контроллеру вызывающая сторона должна обеспечить надлежащую синхронизацию. Ошибка, обнаруженная в режиме разработки, предположительно передаётся в Default Error Tracer (DET). Вопрос Q-bfe56460515de4de (открытый)
Это указание по использованию было сгенерировано ИИ и основано исключительно на данных спецификации AUTOSAR Classic Release R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция 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.
Использование и семантика
Синхронная функция FrIf_EnableBusMirroring переключает зеркалирование шины для всех контроллеров FlexRay, подключенных к переданному кластеру FlexRay [SWS_FrIf_05726]. Через параметр FrIf_ClstIdx адресуется соответствующий кластер. Логический параметр FrIf_MirroringActive определяет режим: при передаче TRUE для каждого фрейма, принятого или отправленного на контроллерах, вызывается интерфейс Mirror_ReportFlexRayFrame; при FALSE пересылка фреймов в модуль зеркалирования деактивируется [SWS_FrIf_05726].
Возвращаемые значения и обработка ошибок
Вызов функции возвращает статус типа Std_ReturnType [SWS_FrIf_05726]:
E_OK: режим зеркалирования для указанного кластера успешно обновлен [SWS_FrIf_05726].E_NOT_OK: переключение было отклонено, если функция зеркалирования глобально отключена (параметр конфигурацииFrIfBusMirroringSupport) или указан недопустимый индекс [SWS_FrIf_05726]. Интерпретация: указание спецификацииFrIf_CtrlIdxдляE_NOT_OK, несмотря на отличающееся обозначение, вероятно, относится к проверке индекса кластераFrIf_ClstIdxили назначенных контроллеров. Вопрос Q-9daba2ff2b1a3ff1 (открытый)
Параллелизм и интеграция
Функция объявлена как реентерабельная и имеет Service-ID 0x4b; она предоставляется через заголовочный файл FrIf.h [SWS_FrIf_05726]. Вызывающие стороны должны учитывать, что выполнение происходит синхронно. Дополнительные каналы ошибок через DET или DEM для этого сервиса не указаны.
Этот текст был создан ИИ; определяющей является спецификация AUTOSAR.
Руководство разработчика реализации в подготовке (сложность I2)
функция 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.
Использование и контекст вызова
Функция FrIf_CheckWakeupByTransceiver (Service-ID 0x39) выступает в интерфейсе FlexRay синхронной оболочкой для функции FrTrcv_CheckWakeupByTransceiver() драйвера трансивера FlexRay [SWS_FrIf_05041]. Она предоставляется через заголовочный файл FrIf.h и не имеет возвращаемого значения [SWS_FrIf_05041].
Для адресации соответствующей аппаратной инстанции интерфейс требует два обязательных параметра [SWS_FrIf_05041]:
FrIf_CtrlIdx(входной параметр,uint8): индекс адресуемого коммуникационного контроллера FlexRay [SWS_FrIf_05041].FrIf_ChnlIdx(входной параметр,Fr_ChannelType): индекс адресуемого канала FlexRay в области действия указанного контроллераFrIf_CtrlIdx[SWS_FrIf_05041].
Параллелизм и ограничения
Спецификация определяет интерфейс как реентерабельный, что позволяет параллельно отправлять синхронные вызовы [SWS_FrIf_05041].
Для параметра канала FrIf_ChnlIdx действует строгое ограничение по применению: значение перечисления FR_CHANNEL_AB передавать запрещено [SWS_FrIf_05041]. Интерпретация: вероятно, это означает, что базовый драйвер трансивера не поддерживает комбинированную проверку пробуждения обоих каналов за один вызов, и системы с двумя каналами FlexRay должны проверяться последовательно или раздельно по каналам. Вопрос Q-a30cf39f0d3ca295 (открытый)
Этот текст был создан ИИ и основан на AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция <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.
Функция обратного вызова <User_RxIndication> служит для сигнализации о принятом PDU из нижележащего уровня коммуникационного интерфейса [SWS_FrIf_05045]. Интерпретация: данный идентификатор, вероятно, представляет собой конфигурируемый обратный вызов верхнего уровня, уведомляемый при поступлении данных FlexRay. Вопрос Q-a9037bc7502dd9ea (открытый)
Использование и параметры
Выполнение происходит синхронно без возвращаемого значения (void) [SWS_FrIf_05045]. При вызове передаются два входных параметра [SWS_FrIf_05045]:
RxPduId(PduIdType): уникальный идентификатор принятого PDU [SWS_FrIf_05045].PduInfoPtr(const PduInfoType*): указатель на структуру с длиной принятого PDU (SduLength), указателем на буфер с полезными данными (SduDataPtr), а также сопутствующими метаданными [SWS_FrIf_05045].
Параллелизм и конфигурация
С точки зрения реентерабельности функция является реентерабельной для различных ID PDU, однако не должна вызываться реентерабельно для одного и того же ID PDU [SWS_FrIf_05045]. Интерфейс доступен в модуле конфигурационно («Available via configurable») [SWS_FrIf_05045]. Специфические коды ошибок, возвращаемые значения или уведомления в DET и DEM в исходных данных для этого интерфейса не определены [SWS_FrIf_05045].
Этот текст был создан автоматически. Все данные основаны исключительно на спецификационных данных модуля FrIf.
функция <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.
Конфигурируемая callback-функция <User_TxConfirmation> вызывается нижележащим модулем коммуникационного интерфейса для подтверждения завершения операции отправки для PDU [SWS_FrIf_05046]. Она синхронно сообщает вышестоящему уровню, успешно ли завершилась передача соответствующей PDU или произошел сбой [SWS_FrIf_05046].
Интерфейс не имеет возвращаемого значения (void) и ожидает два входных параметра [SWS_FrIf_05046]:
TxPduId(типPduIdType): обозначает уникальный ID переданной PDU [SWS_FrIf_05046].result(типStd_ReturnType): указывает результат передачи, при этомE_OKподтверждает успешную передачу, аE_NOT_OKсообщает о сбое передачи PDU [SWS_FrIf_05046].
Функция работает синхронно [SWS_FrIf_05046]. С точки зрения параллелизма она реентерабельна для различных ID PDU, но не реентерабельна для одного и того же TxPduId [SWS_FrIf_05046]. Поэтому параллельные вызовы подтверждения для идентичных ID PDU должны быть исключены.
Специфические коды ошибок, помимо E_NOT_OK, или отдельные сообщения в DET или DEM для этого вызова не специфицированы [SWS_FrIf_05046]. Интерпретация: поскольку интерфейс обозначен как конфигурируемый, идентификатор <User_TxConfirmation>, вероятно, служит заполнителем для имени функции, фактически сконфигурированного на вышестоящем уровне [SWS_FrIf_05046]. Вопрос Q-f2a08258df49b3ec (открытый)
Этот текст был создан ИИ и служит вспомогательным материалом к спецификации AUTOSAR.
функция <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.
Использование
Синхронная callback-функция <User_TriggerTransmit> вызывается для запроса данных SDU верхнего уровня для передачи [SWS_FrIf_05047]. В качестве параметров передаются идентификатор TxPduId отправляемой SDU, а также указатель PduInfoPtr типа PduInfoType* [SWS_FrIf_05047]. Вызывающая сторона предоставляет целевой буфер через PduInfoPtr->SduDataPtr и указывает доступный размер буфера в PduInfoPtr->SduLength [SWS_FrIf_05047].
Вызываемый модуль верхнего уровня проверяет, помещаются ли готовые данные в указанный размер буфера [SWS_FrIf_05047]:
- Если данные помещаются, модуль копирует их в
PduInfoPtr->SduDataPtr, обновляетPduInfoPtr->SduLengthзначением количества фактически скопированных байтов и возвращаетE_OK[SWS_FrIf_05047]. - Если данные не помещаются, модуль возвращает
E_NOT_OKбез измененияPduInfoPtr[SWS_FrIf_05047].
Обработка ошибок и параллелизм
В случае ошибки (возвращаемое значение E_NOT_OK) данные SDU не копируются. В этом случае PduInfoPtr больше не должен использоваться, так как он может содержать указатель NULL или указывать на недействительные данные [SWS_FrIf_05047].
Интерфейс является реентерабельным для различных ID PDU, но не реентерабельным для одного и того же ID PDU [SWS_FrIf_05047]. Доступность функции является конфигурируемой [SWS_FrIf_05047].
Этот текст был создан ИИ. Все данные основаны исключительно на спецификациях релиза AUTOSAR R20-11.
функция <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.
Функция <Free_Op_A> спроектирована как определяемая пользователем коммуникационная операция в интерфейсе FlexRay для поддержки аппаратно-зависимых или дополнительных характеристик Communication Controller с целью повышения общей производительности [SWS_FrIf_05316]. Декларация этого интерфейса предоставляется через заголовочный файл FrIf_Externals.h [SWS_FrIf_05316].
Для вызова предписаны два функциональных входных параметра [SWS_FrIf_05316]:
FrIf_CtrlIdx(типuint8): обозначает в качестве индекса конкретно адресуемый FlexRay Communication Controller [SWS_FrIf_05316].FrIf_LPduIdx(типuint16): служит однозначным индексом для идентификации соответствующего фрейма FlexRay [SWS_FrIf_05316].
Операция выполняется синхронно и не имеет возвращаемого значения (void); входные и выходные параметры также не предусмотрены [SWS_FrIf_05316]. С точки зрения параллелизма и контекста вызова функция реентерабельна для различных значений FrIf_LPduIdx, однако явно не реентерабельна при использовании одного и того же индекса FrIf_LPduIdx [SWS_FrIf_05316].
Специфические коды ошибок, а также механизмы мониторинга ошибок через модуль Default Error Tracer (DET) или Diagnostic Event Manager (DEM) в спецификации не указаны [SWS_FrIf_05316]. Поэтому вызывающие компоненты перед выполнением должны убедиться в отсутствии конкурирующих обращений к одному и тому же индексу фрейма [SWS_FrIf_05316].
Это указание по использованию было создано автоматически на основе спецификации AUTOSAR.
функция <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.
Пользовательская функция <Free_Op_B> служит для выполнения специфичных для приложения коммуникационных операций во FlexRay-интерфейсе [SWS_FrIf_05317]. Её назначение заключается в поддержке аппаратно-зависимых или дополнительных возможностей FlexRay Communication Controller с целью повышения производительности связи [SWS_FrIf_05317]. Объявление функции предоставляется через заголовочный файл FrIf_Externals.h [SWS_FrIf_05317].
Вызов и параметры
Операция вызывается синхронно и не возвращает значения (void) [SWS_FrIf_05317]. Она обрабатывает два входных параметра, при этом входно-выходные и выходные параметры отсутствуют [SWS_FrIf_05317]:
FrIf_CtrlIdx: индекс целевого FlexRay Communication Controller (типuint8) [SWS_FrIf_05317].FrIf_LPduIdx: уникальный индекс для идентификации соответствующего FlexRay-фрейма (типuint16) [SWS_FrIf_05317].
Параллелизм и ограничения
В отношении реентерабельности функция специфицирована как реентерабельная для различных индексов LPdu (FrIf_LPduIdx), однако явно нереентерабельная для одного и того же индекса LPdu [SWS_FrIf_05317]. Поэтому вызывающие компоненты должны гарантировать отсутствие одновременных вызовов для одной и той же PDU.
Интерпретация: поскольку операция обозначена как пользовательская и расположена в FrIf_Externals.h, фактическая реализация, по-видимому, должна предоставляться пользователем или в качестве расширения драйвера. Вопрос Q-6668832db63b9906 (открытый)
Этот текст создан ИИ. Все данные основаны исключительно на спецификациях релиза R20-11.
функция <UL_TxConflictNotification> [SWS_FrIf_91001] 📄 PDF
void <UL_TxConflictNotification> (uint8 FrIf_CtrlIdx, uint16 FrIf_LPduIdx);
Notification in case a Tx Conflict has been detected.
Использование
Функция оповещения <UL_ Tx Conflict Notification> вызывается, как только во FlexRay-интерфейсе был зафиксирован конфликт передачи (Tx Conflict) [SWS_FrIf_91001]. Декларация этого интерфейса предоставляется через заголовочный файл Fr If_ Externals.h [SWS_FrIf_91001].
Функция не имеет возвращаемого значения и принимает два входных параметра [SWS_FrIf_91001]:
Fr If_ Ctrl Idx: идентификатор адресуемого FlexRay Communication Controller [SWS_FrIf_91001].Fr If_ LPdu Idx: идентификатор затронутого переданного фрейма FlexRay [SWS_FrIf_91001].
Параллелизм и ограничения
Вызов выполняется с синхронной семантикой [SWS_FrIf_91001]. С точки зрения параллелизма выполнение является реентерабельным для различных индексов Fr If_ LPdu Idx, однако явно нереентерабельным для одного и того же индекса LPdu [SWS_FrIf_91001]. Поэтому при реализации необходимо обеспечить предотвращение одновременных вызовов для одного и того же индекса фрейма.
Обработка ошибок и взаимодействие
Спецификация не определяет для этого callback-интерфейса отдельных сообщений DET или DEM, а также специфических кодов ошибок [SWS_FrIf_91001]. Интерпретация: вышестоящий уровень, вероятно, предоставляет вызов, чтобы иметь возможность непосредственно протоколировать или обрабатывать конфликты, возникшие на тракте передачи FlexRay. Вопрос Q-fc63c251dbc03307 (открытый)
Этот текст был создан ИИ и проверен по строгим правилам. Технические подтверждения взяты исключительно из спецификации.
тип FrIf_ConfigType [SWS_FrIf_05301] 📄 PDF
This type contains the implementation - specific post build time configuration structure. Only pointers of this type are allowed.
тип FrIf_StateType [SWS_FrIf_05755] 📄 PDF
Variables of this type are used to represent the Fr If_ State of a Flex Ray CC.
Использование и диапазон значений
Тип перечисления FrIf_StateType определяется в заголовочном файле FrIf.h и служит во FlexRay Interface для отображения текущего рабочего состояния FlexRay Communication Controller (FlexRay CC) [SWS_FrIf_05755]. Переменные этого типа фиксируют, готов ли контроллер к коммуникационной работе и имеется ли синхронизация с кластером FlexRay [SWS_FrIf_05755].
Диапазон значений включает два определенных состояния [SWS_FrIf_05755]:
FRIF_STATE_OFFLINE: FlexRay CC не готов к коммуникации, и кластер FlexRay не синхронизирован [SWS_FrIf_05755].FRIF_STATE_ONLINE: FlexRay CC готов к коммуникации, и кластер FlexRay синхронизирован [SWS_FrIf_05755].
Интеграция и граничные условия
Состояния отражают фундаментальные фазы коммуникации: пока действует FRIF_STATE_OFFLINE, регулярная коммуникация в кластере через контроллер невозможна, тогда как FRIF_STATE_ONLINE обозначает синхронизированный режим приема и передачи [SWS_FrIf_05755]. Поскольку выдержка из спецификации не называет других сигнатур API или сообщений об ошибках, данный тип, вероятно, находит применение преимущественно в запросах статуса или переходах состояний FlexRay Interface. Вопрос Q-071cd300dcaa0a3b (открытый)
Этот текст был сгенерирован ИИ и основан на спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
тип FrIf_StateTransitionType [SWS_FrIf_05303] 📄 PDF
Variables of this type are used to represent the Fr If_ State of a Flex Ray CC.
Тип перечисления FrIf_StateTransitionType предоставляется через заголовочный файл FrIf.h и служит, согласно [SWS_FrIf_05303], для представления или запроса переходов состояний для FlexRay Communication Controller (FlexRay CC).
Использование и диапазон значений
Переменные этого типа принимают значения для запроса целенаправленных смен состояний FlexRay CC [SWS_FrIf_05303]. Диапазон значений включает следующие литералы:
FRIF_GOTO_OFFLINE: литерал для запроса перехода в состояниеFRIF_STATE_OFFLINE[SWS_FrIf_05303].FRIF_GOTO_ONLINE: литерал для запроса перехода в состояниеFRIF_STATE_ONLINE[SWS_FrIf_05303].
Контекст и взаимодействие
Хотя формальное описание типа говорит о представлении состояния FlexRay CC, определенные литералы дают основание интерпретировать, что этот тип перечисления в первую очередь служит управляющим параметром для запроса смен состояний (offline или online) [SWS_FrIf_05303]. Поскольку полезная нагрузка не содержит других интерфейсов, предписаний по реентерабельности или кодов ошибок для этого типа, действуют общие правила интеграции через заголовочный файл FrIf.h.
Этот текст был создан ИИ. Он основан на AUTOSAR R20-11 и требовании [SWS_FrIf_05303].
Руководство разработчика реализации в подготовке (сложность 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#fd72fcb3- Content hash
fd72fcb3- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_FlexRayInterface.pdf#nameddest=SWS_FrIf_05003
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал