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
função FrIf_Init [SWS_FrIf_05003] 📄 PDF
void FrIf_Init (const FrIf_ConfigType* FrIf_ConfigPtr);
Initializes the Flex Ray Interface.
A função FrIf_Init serve para a inicialização do módulo FlexRay Interface ([SWS_FrIf_05003]). A chamada ocorre de forma síncrona e é especificada como não reentrante (Non Reentrant) ([SWS_FrIf_05003]).
Parâmetros e valores de retorno
FrIf_ConfigPtr(parâmetro de entrada): Ponteiro base para a estrutura de configuração da FlexRay Interface ([SWS_FrIf_05003]).- Valor de retorno:
void– a função não retorna nenhum valor de retorno ([SWS_FrIf_05003]).
Restrições e condições de chamada
Como FrIf_Init não é reentrante, a função não deve, em momento algum, ser chamada novamente em paralelo ou de forma interruptiva pela mesma ou por outra thread ou tarefa ([SWS_FrIf_05003]). A chamada deve ocorrer no contexto de inicialização do sistema, antes que os serviços regulares da FlexRay Interface sejam utilizados.
Esta nota de uso foi gerada de forma automatizada com base na especificação do AUTOSAR Classic R20-11.
Guia do implementador em breve (complexidade I2)
função FrIf_ControllerInit [SWS_FrIf_05004] 📄 PDF
Std_ReturnType FrIf_ControllerInit (uint8 FrIf_CtrlIdx);
Initialized a Flex Ray CC.
A função síncrona FrIf_ControllerInit serve para a inicialização de um FlexRay Communication Controller (FlexRay CC) [SWS_FrIf_05004]. Ela está disponível através do arquivo de cabeçalho FrIf.h e é identificada através do Service-ID 0x03 [SWS_FrIf_05004].
Através do parâmetro de entrada FrIf_CtrlIdx do tipo de dados uint8 é passado o índice do controlador FlexRay a ser endereçado [SWS_FrIf_05004]. Não existem outros parâmetros de entrada ou saída para esta interface [SWS_FrIf_05004].
O valor de retorno é do tipo Std_ReturnType e reporta o status da inicialização de volta ao chamador [SWS_FrIf_05004]:
E_OK: A chamada do serviço de API do driver FlexRay subjacente foi bem-sucedida e forneceuE_OK[SWS_FrIf_05004].E_NOT_OK: O serviço de API do driver FlexRay retornouE_NOT_OKou foi detectado um erro no modo de desenvolvimento [SWS_FrIf_05004].
Em relação à concorrência, FrIf_ControllerInit é reentrante para índices de controladores diferentes (FrIf_CtrlIdx), porém não é reentrante para valores idênticos de FrIf_CtrlIdx [SWS_FrIf_05004]. Chamadas concorrentes para o mesmo controlador devem, portanto, ser evitadas pelo sistema geral.
Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
função 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().
função FrIf_EnableAbsoluteTimerIRQ [SWS_FrIf_05025] 📄 PDF
Std_ReturnType FrIf_EnableAbsoluteTimerIRQ (uint8 FrIf_CtrlIdx, uint8 FrIf_AbsTimerIdx);
Service FrIf_EnableAbsoluteTimerIRQ.
usar
A função FrIf_EnableAbsoluteTimerIRQ representa um serviço síncrono com o ID de serviço 0x1d, disponibilizado por meio do arquivo de cabeçalho FrIf.h [SWS_FrIf_05025]. Ela atua como um wrapper em torno da interface Fr_EnableAbsoluteTimerIRQ() do driver FlexRay para ativação da interrupção de um temporizador absoluto [SWS_FrIf_05025].
A chamada requer dois parâmetros de entrada [SWS_FrIf_05025]:
FrIf_CtrlIdx: Índice do controlador de comunicação FlexRay (FlexRay CC) a ser endereçado [SWS_FrIf_05025].FrIf_AbsTimerIdx: Índice do temporizador absoluto a ser ativado no controlador endereçado [SWS_FrIf_05025].
Valores de retorno e tratamento de erros
A função retorna um valor de status do tipo Std_ReturnType [SWS_FrIf_05025]:
E_OK: A chamada do serviço de driver subjacente foi bem-sucedida e retornouE_OK[SWS_FrIf_05025].E_NOT_OK: A função do driver retornouE_NOT_OKou foi detectado um erro no modo de desenvolvimento (Development Mode) [SWS_FrIf_05025].
Concorrência e reentrância
Em relação ao contexto de chamada, FrIf_EnableAbsoluteTimerIRQ não é reentrante para o mesmo controlador FlexRay, mas pode ser chamado de forma reentrante para diferentes controladores FlexRay [SWS_FrIf_05025].
Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR CP R20-11.
Guia do implementador em breve (complexidade I1)
função 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()
A função de interface síncrona FrIf_AckAbsoluteTimerIRQ encapsula como wrapper a chamada de API da função de driver Fr_AckAbsoluteTimerIRQ() do driver FlexRay [SWS_FrIf_05029]. Ela possui o ID de serviço 0x21, é disponibilizada por meio do cabeçalho FrIf.h e serve para confirmar uma solicitação de interrupção para um temporizador absoluto de um FlexRay Communication Controller.
Ao chamar a função, devem ser passados dois parâmetros de entrada [SWS_FrIf_05029]:
FrIf_CtrlIdx: índice do FlexRay Communication Controller (CC) a endereçar.FrIf_AbsTimerIdx: Índice do temporizador absoluto específico cuja interrupção deve ser confirmada.
A função fornece um valor de retorno do tipo Std_ReturnType para avaliação do resultado [SWS_FrIf_05029]:
E_OK: A chamada da API do driverFr_AckAbsoluteTimerIRQ()foi executada com sucesso.E_NOT_OK: O driver FlexRay reportouE_NOT_OKna chamada, ou foi detectado um erro no modo de desenvolvimento (Development Mode).
Em relação ao comportamento de concorrência, a função opera de forma síncrona. Chamadas para diferentes FlexRay CCs são reentrantes, enquanto chamadas simultâneas para o mesmo FlexRay CC não são reentrantes e devem ser evitadas [SWS_FrIf_05029].
Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR CP R20-11.
Guia do implementador em breve (complexidade I1)
função FrIf_StartCommunication [SWS_FrIf_05005] 📄 PDF
Std_ReturnType FrIf_StartCommunication (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Start Communication().
A função FrIf_StartCommunication atua como encapsulamento da função do driver FlexRay Fr_StartCommunication() e inicia o estabelecimento da comunicação de um controlador de comunicação FlexRay endereçado [SWS_FrIf_05005].
Utilização e contexto de chamada
A interface é declarada através do cabeçalho FrIf.h e possui o Service-ID 0x04 [SWS_FrIf_05005]. A chamada é processada de forma assíncrona [SWS_FrIf_05005]. Como único parâmetro de entrada serve FrIf_CtrlIdx (tipo uint8), que define o índice do controlador de comunicação FlexRay a ser acionado; parâmetros de entrada/saída ou puramente de saída não existem [SWS_FrIf_05005].
Tratamento de erros e valores de retorno
A função retorna um código de status do tipo Std_ReturnType [SWS_FrIf_05005]:
E_OK: A chamada do serviço de API subjacente no driver FlexRay decorreu com sucesso e retornouE_OK[SWS_FrIf_05005].E_NOT_OK: O serviço de API do driver reportouE_NOT_OKou foi detectado um erro durante a execução no modo de desenvolvimento (Development Mode) [SWS_FrIf_05005].
Simultaneidade e restrições
No que diz respeito à reentrância, FrIf_StartCommunication é reentrante para índices de controladores divergentes entre si (FrIf_CtrlIdx), porém não é reentrante para valores de controladores idênticos [SWS_FrIf_05005]. Módulos chamadores devem, portanto, assegurar em acessos simultâneos que não ocorram chamadas concorrentes para o mesmo controlador.
Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR.
Guia do implementador em breve (complexidade I2)
função FrIf_HaltCommunication [SWS_FrIf_05006] 📄 PDF
Std_ReturnType FrIf_HaltCommunication (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Halt Communication().
A função FrIf_HaltCommunication (Service-ID 0x05) representa no FlexRay Interface (FrIf) um wrapper para a chamada da função de API do driver Fr_HaltCommunication() e é declarada através do cabeçalho FrIf.h [SWS_FrIf_05006]. O serviço é executado com semântica assíncrona [SWS_FrIf_05006]. Como único parâmetro é passado o valor de entrada FrIf_CtrlIdx, que especifica o índice do respectivo FlexRay Communication Controller a ser acessado; parâmetros de entrada/saída ou puramente de saída não estão definidos para este serviço [SWS_FrIf_05006].
O valor de retorno é do tipo Std_ReturnType e sinaliza o resultado da chamada [SWS_FrIf_05006]:
E_OK: A chamada do serviço de API no driver FlexRay foi bem-sucedida e retornouE_OK[SWS_FrIf_05006].E_NOT_OK: A chamada de API do driver FlexRay retornouE_NOT_OKou foi detectado um erro no modo de desenvolvimento (Development Mode) [SWS_FrIf_05006].
No que diz respeito à concorrência, FrIf_HaltCommunication é reentrante para valores diferentes do índice do controlador FrIf_CtrlIdx, porém não é reentrante com valores idênticos para FrIf_CtrlIdx [SWS_FrIf_05006]. Chamadas simultâneas ou interruptivas para o mesmo controlador são, consequentemente, inadmissíveis e devem ser evitadas no contexto do chamador.
Este texto foi gerado por uma IA com base na especificação AUTOSAR CP R20-11.
Guia do implementador em breve (complexidade I1)
função FrIf_AbortCommunication [SWS_FrIf_05007] 📄 PDF
Std_ReturnType FrIf_AbortCommunication (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Abort Communication().
Utilização e contexto de chamada
A função de interface síncrona FrIf_AbortCommunication atua como um invólucro direto para a função de API Fr_AbortCommunication() do driver FlexRay [SWS_FrIf_05007]. Ela está declarada no arquivo de cabeçalho FrIf.h e possui o Service-ID 0x06 [SWS_FrIf_05007].
Por meio do parâmetro de entrada FrIf_CtrlIdx, é indicado o índice do FlexRay Communication Controller a ser acessado [SWS_FrIf_05007]. Parâmetros adicionais de entrada ou de saída não estão definidos para esta interface [SWS_FrIf_05007].
Valores de retorno e tratamento de erros
A função retorna um valor de status do tipo Std_ReturnType [SWS_FrIf_05007]:
E_OK: A chamada do serviço de API do driver FlexRay foi bem-sucedida e retornouE_OK[SWS_FrIf_05007].E_NOT_OK: O serviço de API do driver FlexRay retornouE_NOT_OKou foi detectado um erro no modo de desenvolvimento [SWS_FrIf_05007].
Simultaneidade e restrições
A execução de FrIf_AbortCommunication é síncrona [SWS_FrIf_05007]. A função é reentrante para valores diferentes de FrIf_CtrlIdx, mas não é reentrante para índices idênticos de controlador [SWS_FrIf_05007].
Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR.
Guia do implementador em breve (complexidade I1)
função FrIf_GetState [SWS_FrIf_05170] 📄 PDF
Std_ReturnType FrIf_GetState (uint8 FrIf_ClstIdx, FrIf_StateType* FrIf_StatePtr);
Get current Fr If state.
função FrIf_SetState [SWS_FrIf_05174] 📄 PDF
Std_ReturnType FrIf_SetState (uint8 FrIf_ClstIdx, FrIf_StateTransitionType FrIf_StateTransition);
Requests Fr If state machine transition.
Uso e chamada
A função síncrona FrIf_SetState solicita uma transição de estado na máquina de estados da interface FlexRay [SWS_FrIf_05174]. Como parâmetros, são passados o índice do cluster FrIf_ClstIdx e a transição desejada FrIf_StateTransition. A função retorna E_OK se a chamada foi executada com sucesso e a alteração de estado foi aceita; em caso de erro, é retornado E_NOT_OK [SWS_FrIf_05174].
Tratamento de erros e condições de contorno
A função está definida como não reentrante (Non Reentrant) [SWS_FrIf_05174]. Se o controle de desenvolvimento estiver ativado (FrIfDevErrorDetect == ON) e o parâmetro FrIf_StateTransition contiver um valor inválido, a função reporta o código de erro FRIF_E_INV_FRIF_STATE por meio de Det_ReportError ao módulo DET [SWS_FrIf_05037].
Interação em transições offline
Se FrIf_SetState for chamado com o parâmetro de transição FRIF_STATE_OFFLINE, a interface FlexRay verifica para cada PDU o contador TxConfCounter [SWS_FrIf_05501]. Se esse valor for maior que 0 para uma PDU, o módulo informa a camada superior com a chamada <UL>_TxConfirmation(id, E_NOT_OK) sobre a falha da confirmação pendente [SWS_FrIf_05501].
Este texto foi gerado por um sistema de IA com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I2)
função 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.
função FrIf_SendWUP [SWS_FrIf_05011] 📄 PDF
Std_ReturnType FrIf_SendWUP (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Send WUP().
A função FrIf_SendWUP (Service-ID 0x0a) do módulo FrIf está disponível através do arquivo de cabeçalho FrIf.h e serve como wrapper de interface para a chamada da função de API Fr_SendWUP() do driver FlexRay subjacente [SWS_FrIf_05011].
Utilização e parâmetros
O serviço é executado assincronamente [SWS_FrIf_05011]. Como único parâmetro de passagem serve o parâmetro de entrada FrIf_CtrlIdx do tipo uint8, que especifica o índice do FlexRay Communication Controller (FlexRay CC) a ser endereçado [SWS_FrIf_05011]. Não são utilizados parâmetros inout ou out [SWS_FrIf_05011].
Valores de retorno e tratamento de erros
Como valor de retorno a função fornece um status do tipo Std_ReturnType [SWS_FrIf_05011]:
E_OK: A chamada do serviço de API do driver FlexRay foi executada com sucesso e reportouE_OK[SWS_FrIf_05011].E_NOT_OK: A chamada do serviço de API do driver FlexRay retornouE_NOT_OKou foi detectado um erro no modo de desenvolvimento (Development Mode) [SWS_FrIf_05011].
Concorrência e reentrância
Em relação ao acesso simultâneo, FrIf_SendWUP é reentrante para chamadas com valores diferentes para FrIf_CtrlIdx, porém não é reentrante para valores idênticos de FrIf_CtrlIdx [SWS_FrIf_05011].
Este texto foi gerado automaticamente e baseia-se nas especificações AUTOSAR para o Release R20-11.
Guia do implementador em breve (complexidade I1)
função 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().
função 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.
função FrIf_AllowColdstart [SWS_FrIf_05017] 📄 PDF
Std_ReturnType FrIf_AllowColdstart (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ Allow Coldstart().
Utilização e funcionamento
A função FrIf_AllowColdstart serve como invólucro para a API do driver FlexRay Fr_AllowColdstart() de acordo com [SWS_FrIf_05017]. Ela endereça o FlexRay Communication Controller (CC) a ser acessado por meio do parâmetro de entrada FrIf_CtrlIdx [SWS_FrIf_05017]. A execução da função é especificada como assíncrona [SWS_FrIf_05017].
Valores de retorno e tratamento de erros
O valor de retorno do tipo Std_ReturnType reflete o resultado da execução [SWS_FrIf_05017]:
E_OK: O serviço de API subjacente do driver FlexRay foi chamado com sucesso e retornouE_OK[SWS_FrIf_05017].E_NOT_OK: A chamada do driver falhou (valor de retornoE_NOT_OK) ou um erro foi detectado no modo de desenvolvimento (Development Mode) [SWS_FrIf_05017].
Interpretação: A detecção de erros no Development Mode provavelmente ocorre por meio do módulo Default Error Tracer (DET), embora nenhum ID de erro específico ou verificações estejam documentados no excerto da especificação. Pergunta Q-5dffd71d66731cc9 (aberta)
Simultaneidade e restrições
Em relação à reentrância, FrIf_AllowColdstart não é reentrante para valores idênticos de FrIf_CtrlIdx, mas pode ser chamado em paralelo para diferentes índices de controladores [SWS_FrIf_05017]. Os chamadores devem, portanto, assegurar que chamadas simultâneas para o mesmo controlador sejam sincronizadas. A interface é disponibilizada por meio do cabeçalho FrIf.h [SWS_FrIf_05017].
Esta nota de uso foi gerada por uma IA e baseia-se nos dados de especificação do AUTOSAR CP R20-11.
Guia do implementador em breve (complexidade I1)
função FrIf_GetMacroticksPerCycle [SWS_FrIf_05018] 📄 PDF
uint16 FrIf_GetMacroticksPerCycle (uint8 FrIf_CtrlIdx);
Retrieves the amount of Macroticks per Cycle
função FrIf_GetMacrotickDuration [SWS_FrIf_05019] 📄 PDF
uint16 FrIf_GetMacrotickDuration (uint8 FrIf_CtrlIdx);
Retrieves the Duration of a Macrotick in ns
função FrIf_Transmit [SWS_FrIf_05033] 📄 PDF
Std_ReturnType FrIf_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);
Requests transmission of a PDU.
A função síncrona FrIf_Transmit solicita a transmissão de uma PDU através da interface FlexRay [SWS_FrIf_05033]. Ela recebe o ID da PDU a ser transmitida (TxPduId), bem como um ponteiro para a estrutura PduInfoPtr, que fornece o comprimento da PDU, ponteiros de dados e metadados [SWS_FrIf_05033].
Em relação à concorrência e reentrância, FrIf_Transmit é reentrante para IDs de PDU diferentes, porém não é reentrante para o mesmo ID de PDU [SWS_FrIf_05033]. A chamada retorna E_OK assim que a solicitação de transmissão for aceita; caso contrário, retorna E_NOT_OK [SWS_FrIf_05033].
Uma verificação de erro específica ocorre para PDUs imediatas (Immediate PDUs), caso comprimentos dinâmicos de L-SDU estejam desativados para FALSE por meio do parâmetro de configuração FrIfAllowDynamicLSduLength [SWS_FrIf_05757]:
- O comprimento passado em
PduInfoPtré verificado contra o comprimento de PDU estaticamente configurado [SWS_FrIf_05757]. - Se a indicação de comprimento não coincidir,
FrIf_Transmitaborta a transmissão da Immediate PDU e retornaE_NOT_OK[SWS_FrIf_05757]. - Se a detecção de desenvolvimento (
FrIfDevErrorDetect == ON) estiver ativa, a função reporta o erro de desenvolvimentoFRIF_E_INV_PDULENGTHatravés deDet_ReportErrorao módulo DET [SWS_FrIf_05757].
Este texto foi gerado por uma IA com base na especificação R20-11.
Guia do implementador em breve (complexidade I2)
função 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
A interface síncrona FrIf_SetTransceiverMode com o Service-ID 0x13 atua no FlexRay Interface como wrapper para a função de driver FrTrcv_SetTransceiverMode() do driver do transceptor FlexRay e está disponível através do arquivo de cabeçalho FrIf.h [SWS_FrIf_05034]. Ela possibilita que camadas superiores configurem o modo de operação de um transceptor para um determinado controlador e canal FlexRay [SWS_FrIf_05034].
Durante a chamada, três parâmetros devem ser passados: o índice do controlador FrIf_CtrlIdx para endereçar o FlexRay Communication Controller, o índice do canal FrIf_ChnlIdx para determinar o canal FlexRay no escopo de validade do controlador, bem como o modo de transceiver desejado FrIf_TrcvMode do tipo FrTrcv_TrcvModeType [SWS_FrIf_05034]. Não existem parâmetros de entrada/saída nem de saída [SWS_FrIf_05034]. Para o parâmetro FrIf_ChnlIdx aplica-se a exigência vinculativa de que o valor de enumeração FR_CHANNEL_AB não deve de forma alguma ser utilizado [SWS_FrIf_05034].
A função é especificada como reentrante e encaminha a mudança de modo de forma síncrona ao driver do transceiver [SWS_FrIf_05034]. Como resultado, ela retorna o status Std_ReturnType: informa E_OK se a chamada do serviço de API no driver do transceiver tiver retornado E_OK com sucesso; se essa chamada do driver falhar e retornar E_NOT_OK, também será retornado E_NOT_OK [SWS_FrIf_05034].
Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR.
Guia do implementador em breve (complexidade I2)
função 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.
função 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.
função 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
A função síncrona FrIf_ClearTransceiverWakeup (ID de serviço 0x18) atua como um wrapper dentro da interface FlexRay e encapsula a chamada da função de API FrTrcv_ClearTransceiverWakeup() do driver do transceptor FlexRay [SWS_FrIf_05039]. A interface está disponível por meio do arquivo de cabeçalho FrIf.h [SWS_FrIf_05039].
Ao ser chamada, a função espera exatamente dois parâmetros de entrada [SWS_FrIf_05039]:
FrIf_CtrlIdx: Índice do FlexRay Communication Controller a ser endereçado [SWS_FrIf_05039].FrIf_ChnlIdx: Índice do canal FlexRay a ser acessado no escopo do controladorFrIf_CtrlIdx[SWS_FrIf_05039].
Outros parâmetros (inout ou out) não estão definidos para a função [SWS_FrIf_05039].
Em relação à concorrência e condições de contorno, a função é classificada como reentrante [SWS_FrIf_05039]. Como restrição funcional essencial, a especificação determina que o valor de enumeração FR_CHANNEL_AB não deve ser utilizado para o parâmetro FrIf_ChnlIdx [SWS_FrIf_05039].
O resultado da operação é retornado de forma síncrona como Std_ReturnType e reflete diretamente o resultado do serviço de driver [SWS_FrIf_05039]:
E_OK: O serviço de API do driver do transceptor FlexRay foi executado com sucesso e retornouE_OK[SWS_FrIf_05039].E_NOT_OK: A chamada do serviço de driver falhou e reportouE_NOT_OK[SWS_FrIf_05039].
Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR CP R20-11.
Guia do implementador em breve (complexidade I1)
função 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() .
A função FrIf_CancelAbsoluteTimer serve para cancelar de forma síncrona um temporizador absoluto configurado em um FlexRay Communication Controller (CC) [SWS_FrIf_05023]. Ela funciona como um wrapper em torno da função de driver correspondente Fr_CancelAbsoluteTimer() do FlexRay Driver e está disponível por meio do cabeçalho FrIf.h [SWS_FrIf_05023].
Parâmetros e valores de retorno
Na chamada, são transmitidos dois parâmetros de entrada [SWS_FrIf_05023]:
FrIf_CtrlIdx: Índice do controlador FlexRay a endereçar.FrIf_AbsTimerIdx: índice do temporizador absoluto a ser cancelado.
A função retorna um status do tipo Std_ReturnType [SWS_FrIf_05023]:
E_OK: a chamada subjacente da API do FlexRay Driver foi concluída com sucesso comE_OK[SWS_FrIf_05023].E_NOT_OK: a chamada da API do driver falhou (retornoE_NOT_OK) ou um erro foi detectado no modo de desenvolvimento (Development Mode) [SWS_FrIf_05023].
Simultaneidade e restrições
A execução ocorre de forma síncrona com o Service ID 0x1b [SWS_FrIf_05023]. Em relação à reentrância, o serviço é reentrante para diferentes FlexRay CCs, mas não pode ser chamado concorrentemente para o mesmo FlexRay CC [SWS_FrIf_05023].
Este texto foi gerado por uma IA com base na especificação AUTOSAR Classic R20-11.
Guia do implementador em breve (complexidade I1)
função 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()
função 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().
A função FrIf_DisableAbsoluteTimerIRQ é parte do módulo FlexRay Interface e é disponibilizada por meio do arquivo de cabeçalho FrIf.h [SWS_FrIf_05031]. Ela serve como wrapper síncrono para a função Fr_DisableAbsoluteTimerIRQ() da API do FlexRay Driver e encaminha a requisição de desativação da geração de interrupção do temporizador absoluto endereçado para o nível do driver [SWS_FrIf_05031].
Contexto de chamada e parâmetros
A chamada ocorre de forma síncrona utilizando o Service ID 0x23 [SWS_FrIf_05031]. A interface não possui parâmetros de entrada/saída ou puramente de saída, mas exige dois parâmetros de entrada obrigatórios [SWS_FrIf_05031]:
FrIf_CtrlIdx: índice do FlexRay Communication Controller (CC) a ser acessado [SWS_FrIf_05031].FrIf_AbsTimerIdx: índice do temporizador absoluto a ser configurado [SWS_FrIf_05031].
Valores de retorno e tratamento de erros
A função retorna o status para o chamador por meio do tipo de retorno Std_ReturnType [SWS_FrIf_05031]:
E_OK: sinaliza que a chamada do serviço de API do FlexRay Driver foi bem-sucedida e retornouE_OK[SWS_FrIf_05031].E_NOT_OK: indica que o serviço de API do FlexRay Driver retornouE_NOT_OKou que foi detectado um erro no modo de desenvolvimento (Development Mode) [SWS_FrIf_05031].
Concorrência e reentrância
De acordo com as diretrizes de reentrância, FrIf_DisableAbsoluteTimerIRQ não é reentrante para o mesmo FlexRay Communication Controller, mas é reentrante para diferentes FlexRay CCs [SWS_FrIf_05031]. Chamadas para a mesma instância de controlador não devem, portanto, ocorrer concorrentemente a partir de contextos diferentes sem sincronização.
Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR Classic R20-11.
Guia do implementador em breve (complexidade I1)
função 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.
função FrIf_AllSlots [SWS_FrIf_05020] 📄 PDF
Std_ReturnType FrIf_AllSlots (uint8 FrIf_CtrlIdx);
Wraps the Flex Ray Driver API function Fr_ All Slots
A interface síncrona FrIf_AllSlots serve, dentro do FlexRay Interface, como wrapper para a chamada da função de driver subjacente Fr_AllSlots do FlexRay Driver [SWS_FrIf_05020]. A função é disponibilizada por meio do arquivo de cabeçalho FrIf.h e possui o Service ID 0x33 [SWS_FrIf_05020]. Como único parâmetro de passagem, espera-se FrIf_CtrlIdx, o qual define o índice lógico do FlexRay Communication Controller a ser acessado [SWS_FrIf_05020]. Parâmetros de entrada e saída (inout/out) não estão previstos para este serviço [SWS_FrIf_05020].
Como valor de retorno, a função fornece o estado Std_ReturnType com os seguintes significados [SWS_FrIf_05020]:
E_OK: a chamada da API do driverFr_AllSlotsfoi bem-sucedida e retornouE_OK[SWS_FrIf_05020].E_NOT_OK: a chamada do FlexRay Driver falhou ou retornouE_NOT_OK, ou um erro foi detectado durante a execução em modo de desenvolvimento [SWS_FrIf_05020].
Em relação ao comportamento em tempo de execução e à concorrência, FrIf_AllSlots está especificado como não reentrante (non reentrant) [SWS_FrIf_05020]. A instância chamadora deve, portanto, garantir que chamadas simultâneas ou sobrepostas para o controlador afetado estejam excluídas. Interpretação: Provavelmente, a chamada deve ocorrer a partir de um contexto de tarefa protegido, pois a interface não disponibiliza um gerenciamento próprio de reentrância em caso de acesso paralelo. Pergunta Q-e4ce542c60b470c8 (aberta)
Este texto foi gerado por uma IA; o padrão AUTOSAR é a referência determinante.
Guia do implementador em breve (complexidade I1)
função 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.
função 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.
função 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.
função 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.
função 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.
função 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.
usar
A função síncrona FrIf_CancelTransmit solicita o cancelamento de uma transmissão de PDU em andamento em um módulo de comunicação subjacente [SWS_FrIf_05070]. Como parâmetro de entrada, é passado TxPduId, que identifica a PDU a ser cancelada. A execução ocorre de forma síncrona e fornece um valor de retorno do tipo Std_ReturnType [SWS_FrIf_05070]:
E_OK: O cancelamento da transmissão foi executado com sucesso pelo módulo de destino.E_NOT_OK: O cancelamento foi rejeitado pelo módulo de destino.
Simultaneidade e restrições
Em relação à concorrência, FrIf_CancelTransmit é reentrante para diferentes IDs de PDU, mas não reentrante para o mesmo TxPduId [SWS_FrIf_05070]. Em chamadas a partir de contextos paralelos para o mesmo ID de PDU, uma sincronização externa provavelmente deve ser necessária por parte do chamador para evitar race conditions. Pergunta Q-38e799ac1564f60f (aberta)
Tratamento de erros e integração
Códigos de erro específicos de DET ou DEM não estão definidos na interface; a falha de um cancelamento é sinalizada diretamente por meio do valor de retorno E_NOT_OK [SWS_FrIf_05070]. O serviço possui o ID de serviço 0x4a e é disponibilizado por meio do arquivo de cabeçalho FrIf.h [SWS_FrIf_05070].
Esta nota de utilização foi gerada automaticamente com base na especificação.
Guia do implementador em breve (complexidade I2)
função 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.
A função FrIf_DisableLPdu serve como wrapper para a função de driver Fr_DisableLPdu do driver FlexRay e desativa o recurso de hardware subjacente de uma L-PDU para a transmissão ou a recepção [SWS_FrIf_05710].
Chamada e parâmetros
A chamada de FrIf_DisableLPdu ocorre de forma síncrona através da interface FrIf.h com o service ID 0x28 [SWS_FrIf_05710]. A função espera dois parâmetros de entrada:
FrIf_CtrlIdx: índice do FlexRay Communication Controller no contexto da FlexRay Interface [SWS_FrIf_05710].FrIf_LPduIdx: índice exclusivo para a identificação do frame FlexRay afetado [SWS_FrIf_05710].
Valores de retorno e tratamento de erros
A função retorna como resultado um status do tipo Std_ReturnType [SWS_FrIf_05710]:
E_OK: A chamada de API foi concluída com sucesso [SWS_FrIf_05710].E_NOT_OK: a chamada de API foi abortada devido a erros [SWS_FrIf_05710].
Simultaneidade e restrições
Em relação ao comportamento de concorrência, FrIf_DisableLPdu é especificada como não reentrante para o mesmo dispositivo (Non Reentrant for the same device) [SWS_FrIf_05710]. Chamadas paralelas para o mesmo controlador ou para o mesmo dispositivo devem, portanto, ser evitadas ou sincronizadas pelo chamador.
Este texto foi gerado automaticamente e baseia-se exclusivamente nas informações da especificação.
Guia do implementador em breve (complexidade I1)
função 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.
função 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.
Como wrapper síncrono e reentrante, a função FrIf_EnableTransceiverBranch encapsula a chamada de API FrTrcv_EnableTransceiverBranch do driver de transceptor FlexRay subjacente [SWS_FrIf_05085]. Através desta interface, uma ramificação específica de um transceptor, por exemplo no contexto de uma estrela ativa, é ativada de forma direcionada [SWS_FrIf_05085]. A declaração da função e os tipos associados são disponibilizados através do arquivo de cabeçalho FrIf.h [SWS_FrIf_05085].
Parâmetros e condições de chamada
Na chamada, três parâmetros de entrada devem ser passados [SWS_FrIf_05085]:
FrIf_CtrlIdx: Endereça o índice do respectivo FlexRay Communication Controller [SWS_FrIf_05085].FrIf_ChnlIdx: Especifica o canal FlexRay dentro do escopo de validade do controladorFrIf_CtrlIdx[SWS_FrIf_05085]. Aplica-se aqui a restrição obrigatória de que o valor enumFR_CHANNEL_ABnão deve ser utilizado [SWS_FrIf_05085].FrIf_BranchIdx: Determina, através de um índice baseado em zero, a ramificação concreta do transceptor à qual a ativação é aplicada [SWS_FrIf_05085].
Valores de retorno
A função retorna um valor de status do tipo Std_ReturnType, que mapeia diretamente o resultado da chamada de driver encaminhada [SWS_FrIf_05085]:
E_OK: A chamada do serviço de driverFrTrcv_EnableTransceiverBranchfoi bem-sucedida e reportouE_OKde volta [SWS_FrIf_05085].E_NOT_OK: A chamada do serviço de driver reportouE_NOT_OK[SWS_FrIf_05085].
Este texto foi gerado por uma IA com base na especificação AUTOSAR CP R20-11.
Guia do implementador em breve (complexidade I1)
função 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.
A função síncrona e reentrante FrIf_DisableTransceiverBranch encapsula, como função wrapper, o serviço FrTrcv_DisableTransceiverBranch do driver do transceptor FlexRay [SWS_FrIf_05028]. Ela é disponibilizada por meio do arquivo de cabeçalho FrIf.h, possui o ID de serviço 0x37 e destina-se a desativar pontualmente uma ramificação específica de um transceptor estrela ativo [SWS_FrIf_05028].
Na chamada, devem ser passados três parâmetros de entrada:
FrIf_CtrlIdx: Índice do controlador FlexRay a ser endereçado [SWS_FrIf_05028].FrIf_ChnlIdx: Canal FlexRay no escopo do controlador. Aplica-se aqui a exigência obrigatória de que o valor de enumFR_CHANNEL_ABnão deve ser utilizado [SWS_FrIf_05028].FrIf_BranchIdx: Índice baseado em zero que identifica a respectiva ramificação do transceptor sobre a qual a operação deve ser aplicada [SWS_FrIf_05028].
Como valor de retorno, a interface retorna um status do tipo Std_ReturnType. Ela retorna E_OK se a chamada ao driver do transceptor foi bem-sucedida, e E_NOT_OK caso o serviço de driver tenha reportado E_NOT_OK [SWS_FrIf_05028]. Mensagens de erro específicas de DET ou DEM não estão documentadas no escopo da especificação; uma falha provavelmente resulta diretamente do comportamento do driver subjacente. Pergunta Q-52d5e5fedd147532 (aberta)
Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I2)
função 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.
A função síncrona FrIf_ReconfigLPdu serve para a reconfiguração de uma L-PDU na FlexRay Interface (FrIf) e encaminha a chamada diretamente para a interface de driver Fr_ReconfigLPdu do driver FlexRay [SWS_FrIf_05048]. A interface é disponibilizada através do cabeçalho FrIf.h [SWS_FrIf_05048].
Parâmetros e restrições de configuração
FrIf_CtrlIdx: Endereça o índice do controlador de comunicação FlexRay dentro do driver FlexRay [SWS_FrIf_05048].FrIf_LPduIdx: Determina o índice exclusivo para a identificação do frame FlexRay a ser configurado [SWS_FrIf_05048].FrIf_FrameId,FrIf_CycleRepetition,FrIf_CycleOffset: Definem o novo ID de frame FlexRay, bem como a repetição e o deslocamento do mecanismo de filtro de ciclo da L-PDU [SWS_FrIf_05048].FrIf_ChnlIdx: Determina o canal FlexRay do tipoFr_ChannelType[SWS_FrIf_05048]. Aqui é estritamente estipulado que o valor enumFR_CHANNEL_ABnão deve ser utilizado [SWS_FrIf_05048].FrIf_PayloadLengtheFrIf_HeaderCRC: Definem o comprimento dos dados úteis em bytes, bem como o CRC de cabeçalho associado, para os quais a L-PDU deve ser ajustada [SWS_FrIf_05048].
Valores de retorno e contexto de execução
O valor de retorno do tipo Std_ReturnType indica o resultado da reconfiguração: E_OK sinaliza a realização bem-sucedida da chamada de API, enquanto E_NOT_OK indica uma interrupção por erro [SWS_FrIf_05048].
A função é síncrona e especificada como não reentrante (Non Reentrant) [SWS_FrIf_05048]. Consequentemente, não deve ser chamada concorrentemente.
Esta nota de uso baseia-se na especificação AUTOSAR Classic R20-11.
Guia do implementador em breve (complexidade I1)
função 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
função FrIf_GetVersionInfo [SWS_FrIf_05002] 📄 PDF
void FrIf_GetVersionInfo (Std_VersionInfoType* FrIf_VersionInfoPtr);
Returns the version information of this module.
função 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().
A função FrIf_ReadCCConfig representa um serviço síncrono da FlexRay Interface com o service ID 0x3b e está declarada através do cabeçalho FrIf.h [SWS_FrIf_05313]. Sua tarefa primária consiste em atuar como wrapper chamando a função de driver Fr_ReadCCConfig() do driver FlexRay subjacente para ler parâmetros de configuração de um controlador [SWS_FrIf_05313].
A interface aguarda três parâmetros na chamada [SWS_FrIf_05313]:
FrIf_CtrlIdx(entrada): O índice numérico do controlador de comunicação (CC) FlexRay a ser acessado.FrIf_ConfigParamIdx(entrada): O índice do parâmetro de configuração específico cujo valor deve ser consultado.FrIf_ConfigParamValuePtr(saída): Um ponteiro para a posição de memória na qual o valor de configuração de 32 bits lido é armazenado.
O valor de retorno do tipo Std_ReturnType sinaliza o resultado da consulta [SWS_FrIf_05313]:
E_OK: A chamada da API de driverFr_ReadCCConfig()foi executada com sucesso e retornouE_OK.E_NOT_OK: O driver FlexRay reportouE_NOT_OKou foi detectado um erro durante a execução no modo de desenvolvimento (Development Mode).
Em relação à concorrência e ao ambiente de execução, FrIf_ReadCCConfig é não reentrante para o mesmo controlador FlexRay, porém reentrante para controladores diferentes [SWS_FrIf_05313]. Em acessos ao mesmo controlador, o chamador deve, portanto, garantir uma sincronização adequada. Um erro detectado no modo de desenvolvimento provavelmente deve ser encaminhado ao Default Error Tracer (DET). Pergunta Q-bfe56460515de4de (aberta)
Esta nota de uso foi gerada por uma IA e baseia-se exclusivamente nos dados de especificação do AUTOSAR Classic Release R20-11.
Guia do implementador em breve (complexidade I1)
função 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.
Utilização e semântica
A função síncrona FrIf_EnableBusMirroring comuta o espelhamento de barramento para todos os controladores FlexRay conectados ao cluster FlexRay fornecido [SWS_FrIf_05726]. O respectivo cluster é endereçado por meio do parâmetro FrIf_ClstIdx. O parâmetro booleano FrIf_MirroringActive determina o modo: com a passagem de TRUE, a interface Mirror_ReportFlexRayFrame é chamada para cada frame recebido ou enviado nos controladores; com FALSE, o encaminhamento dos frames para o módulo Mirror é desativado [SWS_FrIf_05726].
Valores de retorno e tratamento de erros
A chamada da função retorna um status do tipo Std_ReturnType [SWS_FrIf_05726]:
E_OK: O modo de espelhamento para o cluster especificado foi atualizado com sucesso [SWS_FrIf_05726].E_NOT_OK: A comutação foi rejeitada se a função de espelhamento estiver globalmente desativada (parâmetro de configuraçãoFrIfBusMirroringSupport) ou se houver um índice inválido [SWS_FrIf_05726]. Interpretação: A indicação de especificaçãoFrIf_CtrlIdxemE_NOT_OKprovavelmente se refere, apesar da designação divergente, à verificação do índice de clusterFrIf_ClstIdxou dos controladores atribuídos. Pergunta Q-9daba2ff2b1a3ff1 (aberta)
Simultaneidade e integração
A função está declarada como reentrante e possui o ID de serviço 0x4b; ela é disponibilizada por meio do arquivo de cabeçalho FrIf.h [SWS_FrIf_05726]. Os chamadores devem observar que a execução ocorre de forma síncrona. Canais de erro adicionais via DET ou DEM não estão listados para este serviço.
Este texto foi gerado por uma IA; prevalece a especificação AUTOSAR.
Guia do implementador em breve (complexidade I2)
função 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.
Utilização e contexto de chamada
A função FrIf_CheckWakeupByTransceiver (Service ID 0x39) funciona no FlexRay Interface como wrapper síncrono para a função FrTrcv_CheckWakeupByTransceiver() do driver de transceptor FlexRay [SWS_FrIf_05041]. Ela é disponibilizada por meio do cabeçalho FrIf.h e não possui valor de retorno [SWS_FrIf_05041].
Para o endereçamento da respectiva instância de hardware, a interface exige dois parâmetros obrigatórios [SWS_FrIf_05041]:
FrIf_CtrlIdx(parâmetro de entrada,uint8): índice do FlexRay Communication Controller a ser endereçado [SWS_FrIf_05041].FrIf_ChnlIdx(parâmetro de entrada,Fr_ChannelType): índice do canal FlexRay a ser acessado dentro do escopo de validade do controlador especificadoFrIf_CtrlIdx[SWS_FrIf_05041].
Simultaneidade e restrições
A especificação classifica a interface como reentrante, de modo que chamadas síncronas podem ser emitidas concorrentemente [SWS_FrIf_05041].
Existe uma restrição estrita de aplicação para o parâmetro de canal FrIf_ChnlIdx: o valor de enumeração FR_CHANNEL_AB não pode ser transmitido [SWS_FrIf_05041]. Interpretação: Isso provavelmente significa que o driver de transceptor subjacente não suporta uma verificação combinada de wakeup de ambos os canais em uma única chamada e que sistemas com dois canais FlexRay devem, em vez disso, ser verificados sequencialmente ou separadamente por canal. Pergunta Q-a30cf39f0d3ca295 (aberta)
Este texto foi elaborado por uma IA e baseia-se no AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
função <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.
A função de callback <User_RxIndication> serve para sinalizar uma PDU recebida a partir da camada de interface de comunicação subjacente [SWS_FrIf_05045]. Interpretação: O identificador provavelmente representa um callback configurável de uma camada superior que é notificado na chegada de dados FlexRay. Pergunta Q-a9037bc7502dd9ea (aberta)
Utilização e parâmetros
A execução ocorre de forma síncrona sem valor de retorno (void) [SWS_FrIf_05045]. Na chamada, são passados dois parâmetros de entrada [SWS_FrIf_05045]:
RxPduId(PduIdType): Identificador único da PDU recebida [SWS_FrIf_05045].PduInfoPtr(const PduInfoType*): Ponteiro para uma estrutura com o comprimento da PDU recebida (SduLength), um ponteiro para o buffer com os dados úteis (SduDataPtr), bem como metadados associados [SWS_FrIf_05045].
Simultaneidade e configuração
Em relação à reentrância, a função é reentrante para diferentes IDs de PDU, mas não deve ser chamada de forma reentrante para o mesmo ID de PDU [SWS_FrIf_05045]. A interface está disponível no módulo como configurável ("Available via configurable") [SWS_FrIf_05045]. Códigos de erro específicos, valores de retorno ou notificações ao DET e DEM não estão definidos nas fontes para esta interface [SWS_FrIf_05045].
Este texto foi gerado automaticamente. Todas as informações baseiam-se exclusivamente nos dados de especificação do módulo FrIf.
função <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.
A função de callback configurável <User_TxConfirmation> é chamada pelo módulo de interface de comunicação subjacente para confirmar a conclusão de um processo de envio de uma PDU [SWS_FrIf_05046]. Ela reporta à camada superior de forma síncrona se a transmissão da respectiva PDU ocorreu com sucesso ou falhou [SWS_FrIf_05046].
A interface não possui valor de retorno (void) e espera dois parâmetros de entrada [SWS_FrIf_05046]:
TxPduId(tipoPduIdType): Designa o ID exclusivo da PDU transmitida [SWS_FrIf_05046].result(tipoStd_ReturnType): Indica o resultado da transmissão, ondeE_OKconfirma a transmissão bem-sucedida eE_NOT_OKreporta a falha na transmissão da PDU [SWS_FrIf_05046].
A função opera de forma síncrona [SWS_FrIf_05046]. Quanto à concorrência, ela é reentrante para diferentes IDs de PDU, mas não é reentrante para o mesmo TxPduId [SWS_FrIf_05046]. Chamadas de confirmação paralelas para IDs de PDU idênticos devem, portanto, ser excluídas.
Códigos de erro específicos além de E_NOT_OK ou mensagens separadas para DET ou DEM não são especificados para esta chamada [SWS_FrIf_05046]. Interpretação: Como a interface é indicada como configurável, o identificador <User_TxConfirmation> provavelmente serve como um placeholder para o nome de função efetivamente configurado na camada superior [SWS_FrIf_05046]. Pergunta Q-f2a08258df49b3ec (aberta)
Este texto foi gerado por uma IA e serve como auxílio à especificação AUTOSAR.
função <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.
usar
A função de callback síncrona <User_TriggerTransmit> é chamada para solicitar dados de SDU de uma camada superior para transmissão [SWS_FrIf_05047]. Como parâmetros, são passados o identificador TxPduId da SDU a ser enviada e o ponteiro PduInfoPtr do tipo PduInfoType* [SWS_FrIf_05047]. O chamador fornece um buffer de destino por meio de PduInfoPtr->SduDataPtr e especifica em PduInfoPtr->SduLength o tamanho do buffer disponível [SWS_FrIf_05047].
O módulo chamado da camada superior verifica se os dados disponíveis cabem no tamanho de buffer especificado [SWS_FrIf_05047]:
- Se os dados couberem, o módulo os copia para
PduInfoPtr->SduDataPtr, atualizaPduInfoPtr->SduLengthpara a quantidade de bytes efetivamente copiados e retornaE_OK[SWS_FrIf_05047]. - Se os dados não couberem, o módulo retorna
E_NOT_OKsem alterarPduInfoPtr[SWS_FrIf_05047].
Tratamento de erros e simultaneidade
Em caso de erro (valor de retorno E_NOT_OK), nenhum dado de SDU foi copiado. Nesse caso, PduInfoPtr não deve continuar a ser utilizado, pois pode conter um ponteiro NULL ou referenciar dados inválidos [SWS_FrIf_05047].
A interface é reentrante para diferentes IDs de PDU, mas não é reentrante para o mesmo ID de PDU [SWS_FrIf_05047]. A disponibilidade da função é configurável [SWS_FrIf_05047].
Este texto foi gerado por uma IA. Todas as informações baseiam-se exclusivamente nas especificações da release AUTOSAR R20-11.
função <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.
A função <Free_Op_A> foi concebida como uma operação de comunicação definida pelo usuário na interface FlexRay para suportar recursos específicos de hardware ou adicionais de desempenho do Communication Controller para o aumento do desempenho geral [SWS_FrIf_05316]. A declaração desta interface é disponibilizada por meio do cabeçalho FrIf_Externals.h [SWS_FrIf_05316].
Para a chamada, são prescritos dois parâmetros funcionais de entrada [SWS_FrIf_05316]:
FrIf_CtrlIdx(tipouint8): Identifica como índice o FlexRay Communication Controller concreto a ser acessado [SWS_FrIf_05316].FrIf_LPduIdx(tipouint16): Serve como índice exclusivo para a identificação do respectivo frame FlexRay [SWS_FrIf_05316].
A operação é executada de forma síncrona e não possui valor de retorno (void); parâmetros de entrada e saída também não estão previstos [SWS_FrIf_05316]. No que diz respeito à concorrência e ao contexto de chamada, a função é reentrante para diferentes valores de FrIf_LPduIdx, mas explicitamente não reentrante no uso do mesmo índice FrIf_LPduIdx [SWS_FrIf_05316].
Códigos de erro específicos e mecanismos para monitoramento de erros por meio do módulo Default Error Tracer (DET) ou Diagnostic Event Manager (DEM) não estão indicados na especificação [SWS_FrIf_05316]. Os componentes chamadores devem, portanto, assegurar antes da execução que não ocorram acessos concorrentes ao mesmo índice de frame [SWS_FrIf_05316].
Esta nota de uso foi criada de forma automatizada com base na especificação AUTOSAR.
função <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.
A função definida pelo usuário <Free_Op_B> serve para a execução de operações de comunicação específicas do usuário no FlexRay Interface [SWS_FrIf_05317]. Seu propósito é suportar características de desempenho específicas do hardware ou adicionais do FlexRay Communication Controller para aumentar o desempenho da comunicação [SWS_FrIf_05317]. A declaração da função é disponibilizada por meio do arquivo de cabeçalho FrIf_Externals.h [SWS_FrIf_05317].
Chamada e parâmetros
A operação é chamada de forma síncrona e não fornece valor de retorno (void) [SWS_FrIf_05317]. Ela processa dois parâmetros de entrada, enquanto não existem parâmetros de entrada/saída nem de saída [SWS_FrIf_05317]:
FrIf_CtrlIdx: índice do FlexRay Communication Controller a ser endereçado (tipouint8) [SWS_FrIf_05317].FrIf_LPduIdx: índice exclusivo para identificação do respectivo frame FlexRay (tipouint16) [SWS_FrIf_05317].
Simultaneidade e restrições
Em relação à reentrância, a função é especificada como reentrante para índices de LPdu diferentes (FrIf_LPduIdx), porém explicitamente como não reentrante para o mesmo índice de LPdu [SWS_FrIf_05317]. Os chamadores devem, portanto, assegurar que chamadas simultâneas para a mesma PDU não ocorram.
Interpretação: Como a operação é marcada como definida pelo usuário e alocada em FrIf_Externals.h, a implementação real provavelmente deve ser fornecida de forma específica pelo usuário ou estendendo o driver. Pergunta Q-6668832db63b9906 (aberta)
Este texto foi criado por uma IA. Todas as informações baseiam-se exclusivamente nas especificações do Release R20-11.
função <UL_TxConflictNotification> [SWS_FrIf_91001] 📄 PDF
void <UL_TxConflictNotification> (uint8 FrIf_CtrlIdx, uint16 FrIf_LPduIdx);
Notification in case a Tx Conflict has been detected.
usar
A função de notificação <UL_ Tx Conflict Notification> é chamada assim que for constatado um conflito de transmissão (Tx Conflict) na interface FlexRay [SWS_FrIf_91001]. A declaração desta interface é disponibilizada por meio do arquivo de cabeçalho Fr If_ Externals.h [SWS_FrIf_91001].
A função não possui valor de retorno e recebe dois parâmetros de entrada [SWS_FrIf_91001]:
Fr If_ Ctrl Idx: Identificador do FlexRay Communication Controller endereçado [SWS_FrIf_91001].Fr If_ LPdu Idx: Identificador do frame FlexRay transmitido afetado [SWS_FrIf_91001].
Simultaneidade e restrições
A chamada ocorre com semântica síncrona [SWS_FrIf_91001]. Em relação à concorrência, a execução é reentrante para diferentes índices de Fr If_ LPdu Idx, mas explicitamente não reentrante para o mesmo índice de LPdu [SWS_FrIf_91001]. Na implementação, deve-se, portanto, assegurar que chamadas simultâneas para o mesmo índice de frame sejam evitadas.
Tratamento de erros e interação
A especificação não define mensagens separadas de DET ou DEM nem códigos de erro específicos para esta interface de callback [SWS_FrIf_91001]. Interpretação: A camada superior provavelmente disponibiliza a chamada para poder registrar ou tratar conflitos ocorridos imediatamente no enlace de transmissão FlexRay. Pergunta Q-fc63c251dbc03307 (aberta)
Este texto foi gerado por uma IA e verificado de acordo com diretrizes fixas. As evidências técnicas provêm exclusivamente da especificação.
tipo FrIf_ConfigType [SWS_FrIf_05301] 📄 PDF
This type contains the implementation - specific post build time configuration structure. Only pointers of this type are allowed.
tipo FrIf_StateType [SWS_FrIf_05755] 📄 PDF
Variables of this type are used to represent the Fr If_ State of a Flex Ray CC.
Utilização e gama de valores
O tipo de enumeração FrIf_StateType é definido no arquivo de cabeçalho FrIf.h e serve, na FlexRay Interface, para mapear o estado operacional atual de um FlexRay Communication Controller (FlexRay CC) [SWS_FrIf_05755]. Variáveis desse tipo registram se um controlador está pronto para a operação de comunicação e se há sincronização com o cluster FlexRay [SWS_FrIf_05755].
A faixa de valores compreende dois estados definidos [SWS_FrIf_05755]:
FRIF_STATE_OFFLINE: O FlexRay CC não está pronto para comunicação e o cluster FlexRay não está sincronizado [SWS_FrIf_05755].FRIF_STATE_ONLINE: O FlexRay CC está pronto para comunicação e o cluster FlexRay está sincronizado [SWS_FrIf_05755].
Integração e condições de contorno
Os estados refletem fases fundamentais de comunicação: enquanto FRIF_STATE_OFFLINE estiver presente, nenhuma comunicação regular de cluster pode ocorrer por meio do controlador, enquanto FRIF_STATE_ONLINE caracteriza a operação sincronizada de envio e recepção [SWS_FrIf_05755]. Como o excerto da especificação não menciona outras assinaturas de API ou mensagens de erro, o tipo provavelmente é utilizado principalmente em consultas de status ou transições de estado da FlexRay Interface. Pergunta Q-071cd300dcaa0a3b (aberta)
Este texto foi gerado por uma IA e baseia-se na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
tipo FrIf_StateTransitionType [SWS_FrIf_05303] 📄 PDF
Variables of this type are used to represent the Fr If_ State of a Flex Ray CC.
O tipo de enumeração FrIf_StateTransitionType é disponibilizado por meio do arquivo de cabeçalho FrIf.h e serve, de acordo com [SWS_FrIf_05303], para a representação ou solicitação de transições de estado para um FlexRay Communication Controller (FlexRay CC).
Utilização e gama de valores
Variáveis desse tipo assumem valores para solicitar mudanças de estado direcionadas de um FlexRay CC [SWS_FrIf_05303]. A faixa de valores abrange os seguintes literais:
FRIF_GOTO_OFFLINE: Literal para solicitar uma transição para o estadoFRIF_STATE_OFFLINE[SWS_FrIf_05303].FRIF_GOTO_ONLINE: Literal para solicitar uma transição para o estadoFRIF_STATE_ONLINE[SWS_FrIf_05303].
Contexto e interação
Embora a descrição formal do tipo fale da representação do estado de um FlexRay CC, os literais definidos sugerem a interpretação de que este tipo de enumeração serve primariamente como parâmetro de controle para a solicitação de mudanças de estado (offline ou online) [SWS_FrIf_05303]. Como o payload não lista outras interfaces, diretrizes de reentrância ou códigos de erro para este tipo, aplicam-se as regras gerais de inclusão por meio do arquivo de cabeçalho FrIf.h.
Este texto foi gerado por uma IA. Ele baseia-se no AUTOSAR R20-11 e no requisito [SWS_FrIf_05303].
Guia do implementador em breve (complexidade 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#2621c608- Content hash
2621c608- 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 · Original em alemão