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를 통해 사용할 수 있으며 서비스 ID 0x03으로 식별됩니다 [SWS_FrIf_05004].
데이터 타입 uint8의 입력 매개변수 FrIf_CtrlIdx을 통해 지정할 FlexRay 컨트롤러의 인덱스가 전달됩니다 [SWS_FrIf_05004]. 이 인터페이스에는 추가적인 입력 또는 출력 매개변수가 존재하지 않습니다 [SWS_FrIf_05004].
반환값은 Std_ReturnType 타입이며 초기화 상태를 호출자에게 다시 보고합니다 [SWS_FrIf_05004]:
E_OK: 하위 FlexRay 드라이버의 API 서비스 호출이 성공적이었으며E_OK을 반환했습니다 [SWS_FrIf_05004].E_NOT_OK: FlexRay 드라이버의 API 서비스가E_NOT_OK을 반환했거나 개발 모드에서 오류가 감지되었습니다 [SWS_FrIf_05004].
동시성과 관련하여 FrIf_ControllerInit은 서로 다른 컨트롤러 인덱스에 대해 재진입 가능(FrIf_CtrlIdx)하지만, 동일한 FrIf_CtrlIdx 값에 대해서는 재진입 불가합니다 [SWS_FrIf_05004]. 따라서 동일한 컨트롤러에 대한 동시 호출은 전체 시스템에 의해 방지되어야 합니다.
이 텍스트는 AUTOSAR R20-11 사양을 바탕으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 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은 헤더 파일 FrIf.h를 통해 제공되는 서비스 ID 0x1d을 갖는 동기식 서비스를 나타냅니다 [SWS_FrIf_05025]. 절대 타이머의 인터럽트를 활성화하기 위한 FlexRay 드라이버의 인터페이스 Fr_EnableAbsoluteTimerIRQ()를 감싸는 래퍼 역할을 합니다 [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은 FlexRay 드라이버 [SWS_FrIf_05029]의 드라이버 함수 Fr_AckAbsoluteTimerIRQ()에 대한 API 호출을 래퍼로서 캡슐화합니다. 서비스 ID 0x21을 가지며, 헤더 FrIf.h를 통해 제공되고, FlexRay Communication Controller의 절대 타이머에 대한 인터럽트 요청을 확인하는 역할을 합니다.
함수 호출 시 두 개의 입력 매개변수를 전달해야 합니다 [SWS_FrIf_05029]:
FrIf_CtrlIdx: 주소 지정할 FlexRay Communication Controller(CC)의 인덱스입니다.FrIf_AbsTimerIdx: 인터럽트를 승인할 특정 절대 타이머의 인덱스입니다.
이 함수는 결과를 평가하기 위해 Std_ReturnType 타입의 반환값을 제공합니다 [SWS_FrIf_05029]:
E_OK: 드라이버 APIFr_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을 통해 선언되며 서비스 ID 0x04을 갖습니다 [SWS_FrIf_05005]. 호출은 비동기식으로 처리됩니다 [SWS_FrIf_05005]. 제어할 FlexRay 통신 컨트롤러의 인덱스를 지정하는 FrIf_CtrlIdx(타입 uint8)가 유일한 입력 매개변수 역할을 하며, 입출력 또는 순수 출력 매개변수는 존재하지 않습니다 [SWS_FrIf_05005].
오류 처리 및 반환값
함수는 Std_ReturnType 타입의 상태 코드를 반환합니다 [SWS_FrIf_05005]:
E_OK: FlexRay 드라이버 내 하위 API 서비스의 호출이 성공적으로 진행되었으며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 사양을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 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(서비스 ID 0x05)은 FlexRay 인터페이스(FrIf)에서 드라이버 API 함수 Fr_HaltCommunication() 호출을 위한 래퍼 역할을 하며 헤더 FrIf.h을 통해 선언됩니다 [SWS_FrIf_05006]. 이 서비스는 비동기 시맨틱으로 실행됩니다 [SWS_FrIf_05006]. 각각 지정할 FlexRay Communication Controller의 인덱스를 지정하는 입력값 FrIf_CtrlIdx이 유일한 매개변수로 전달되며, 이 서비스에 대해 입출력 또는 순수 출력 매개변수는 정의되어 있지 않습니다 [SWS_FrIf_05006].
반환값은 Std_ReturnType 타입이며 호출 결과를 나타냅니다 [SWS_FrIf_05006]:
E_OK: FlexRay 드라이버 내 API 서비스의 호출이 성공적이었으며E_OK을 반환했습니다 [SWS_FrIf_05006].E_NOT_OK: FlexRay 드라이버의 API 호출이E_NOT_OK을 반환했거나 개발 모드(Development Mode)에서 오류가 감지되었습니다 [SWS_FrIf_05006].
동시성과 관련하여 FrIf_HaltCommunication은 서로 다른 컨트롤러 인덱스 값에 대해서는 재진입 가능하지만 FrIf_CtrlIdx, FrIf_CtrlIdx의 동일한 값에 대해서는 재진입 불가합니다 [SWS_FrIf_05006]. 따라서 동일한 컨트롤러에 대한 동시 호출 또는 인터럽트 호출은 허용되지 않으며 호출자의 컨텍스트에서 방지되어야 합니다.
이 텍스트는 AUTOSAR CP R20-11 사양을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 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은 FlexRay 드라이버 [SWS_FrIf_05007]의 API 함수 Fr_AbortCommunication()에 대한 직접적인 래퍼 역할을 합니다. 헤더 파일 FrIf.h에 선언되어 있으며 서비스 ID 0x06를 갖습니다 [SWS_FrIf_05007].
입력 매개변수 FrIf_CtrlIdx을 통해 주소를 지정할 FlexRay Communication Controller의 인덱스가 지정됩니다 [SWS_FrIf_05007]. 이 인터페이스에 대해 추가 입력 또는 출력 매개변수는 정의되어 있지 않습니다 [SWS_FrIf_05007].
반환값 및 오류 처리
함수는 타입 Std_ReturnType의 상태 값을 반환합니다 [SWS_FrIf_05007]:
E_OK: FlexRay 드라이버의 API 서비스 호출이 성공했으며E_OK을(를) 반환했습니다 [SWS_FrIf_05007].E_NOT_OK: FlexRay 드라이버의 API 서비스가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에 유효하지 않은 값이 포함되어 있으면, 함수는 Det_ReportError을(를) 통해 오류 코드 FRIF_E_INV_FRIF_STATE을(를) DET 모듈에 보고합니다 [SWS_FrIf_05037].
오프라인 전이 시의 상호작용
FrIf_SetState이(가) 전이 매개변수 FRIF_STATE_OFFLINE(으)로 호출되면, FlexRay 인터페이스는 각 PDU에 대해 카운터 TxConfCounter을(를) 확인합니다 [SWS_FrIf_05501]. 어떤 PDU에 대해 이 값이 0보다 크면 모듈은 <UL>_TxConfirmation(id, E_NOT_OK) 호출을 통해 보류 중인 확인의 실패를 상위 계층에 알립니다 [SWS_FrIf_05501].
이 텍스트는 AUTOSAR 명세 R20-11을 기반으로 AI 시스템에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 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의 함수 FrIf_SendWUP(서비스 ID 0x0a)은 헤더 파일 FrIf.h을 통해 사용할 수 있으며 하위 FlexRay 드라이버의 API 함수 Fr_SendWUP() 호출을 위한 인터페이스 래퍼 역할을 합니다 [SWS_FrIf_05011].
사용법 및 매개변수
서비스는 비동기식으로 실행됩니다 [SWS_FrIf_05011]. 지정할 FlexRay Communication Controller(FlexRay CC)의 인덱스를 지정하는 uint8 타입의 입력 매개변수 FrIf_CtrlIdx이 유일한 전달 매개변수로 사용됩니다 [SWS_FrIf_05011]. Inout 또는 Out 매개변수는 사용되지 않습니다 [SWS_FrIf_05011].
반환값 및 오류 처리
함수는 반환값으로 Std_ReturnType 타입의 상태를 반환합니다 [SWS_FrIf_05011]:
E_OK: FlexRay 드라이버의 API 서비스 호출이 성공적으로 실행되었으며E_OK을 반환했습니다 [SWS_FrIf_05011].E_NOT_OK: FlexRay 드라이버의 API 서비스 호출이E_NOT_OK을 반환했거나 개발 모드(Development Mode)에서 오류가 감지되었습니다 [SWS_FrIf_05011].
동시성 및 재진입성
동시 접근과 관련하여 FrIf_SendWUP은 FrIf_CtrlIdx의 서로 다른 값으로 호출하는 경우 재진입 가능하지만, FrIf_CtrlIdx의 동일한 값에 대해서는 재진입 불가합니다 [SWS_FrIf_05011].
이 텍스트는 자동으로 생성되었으며 릴리스 R20-11용 AUTOSAR 사양을 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 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은 [SWS_FrIf_05017]에 따른 FlexRay 드라이버 API Fr_AllowColdstart()의 래퍼 역할을 합니다. 입력 매개변수 FrIf_CtrlIdx을 통해 주소를 지정할 FlexRay Communication Controller (CC)의 주소를 지정합니다 [SWS_FrIf_05017]. 함수의 실행은 비동기식으로 명시되어 있습니다 [SWS_FrIf_05017].
반환값 및 오류 처리
Std_ReturnType 타입의 반환값은 실행 결과를 반영합니다 [SWS_FrIf_05017]:
E_OK: 기본 FlexRay 드라이버의 API 서비스가 성공적으로 호출되었으며E_OK을(를) 다시 보고했습니다 [SWS_FrIf_05017].E_NOT_OK: 드라이버 호출이 실패했거나(반환값E_NOT_OK) 개발 모드(Development Mode)에서 오류가 감지되었습니다 [SWS_FrIf_05017].
해석: 규격서 발췌본에 특정 오류 ID나 검사가 문서화되어 있지는 않지만, Development Mode에서의 오류 감지는 Default Error Tracer (DET) 모듈을 통해 이루어질 것으로 추정됩니다. 질문 Q-5dffd71d66731cc9 (열림)
동시성 및 제약사항
재진입성과 관련하여 FrIf_AllowColdstart은 동일한 FrIf_CtrlIdx 값에 대해서는 재진입이 불가능하지만, 서로 다른 컨트롤러 인덱스에 대해서는 병렬로 호출될 수 있습니다 [SWS_FrIf_05017]. 따라서 호출자는 동일한 컨트롤러에 대한 동시 호출이 동기화되도록 보장해야 합니다. 이 인터페이스는 헤더 FrIf.h을 통해 제공됩니다 [SWS_FrIf_05017].
이 사용 지침은 AI에 의해 작성되었으며 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은 FlexRay 인터페이스를 통한 PDU 전송을 요청합니다 [SWS_FrIf_05033]. 이 함수는 전송할 PDU의 ID(TxPduId) 및 PDU 길이, 데이터 포인터 및 메타데이터를 제공하는 구조체 PduInfoPtr에 대한 포인터를 받습니다 [SWS_FrIf_05033].
동시성 및 재진입성과 관련하여 FrIf_Transmit은 서로 다른 PDU ID에 대해서는 재진입 가능하지만 동일한 PDU ID에 대해서는 재진입 불가합니다 [SWS_FrIf_05033]. 호출은 전송 요청이 수락되는 즉시 E_OK를 반환하며, 그렇지 않은 경우 E_NOT_OK을 반환합니다 [SWS_FrIf_05033].
구성 매개변수 FrIfAllowDynamicLSduLength을 통해 동적 L-SDU 길이가 FALSE(으)로 비활성화된 경우 즉시 PDU(Immediate PDU)에 대해 특정 오류 검사가 수행됩니다 [SWS_FrIf_05757]:
PduInfoPtr에 전달된 길이가 정적으로 구성된 PDU 길이에 대해 검사됩니다 [SWS_FrIf_05757].- 길이 정보가 일치하지 않으면
FrIf_Transmit은 Immediate PDU의 전송을 중단하고E_NOT_OK을 반환합니다 [SWS_FrIf_05757]. - 개발 오류 감지(
FrIfDevErrorDetect == ON)가 활성화되어 있는 경우, 함수는Det_ReportError를 통해 DET 모듈에 개발 오류FRIF_E_INV_PDULENGTH을 보고합니다 [SWS_FrIf_05757].
이 텍스트는 R20-11 사양을 바탕으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 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
서비스 ID 0x13을 갖는 동기 인터페이스 FrIf_SetTransceiverMode은 FlexRay 인터페이스에서 FlexRay 트랜시버 드라이버의 드라이버 함수 FrTrcv_SetTransceiverMode()에 대한 래퍼 역할을 하며 헤더 파일 FrIf.h을 통해 사용할 수 있습니다 [SWS_FrIf_05034]. 이를 통해 상위 계층은 특정 FlexRay 컨트롤러 및 채널에 대해 트랜시버의 동작 모드를 설정할 수 있습니다 [SWS_FrIf_05034].
호출 시 세 개의 매개변수를 전달해야 합니다: FlexRay Communication Controller의 주소 지정을 위한 컨트롤러 인덱스 FrIf_CtrlIdx, 해당 컨트롤러의 유효 범위 내에서 FlexRay 채널을 지정하기 위한 채널 인덱스 FrIf_ChnlIdx, 그리고 FrTrcv_TrcvModeType 타입의 원하는 트랜시버 모드 FrIf_TrcvMode [SWS_FrIf_05034]입니다. 입출력 매개변수나 출력 매개변수는 존재하지 않습니다 [SWS_FrIf_05034]. 매개변수 FrIf_ChnlIdx의 경우 열거형 값 FR_CHANNEL_AB을 어떠한 경우에도 사용해서는 안 된다는 구속력 있는 요구사항이 적용됩니다 [SWS_FrIf_05034].
해당 함수는 재진입 가능(reentrant)으로 명시되어 있으며, 모드 변경을 트랜시버 드라이버로 동기식으로 전달합니다 [SWS_FrIf_05034]. 결과로 상태 Std_ReturnType을 반환합니다: 트랜시버 드라이버의 API 서비스 호출이 성공하여 E_OK을 반환한 경우 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(서비스 ID 0x18)은 FlexRay 인터페이스 내에서 래퍼 역할을 하며 FlexRay 트랜시버 드라이버 [SWS_FrIf_05039]의 API 함수 FrTrcv_ClearTransceiverWakeup() 호출을 캡슐화합니다. 인터페이스는 헤더 파일 FrIf.h를 통해 사용할 수 있습니다 [SWS_FrIf_05039].
호출 시 이 함수는 정확히 두 개의 입력 매개변수를 기대합니다 [SWS_FrIf_05039]:
FrIf_CtrlIdx: 주소를 지정할 FlexRay Communication Controller의 인덱스입니다 [SWS_FrIf_05039].FrIf_ChnlIdx: 컨트롤러 유효 범위 내에서 주소를 지정할 FlexRay 채널의 인덱스입니다FrIf_CtrlIdx[SWS_FrIf_05039].
이 함수에 대해 추가 매개변수(inout 또는 out)는 정의되어 있지 않습니다 [SWS_FrIf_05039].
동시성 및 제약 조건과 관련하여 이 함수는 재진입 가능으로 분류됩니다 [SWS_FrIf_05039]. 중요한 기능적 제한 사항으로, 규격에서는 매개변수 FrIf_ChnlIdx에 대해 열거형 값 FR_CHANNEL_AB을 사용할 수 없도록 규정하고 있습니다 [SWS_FrIf_05039].
작업 결과는 Std_ReturnType(으)로 동기식으로 반환되며 드라이버 서비스의 결과를 직접 반영합니다 [SWS_FrIf_05039]:
E_OK: FlexRay 트랜시버 드라이버의 API 서비스가 성공적으로 실행되었으며E_OK을(를) 반환했습니다 [SWS_FrIf_05039].E_NOT_OK: 드라이버 서비스 호출이 실패했으며E_NOT_OK을(를) 다시 보고했습니다 [SWS_FrIf_05039].
본 사용 지침은 AUTOSAR CP R20-11 사양을 바탕으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 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]. 이 함수는 FlexRay 드라이버의 해당 드라이버 함수 Fr_CancelAbsoluteTimer()에 대한 래퍼 역할을 하며, 헤더 FrIf.h을(를) 통해 사용할 수 있습니다 [SWS_FrIf_05023].
매개변수 및 반환값
호출 시 두 개의 입력 매개변수가 전달됩니다 [SWS_FrIf_05023]:
FrIf_CtrlIdx: 주소를 지정할 FlexRay 컨트롤러의 인덱스.FrIf_AbsTimerIdx: 취소할 절대 타이머의 인덱스입니다.
이 함수는 Std_ReturnType 타입의 상태를 반환합니다[SWS_FrIf_05023]:
E_OK: 기본 FlexRay 드라이버 API 호출이E_OK과(와) 함께 성공적으로 완료되었습니다 [SWS_FrIf_05023].E_NOT_OK: 드라이버 API 호출이 실패했거나(E_NOT_OK반환), 개발 모드(Development Mode)에서 오류가 감지되었습니다 [SWS_FrIf_05023].
동시성 및 제약사항
실행은 서비스 ID 0x1b을(를) 사용하여 동기적으로 이루어집니다 [SWS_FrIf_05023]. 재진입성과 관련하여, 해당 서비스는 서로 다른 FlexRay CC에 대해서는 재진입 가능하지만, 동일한 FlexRay CC에 대해서는 동시에 호출할 수 없습니다 [SWS_FrIf_05023].
이 텍스트는 AUTOSAR Classic R20-11 명세를 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 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]. 이 함수는 FlexRay 드라이버 API의 함수 Fr_DisableAbsoluteTimerIRQ()에 대한 동기식 래퍼 역할을 하며, 주소 지정된 절대 타이머의 인터럽트 생성 비활성화 요청을 드라이버 계층으로 전달합니다 [SWS_FrIf_05031].
호출 컨텍스트 및 매개변수
호출은 서비스 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: FlexRay 드라이버의 API 서비스 호출이 성공하여E_OK을(를) 반환했음을 알립니다 [SWS_FrIf_05031].E_NOT_OK: FlexRay 드라이버의 API 서비스가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 인터페이스 내에서 FlexRay 드라이버의 기본 드라이버 함수 Fr_AllSlots 호출을 위한 래퍼 역할을 합니다 [SWS_FrIf_05020]. 이 함수는 헤더 파일 FrIf.h을(를) 통해 제공되며 서비스 ID 0x33을(를) 갖습니다 [SWS_FrIf_05020]. 유일한 전달 파라미터로 접근할 FlexRay Communication Controller의 논리적 인덱스를 정의하는 FrIf_CtrlIdx이(가) 요구됩니다 [SWS_FrIf_05020]. 이 서비스에는 입출력 파라미터(inout/out)가 제공되지 않습니다 [SWS_FrIf_05020].
반환값으로 이 함수는 다음과 같은 의미를 갖는 상태 Std_ReturnType을 반환합니다[SWS_FrIf_05020].
E_OK: 드라이버 APIFr_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 (열림)
이 텍스트는 AI에 의해 생성되었으며, 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]. 입력 매개변수로 중단할 PDU를 식별하는 TxPduId이(가) 전달됩니다. 실행은 동기식으로 수행되며 Std_ReturnType 타입의 반환값을 제공합니다 [SWS_FrIf_05070]:
E_OK: 대상 모듈에 의해 전송 취소가 성공적으로 수행되었습니다.E_NOT_OK: 중단이 대상 모듈에 의해 거부되었습니다.
동시성 및 제약사항
동시성과 관련하여 FrIf_CancelTransmit은 서로 다른 PDU ID에 대해서는 재진입이 가능하지만, 동일한 PDU ID에 대해서는 재진입이 불가능합니다 TxPduId [SWS_FrIf_05070]. 따라서 동일한 PDU ID에 대해 병렬 컨텍스트에서 호출할 경우 경쟁 상태(Race Condition)를 방지하기 위해 호출자 측에서 외부 동기화가 필요할 것으로 추정됩니다. 질문 Q-38e799ac1564f60f (열림)
오류 처리 및 통합
인터페이스에 특정 DET 또는 DEM 오류 코드는 정의되어 있지 않으며, 중단 실패는 반환값 E_NOT_OK을(를) 통해 즉시 신호됩니다 [SWS_FrIf_05070]. 이 서비스는 서비스 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은 FlexRay 드라이버의 드라이버 함수 Fr_DisableLPdu에 대한 래퍼 역할을 하며, 송신 또는 수신을 위한 L-PDU의 기본 하드웨어 리소스를 비활성화합니다 [SWS_FrIf_05710].
호출 및 매개변수
FrIf_DisableLPdu의 호출은 서비스 ID 0x28를 갖는 인터페이스 FrIf.h을 통해 동기식으로 수행됩니다 [SWS_FrIf_05710]. 이 함수는 두 개의 입력 매개변수를 받습니다:
FrIf_CtrlIdx: FlexRay 인터페이스 컨텍스트 내 FlexRay Communication Controller의 인덱스 [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은(는) 동기식 및 재진입 가능 래퍼로서 하위 FlexRay 트랜시버 드라이버의 API 호출 FrTrcv_EnableTransceiverBranch을(를) 캡슐화합니다 [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: 0부터 시작하는 인덱스를 통해 활성화가 적용될 트랜시버의 구체적인 분기를 결정합니다 [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 명세를 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 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은 래퍼 함수로서 FlexRay 트랜시버 드라이버 [SWS_FrIf_05028]의 서비스 FrTrcv_DisableTransceiverBranch을 캡슐화합니다. 헤더 파일 FrIf.h을 통해 제공되고, 서비스 ID 0x37를 가지며, 능동형 스타 트랜시버의 특정 브랜치를 표적 비활성화하는 데 사용됩니다 [SWS_FrIf_05028].
호출 시 세 개의 입력 매개변수를 전달해야 합니다:
FrIf_CtrlIdx: 주소를 지정할 FlexRay 컨트롤러의 인덱스입니다 [SWS_FrIf_05028].FrIf_ChnlIdx: 컨트롤러 유효 범위 내의 FlexRay 채널입니다. 이때 열거형 값FR_CHANNEL_AB을 사용할 수 없다는 구속력 있는 규정이 적용됩니다 [SWS_FrIf_05028].FrIf_BranchIdx: 작업이 적용될 트랜시버의 해당 브랜치를 식별하는 0 기반 인덱스입니다 [SWS_FrIf_05028].
반환값으로 인터페이스는 Std_ReturnType 타입의 상태를 반환합니다. 트랜시버 드라이버 호출이 성공한 경우 E_OK을(를) 반환하고, 드라이버 서비스가 E_NOT_OK을(를) 보고한 경우 E_NOT_OK을(를) 반환합니다 [SWS_FrIf_05028]. 특정 DET 또는 DEM 오류 메시지는 규격 범위에 문서화되어 있지 않으며, 실패는 하위 드라이버의 동작에서 직접 기인할 것으로 추정됩니다. 질문 Q-52d5e5fedd147532 (열림)
이 텍스트는 AUTOSAR R20-11 사양을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 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은(는) FlexRay 인터페이스(FrIf)에서 L-PDU를 재구성하는 데 사용되며, 호출을 FlexRay 드라이버의 드라이버 인터페이스 Fr_ReconfigLPdu(으)로 직접 전달합니다 [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: 새로운 FlexRay 프레임 ID와 L-PDU의 사이클 필터 메커니즘의 반복 및 오프셋을 정의합니다 [SWS_FrIf_05048].FrIf_ChnlIdx:Fr_ChannelType타입의 FlexRay 채널을 결정합니다 [SWS_FrIf_05048]. 이때 열거형 값FR_CHANNEL_AB은(는) 사용할 수 없도록 엄격히 규정되어 있습니다 [SWS_FrIf_05048].FrIf_PayloadLength및FrIf_HeaderCRC: L-PDU가 설정될 바이트 단위의 페이로드 길이 및 해당 헤더 CRC를 정의합니다 [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은(는) 서비스 ID 0x3b을(를) 갖는 FlexRay 인터페이스의 동기식 서비스를 나타내며 헤더 FrIf.h을(를) 통해 선언됩니다 [SWS_FrIf_05313]. 주요 역할은 래퍼로서 기본 FlexRay 드라이버의 드라이버 함수 Fr_ReadCCConfig()을(를) 호출하여 컨트롤러의 구성 매개변수를 읽는 것입니다 [SWS_FrIf_05313].
인터페이스는 호출 시 세 개의 매개변수를 예상합니다 [SWS_FrIf_05313]:
FrIf_CtrlIdx(입력): 주소 지정할 FlexRay 통신 컨트롤러(CC)의 숫자 인덱스입니다.FrIf_ConfigParamIdx(입력): 값을 쿼리할 특정 구성 매개변수의 인덱스입니다.FrIf_ConfigParamValuePtr(출력): 읽어온 32비트 구성 값이 저장될 메모리 위치에 대한 포인터입니다.
Std_ReturnType 타입의 반환값은 쿼리 결과를 알립니다 [SWS_FrIf_05313]:
E_OK: 드라이버 APIFr_ReadCCConfig()호출이 성공적으로 실행되어E_OK을(를) 반환했습니다.E_NOT_OK: FlexRay 드라이버가E_NOT_OK을(를) 보고했거나 개발 모드(Development Mode)에서 실행 중에 오류가 감지되었습니다.
동시성 및 실행 환경과 관련하여 FrIf_ReadCCConfig은(는) 동일한 FlexRay 컨트롤러에 대해서는 비재진입이지만, 서로 다른 컨트롤러에 대해서는 재진입 가능합니다 [SWS_FrIf_05313]. 따라서 동일한 컨트롤러에 액세스할 때 호출자는 적절한 동기화를 보장해야 합니다. 개발 모드에서 감지된 오류는 아마도 Default Error Tracer(DET)로 전달될 것으로 보입니다. 질문 Q-bfe56460515de4de (열림)
이 사용 지침은 AI에 의해 생성되었으며 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]. 해석:E_NOT_OK에서의 규격 명시FrIf_CtrlIdx은(는) 명칭의 차이에도 불구하고 클러스터 인덱스FrIf_ClstIdx또는 할당된 컨트롤러의 검사를 가리키는 것으로 추정됩니다. 질문 Q-9daba2ff2b1a3ff1 (열림)
동시성 및 통합
이 함수는 재진입 가능으로 선언되어 있으며 서비스 ID 0x4b을(를) 갖습니다. 헤더 파일 FrIf.h을(를) 통해 제공됩니다 [SWS_FrIf_05726]. 호출자는 실행이 동기식으로 이루어진다는 점에 유의해야 합니다. 이 서비스에 대해 DET 또는 DEM을 통한 추가 오류 채널은 나열되어 있지 않습니다.
이 텍스트는 AI에 의해 작성되었으며, 공신력 있는 기준은 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(서비스 ID 0x39)은(는) FlexRay 인터페이스에서 FlexRay 트랜시버 드라이버의 함수 FrTrcv_CheckWakeupByTransceiver()에 대한 동기식 래퍼 역할을 합니다 [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 (열림)
이 텍스트는 AI에 의해 작성되었으며 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].
동시성 및 구성
재진입성과 관련하여 이 함수는 서로 다른 PDU ID에 대해서는 재진입이 가능하지만, 동일한 PDU ID에 대해서는 재진입 방식으로 호출될 수 없습니다 [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.
구성 가능한 콜백 함수 <User_TxConfirmation>은 PDU에 대한 전송 프로세스의 완료를 확인하기 위해 하위 통신 인터페이스 모듈에 의해 호출됩니다 [SWS_FrIf_05046]. 이는 해당 PDU의 전송이 성공했는지 실패했는지를 상위 계층에 동기식으로 보고합니다 [SWS_FrIf_05046].
이 인터페이스는 반환값을 가지지 않으며(void) 두 개의 입력 매개변수를 기대합니다 [SWS_FrIf_05046]:
TxPduId(타입PduIdType): 전송된 PDU의 고유 ID를 나타냅니다 [SWS_FrIf_05046].result(타입Std_ReturnType): 전송 결과를 나타내며, 여기서E_OK은(는) 성공적인 전송을 확인하고E_NOT_OK은(는) PDU 전송 실패를 보고합니다 [SWS_FrIf_05046].
이 함수는 동기식으로 동작합니다 [SWS_FrIf_05046]. 동시성과 관련하여 서로 다른 PDU ID에 대해서는 재진입이 가능하지만, 동일한 PDU ID에 대해서는 재진입이 불가능합니다 TxPduId [SWS_FrIf_05046]. 따라서 동일한 PDU ID에 대한 병렬 확인 호출은 배제되어야 합니다.
E_NOT_OK 외의 특정 오류 코드나 DET 또는 DEM에 대한 별도의 메시지는 이 호출에 대해 명시되어 있지 않습니다 [SWS_FrIf_05046]. 해석: 인터페이스가 구성 가능으로 지정되어 있으므로, 식별자 <User_TxConfirmation>는 상위 계층에서 실제로 구성된 함수 이름의 자리표시자 역할을 하는 것으로 추정됩니다 [SWS_FrIf_05046]. 질문 Q-f2a08258df49b3ec (열림)
이 텍스트는 AI에 의해 작성되었으며 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.
사용
동기식 콜백 함수 <User_TriggerTransmit>은 전송을 위해 상위 계층의 SDU 데이터를 요청하기 위해 호출됩니다 [SWS_FrIf_05047]. 매개변수로 전송할 SDU의 식별자 TxPduId 및 PduInfoType* 타입의 포인터 PduInfoPtr이(가) 전달됩니다 [SWS_FrIf_05047]. 호출자는 PduInfoPtr->SduDataPtr을(를) 통해 대상 버퍼를 제공하고 PduInfoPtr->SduLength에 사용 가능한 버퍼 크기를 지정합니다 [SWS_FrIf_05047].
호출된 상위 계층 모듈은 준비된 데이터가 지정된 버퍼 크기에 맞는지 확인합니다 [SWS_FrIf_05047]:
- 데이터가 맞는 경우 모듈은 이를
PduInfoPtr->SduDataPtr에 복사하고,PduInfoPtr->SduLength을(를) 실제로 복사된 바이트 수로 업데이트하며,E_OK을(를) 반환합니다 [SWS_FrIf_05047]. - 데이터가 맞지 않는 경우 모듈은
PduInfoPtr을(를) 변경하지 않고E_NOT_OK을(를) 반환합니다 [SWS_FrIf_05047].
오류 처리 및 동시성
오류 발생 시(반환값 E_NOT_OK) SDU 데이터는 복사되지 않았습니다. 이 경우 PduInfoPtr은(는) NULL 포인터를 포함하거나 유효하지 않은 데이터를 가리킬 수 있으므로 더 이상 사용해서는 안 됩니다 [SWS_FrIf_05047].
이 인터페이스는 서로 다른 PDU ID에 대해서는 재진입이 가능하지만, 동일한 PDU ID에 대해서는 재진입이 불가능합니다 [SWS_FrIf_05047]. 함수의 사용 가능 여부는 구성 가능합니다 [SWS_FrIf_05047].
이 텍스트는 AI에 의해 작성되었습니다. 모든 정보는 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>은 전반적인 성능 향상을 위해 Communication Controller의 하드웨어별 또는 추가 성능 기능을 지원하도록 FlexRay 인터페이스에서 사용자 정의 통신 작업으로 설계되었습니다 [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 통신 컨트롤러의 하드웨어별 특성 또는 추가적인 성능 기능을 지원하여 통신 성능을 향상시키는 데 있습니다 [SWS_FrIf_05317]. 함수 선언은 헤더 파일 FrIf_Externals.h을 통해 제공됩니다 [SWS_FrIf_05317].
호출 및 매개변수
이 작업은 동기식으로 호출되며 반환값을 제공하지 않습니다(void) [SWS_FrIf_05317]. 입출력 매개변수나 출력 매개변수는 존재하지 않으며, 두 개의 입력 매개변수를 처리합니다 [SWS_FrIf_05317]:
FrIf_CtrlIdx: 지정할 FlexRay 통신 컨트롤러의 인덱스(uint8타입) [SWS_FrIf_05317].FrIf_LPduIdx: 해당 FlexRay 프레임을 식별하기 위한 고유 인덱스(uint16타입) [SWS_FrIf_05317].
동시성 및 제약사항
재진입성과 관련하여, 이 함수는 서로 다른 LPdu 인덱스(FrIf_LPduIdx)에 대해서는 재진입 가능하지만 동일한 LPdu 인덱스에 대해서는 명시적으로 재진입 불가능하도록 지정되어 있습니다 [SWS_FrIf_05317]. 따라서 호출자는 동일한 PDU에 대한 동시 호출이 발생하지 않도록 해야 합니다.
해석: 이 작업은 사용자 정의로 표시되어 있고 FrIf_Externals.h에 배치되어 있으므로, 실제 구현은 사용자 맞춤형 또는 드라이버 확장 형태로 제공되어야 할 것으로 보입니다. 질문 Q-6668832db63b9906 (열림)
이 텍스트는 AI에 의해 작성되었습니다. 모든 내용은 릴리스 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]. 따라서 구현 시 동일한 프레임 인덱스에 대한 동시 호출이 방지되도록 해야 합니다.
오류 처리 및 상호 작용
규격은 이 콜백 인터페이스에 대해 별도의 DET 또는 DEM 메시지 및 특정 오류 코드를 정의하지 않습니다 [SWS_FrIf_91001]. 해석: 상위 계층은 FlexRay 전송 경로에서 직접 발생한 충돌을 기록하거나 처리할 수 있도록 호출을 제공할 것으로 추정됩니다. 질문 Q-fc63c251dbc03307 (열림)
이 텍스트는 AI에 의해 작성되었으며 엄격한 지침에 따라 검토되었습니다. 전문적인 근거는 오로지 규격에서만 발췌되었습니다.
타입 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 (열림)
이 텍스트는 AI에 의해 생성되었으며 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의 상태 표현을 언급하고 있지만, 정의된 리터럴을 고려할 때 이 열거형 타입은 주로 상태 변경(오프라인 또는 온라인)을 지시하기 위한 제어 매개변수로 사용된다는 해석이 유력합니다 [SWS_FrIf_05303]. 페이로드에는 이 타입에 대한 추가 인터페이스, 재진입성 규정 또는 오류 코드가 나열되어 있지 않으므로, 헤더 파일 FrIf.h을 통한 일반적인 포함 규칙이 적용됩니다.
이 텍스트는 AI에 의해 작성되었습니다. 이는 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#c4e98271- Content hash
c4e98271- 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 · 독일어 원문