DEENESPTFRRUARHIKOZHNL

FlexRay Transceiver Driver (FrTrcv)

ModulFrTrcv (FlexRay Transceiver Driver)
BSW-Modul-ID71
Standard-Header#include "FrTrcv.h"
SWS-SpezifikationAUTOSAR_SWS_FlexRayTransceiverDriver.pdf
ClusterFlexRay

Guía del móduloGENERADO POR IA

Controla el hardware del transceptor FlexRay: establece los modos de funcionamiento, detecta eventos de activación y notifica errores de bus.
GENERADO POR IA no revisado Modelo: claude-opus-5-5 · Esfuerzo: high · Temperatura: no controlable · Prompt: d2a3c22cd47c Procedencia Preguntas abiertas (6)
Ancla causal: R20-11 Válido desde R20-11 Sintetizado para esta versión de especificación.
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Controla el hardware del transceptor FlexRay: establece los modos de funcionamiento, detecta eventos de activación y notifica errores de bus.

El controlador del transceptor FlexRay controla los componentes transceptores de una ECU mediante Dio o Spi y ofrece en ACTIVE los modos NORMAL, RECEIVEONLY, STANDBY y SLEEP [SWS_FrTrcv_00481]. Establece y lee modos, detecta eventos de activación mediante sondeo cíclico o notificación, los notifica a EcuM y proporciona el motivo de activación. En estrellas activas, consulta los errores de bus por rama y desconecta o conecta ramas. Si falla un cambio de modo, devuelve E_NOT_OK y deja inalterado el estado anterior [SWS_FrTrcv_00323].

El controlador del transceptor FlexRay controla los componentes transceptores de una ECU. Direcciona cada componente mediante el índice basado en cero FrTrcv_TrcvIdx [SWS_FrTrcv_00323]. Hacia abajo, accede al hardware a través de Dio o Spi según la configuración SWS FrTrcv Fig. 10.4 p. 77. Además, utiliza Icu, EcuM, Dem y Det [SWS_FrTrcv_00334]. Hacia arriba, es de suponer que FrIf utilice los servicios principalmente por encargo del FlexRay State Manager (interpretación) SWS FrSM p. 20. Pregunta (abierta)

kontext FrSM FrSM FrIf FrIf FrSM->FrIf FrIf_GetTransceiverWUReason u. a. FrTrcv FrTrcv (FlexRay-Transceivertreiber) FrIf->FrTrcv Modus, Weckgrund, Zweige (Interpretation) EcuM EcuM EcuM->FrTrcv FrTrcv_Init (Interpretation) SchM BSW-Scheduler SchM->FrTrcv FrTrcv_MainFunction FrTrcv->EcuM EcuM_SetWakeupEvent Dio Dio FrTrcv->Dio Dio-Zugriff (FrTrcvAccess) Spi Spi FrTrcv->Spi SPI-Sequenz (FrTrcvAccess) Icu Icu FrTrcv->Icu Icu_Enable/DisableNotification Tm Tm FrTrcv->Tm Tm_BusyWait1us16bit Dem DEM FrTrcv->Dem Dem_SetEventStatus Det DET FrTrcv->Det Det_ReportError / Det_ReportRuntimeError

Diagrama de contexto: FrTrcv entre FrIf/FrSM, los controladores de hardware y los servicios EcuM, DEM y DET. Fuentes: [SWS_FrTrcv_00334], SWS FrSM p. 20

Tras el encendido, el controlador se encuentra en NOT_ACTIVE y pasa a ACTIVE con FrTrcv_Init SWS FrTrcv Fig. 7.1 p. 23. Allí son válidos los modos NORMAL, RECEIVEONLY, STANDBY y SLEEP [SWS_FrTrcv_00481]. FrTrcv_SetTransceiverMode cambia entre ellos. Si el cambio falla, el servicio devuelve E_NOT_OK y mantiene el estado anterior. El controlador implementa tiempos de espera con Tm_BusyWait1us16bit [SWS_FrTrcv_00485]. En STANDBY, los canales de activación de ICU están habilitados; en NORMAL, deshabilitados [SWS_FrTrcv_00491] [SWS_FrTrcv_00492].

modi cluster_power_on POWER_ON cluster_active ACTIVE Aus Alimentación desactivada NOT_ACTIVE NOT_ACTIVE Aus->NOT_ACTIVE Power On NORMAL NORMAL NOT_ACTIVE->NORMAL FrTrcv_Init() RECEIVEONLY RECEIVEONLY NORMAL->RECEIVEONLY FrTrcv_SetTransceiverMode (FRTRCV_TRCVMODE_RECEIVEONLY) STANDBY STANDBY NORMAL->STANDBY FrTrcv_SetTransceiverMode (FRTRCV_TRCVMODE_STANDBY) SLEEP SLEEP NORMAL->SLEEP FrTrcv_SetTransceiverMode (FRTRCV_TRCVMODE_SLEEP) RECEIVEONLY->NORMAL FrTrcv_SetTransceiverMode (FRTRCV_TRCVMODE_NORMAL) STANDBY->NORMAL FrTrcv_SetTransceiverMode (FRTRCV_TRCVMODE_NORMAL) STANDBY->SLEEP FrTrcv_SetTransceiverMode (FRTRCV_TRCVMODE_SLEEP)

Diagrama de estados: Los cuatro modos de ACTIVE solo son alcanzables tras FrTrcv_Init. Las transiciones están parcialmente reconstruidas (interpretación). Fuentes: SWS FrTrcv Fig. 7.1 p. 23, [SWS_FrTrcv_00481]

El controlador detecta eventos de activación por dos vías: mediante FrTrcv_MainFunction cíclica [SWS_FrTrcv_00330] o mediante notificación. Tras FrTrcv_CheckWakeupByTransceiver, notifica el evento a EcuM SWS FrTrcv p. 46. El motivo, por ejemplo FRTRCV_WU_BY_BUS, lo suministra FrTrcv_GetTransceiverWUReason, en la medida en que el hardware pueda distinguirlo [SWS_FrTrcv_00074]. FrTrcv_ClearTransceiverWakeup borra todos los eventos pendientes [SWS_FrTrcv_00329].

En estrellas activas, servicios opcionales consultan los errores de bus por rama y desconectan o vuelven a conectar ramas [SWS_FrTrcv_00419] [SWS_FrTrcv_00442] [SWS_FrTrcv_00443]. Para el tratamiento de errores aplica lo siguiente:

  • Los errores de desarrollo como FRTRCV_E_UNINIT van a DET [SWS_FrTrcv_00085].
  • Los errores de tiempo de ejecución como FRTRCV_E_FR_NO_CONTROL_TRCV se gestionan a través de Det_ReportRuntimeError [SWS_FrTrcv_91001].
  • El controlador notifica los errores de bus de las clases A y B a DEM o a una función sustitutiva configurada [SWS_FrTrcv_00475].

Rol: Abstracción de hardware para componentes transceptores FlexRay

El controlador del transceptor FlexRay controla uno o más componentes transceptores FlexRay de una ECU. Todos los servicios relativos a canales seleccionan el componente mediante el índice basado en cero FrTrcv_TrcvIdx, que rige en el contexto del controlador [SWS_FrTrcv_00323]. El controlador ofrece tres grupos de servicios:

FrTrcv_GetVersionInfo proporciona expresamente la versión del módulo de software y no la del hardware del transceptor SWS FrTrcv p. 43.

Hacia abajo, el controlador accede al componente a través de Dio o Spi. Para notificaciones de activación utiliza Icu; las notificaciones van a EcuM, Dem y Det [SWS_FrTrcv_00334] [SWS_FrTrcv_00321]. El tipo de acceso lo determina el contenedor de selección FrTrcvAccess: solo permite una de las dos alternativas, es decir, acceso Dio o secuencia SPI SWS FrTrcv Fig. 10.4 p. 77.

Hacia arriba, es de suponer que sea principalmente la FlexRay Interface la que utilice los servicios. El FlexRay State Manager determina el motivo de activación por transceptor de un clúster mediante FrIf_GetTransceiverWUReason SWS FrSM p. 20. Interpretación: FrIf reenvía estas solicitudes a FrTrcv. Pregunta Q-29229b532631a6b5 (abierta) Con esto concuerda que los tipos comunes en Fr_GeneralTypes.h estén protegidos por FR_GENERAL_TYPES para que varios controladores de transceptor y FrIf puedan compartirlos SWS FrTrcv p. 34.

kontext FrSM FrSM FrIf FrIf FrSM->FrIf FrIf_GetTransceiverWUReason u. a. FrTrcv FrTrcv (FlexRay-Transceivertreiber) FrIf->FrTrcv Modus, Weckgrund, Zweige (Interpretation) EcuM EcuM EcuM->FrTrcv FrTrcv_Init (Interpretation) SchM BSW-Scheduler SchM->FrTrcv FrTrcv_MainFunction FrTrcv->EcuM EcuM_SetWakeupEvent Dio Dio FrTrcv->Dio Dio-Zugriff (FrTrcvAccess) Spi Spi FrTrcv->Spi SPI-Sequenz (FrTrcvAccess) Icu Icu FrTrcv->Icu Icu_Enable/DisableNotification Tm Tm FrTrcv->Tm Tm_BusyWait1us16bit Dem DEM FrTrcv->Dem Dem_SetEventStatus Det DET FrTrcv->Det Det_ReportError / Det_ReportRuntimeError

Diagrama de contexto: FrTrcv se sitúa entre FrIf/FrSM y los controladores Dio, Spi e Icu, y notifica a EcuM, DEM y DET. Fuentes: [SWS_FrTrcv_00334], [SWS_FrTrcv_00485], [SWS_FrTrcv_00330], SWS FrSM p. 20

Modos de funcionamiento entre NOT_ACTIVE y ACTIVE

La figura 7.1 de la especificación describe los modos como una máquina de estados anidada. Dentro de POWER_ON, el controlador se encuentra en NOT_ACTIVE tras el encendido y pasa a ACTIVE con FrTrcv_Init() SWS FrTrcv Fig. 7.1 p. 23. Solo en ACTIVE son válidos los cuatro valores de FrTrcv_TrcvModeType: FRTRCV_TRCVMODE_NORMAL, FRTRCV_TRCVMODE_RECEIVEONLY, FRTRCV_TRCVMODE_STANDBY y FRTRCV_TRCVMODE_SLEEP [SWS_FrTrcv_00481]. Entre estos modos, la capa invocadora cambia con FrTrcv_SetTransceiverMode [SWS_FrTrcv_00323].

Un cambio de modo se ejecuta de forma síncrona y no es reentrante. Las transiciones a estados opcionales pueden fallar. En tal caso, el servicio devuelve E_NOT_OK y se mantiene el estado previo SWS FrTrcv p. 39. Si el componente requiere tiempos de espera para un cambio de estado, el controlador los implementa con el servicio de temporización Tm_BusyWait1us16bit [SWS_FrTrcv_00485]. FrTrcv_GetTransceiverMode lee el estado real. Este servicio es reentrante y, por tanto, también puede invocarse en paralelo [SWS_FrTrcv_00324].

modi cluster_power_on POWER_ON cluster_active ACTIVE Aus Alimentación desactivada NOT_ACTIVE NOT_ACTIVE Aus->NOT_ACTIVE Power On NORMAL NORMAL NOT_ACTIVE->NORMAL FrTrcv_Init() RECEIVEONLY RECEIVEONLY NORMAL->RECEIVEONLY FrTrcv_SetTransceiverMode (FRTRCV_TRCVMODE_RECEIVEONLY) STANDBY STANDBY NORMAL->STANDBY FrTrcv_SetTransceiverMode (FRTRCV_TRCVMODE_STANDBY) SLEEP SLEEP NORMAL->SLEEP FrTrcv_SetTransceiverMode (FRTRCV_TRCVMODE_SLEEP) RECEIVEONLY->NORMAL FrTrcv_SetTransceiverMode (FRTRCV_TRCVMODE_NORMAL) STANDBY->NORMAL FrTrcv_SetTransceiverMode (FRTRCV_TRCVMODE_NORMAL) STANDBY->SLEEP FrTrcv_SetTransceiverMode (FRTRCV_TRCVMODE_SLEEP)

Diagrama de estados: Solo tras FrTrcv_Init se puede acceder a los cuatro modos de ACTIVE mediante FrTrcv_SetTransceiverMode. La selección de transiciones está parcialmente reconstruida (interpretación). Fuentes: SWS FrTrcv Fig. 7.1 p. 23, [SWS_FrTrcv_00481]

Arranque e inicio de la comunicación de bus

FrTrcv_Init recibe un puntero al conjunto de configuración seleccionado e inicializa el controlador [SWS_FrTrcv_00322]. Esta función independiente inicializa variables y recursos de hardware. Los controladores que atienden fuentes de activación se reinicializan en el bloque de reinicio y, al hacerlo, vuelven a armar el mecanismo de disparo de la notificación de activación SWS FrTrcv p. 37. El controlador admite la secuencia de inicialización de la pila AUTOSAR. Interpretación: dentro de esta secuencia, presumiblemente el ECU State Manager invoque la función. Pregunta Q-93ce1e5987a96873 (abierta)

El cambio a NORMAL afecta a las rutas de activación. Si FrTrcvIcuChannelRef está configurado, el controlador deshabilita los canales ICU con Icu_DisableNotification [SWS_FrTrcv_00492]. Sin esta referencia, no accede en absoluto a canales ICU [SWS_FrTrcv_00490].

Puesta en marcha y transición a NORMALEcuMFrIf / FrSMFrTrcvDio / SpiIcuTmUse Case: InitialisierungFrTrcv_Init(ConfigPtr)Variables y recursos de hardwareinitialisieren (NOT_ACTIVE → ACTIVE)Use Case: Kommunikation aufnehmenFrTrcv_SetTransceiverMode(TrcvIdx,FRTRCV_TRCVMODE_NORMAL)Configurar pines de modo o bien registrosTm_BusyWait1us16bit(...)optFrTrcvIcuChannelRef konfiguriertIcu_DisableNotification(...)altWechsel erfolgreichE_OKWechsel fehlgeschlagenE_NOT_OK (estado sin cambios)

Diagrama de secuencias: A la inicialización le sigue el cambio a NORMAL con espera activa (busy-wait) y deshabilitación opcional de ICU. Un fallo deja inalterado el estado. Fuentes: [SWS_FrTrcv_00322], [SWS_FrTrcv_00323], [SWS_FrTrcv_00485], [SWS_FrTrcv_00492]

Detección de activación en STANDBY y SLEEP, motivo de activación

Al cambiar a STANDBY, el controlador vuelve a habilitar los canales ICU [SWS_FrTrcv_00491]. Además, FrTrcv_SetTransceiverMode borra el historial de errores en el transceptor en cada cambio a STANDBY, siempre que el hardware lo admita SWS FrTrcv p. 39.

Adicionalmente, el controlador puede realizar sondeos cíclicos. Para ello, proporciona FrTrcv_MainFunction mediante SchM_FrTrcv.h [SWS_FrTrcv_00330]. Según el pasaje documental de R23-11, la función busca eventos de activación en todos los buses en STANDBY y SLEEP y almacena internamente los eventos encontrados. La configuración determina el período. La función puede ejecutarse de forma síncrona o asíncrona con respecto a la planificación del bus FlexRay SWS FrTrcv p. 49.

Transición a STANDBY y detección cíclica de wakeupFrIf / FrSMFrTrcvIcuDio / SpiBSW-SchedulerFrTrcv_SetTransceiverMode(TrcvIdx,FRTRCV_TRCVMODE_STANDBY)Borrar historial de fallos en el transceptor(si el hardware lo soporta)optFrTrcvIcuChannelRef konfiguriertIcu_EnableNotification(...)E_OKloopCíclico, periodo según configuraciónFrTrcv_MainFunction()Weckstatus aller Busse inSTANDBY/SLEEP lesenWeckereignis intern speichernComportamiento de polling según referencia documental R23-11;independiente de la planificación del bus FlexRay

Diagrama de secuencias: En la transición a STANDBY se borra el historial de errores y se habilita la notificación de ICU. A continuación, la Main Function busca cíclicamente eventos de activación. Fuentes: [SWS_FrTrcv_00491], [SWS_FrTrcv_00330], SWS FrTrcv p. 49

Si el componente detecta una activación a través del bus, el lado SPI o DIO subyacente notifica al controlador. Esto puede ocurrir en contexto de interrupción SWS FrTrcv p. 46. Si posteriormente se invoca FrTrcv_CheckWakeupByTransceiver [SWS_FrTrcv_00331], el controlador notifica el evento al ECU State Manager. Para ello, EcuM_SetWakeupEvent figura en la lista de interfaces utilizadas [SWS_FrTrcv_00334]. Interpretación: presumiblemente EcuM inicie la llamada de verificación en su secuencia de activación. Pregunta Q-d5873691a495bef0 (abierta)

El motivo de activación lo proporciona FrTrcv_GetTransceiverWUReason [SWS_FrTrcv_00325] como valor de FrTrcv_TrcvWUReasonType. Los valores posibles son FRTRCV_WU_BY_BUS, FRTRCV_WU_BY_PIN, FRTRCV_WU_INTERNALLY o FRTRCV_WU_NOT_SUPPORTED [SWS_FrTrcv_00074]. La precisión con la que se distinguen los motivos depende en gran medida del hardware SWS FrTrcv p. 42. El pasaje documental de versiones posteriores menciona adicionalmente FRTRCV_WU_RESET y FRTRCV_WU_POWER_ON SWS FrTrcv p. 34. El texto de requisitos de R20-11 en el contenido útil está abreviado en este punto.

El FrSM comprueba el motivo de activación por transceptor respecto a FRTRCV_WU_BY_BUS. Así distingue si no existe activación de bus, o si esta es parcial o completa SWS FrSM p. 20. Seguidamente, FrTrcv_ClearTransceiverWakeup borra todos los eventos de activación pendientes [SWS_FrTrcv_00329]. La llamada también está permitida con la notificación de activación deshabilitada SWS FrTrcv p. 44.

Detectar, notificar y evaluar evento de wakeupIcu / Dio / SpiFrTrcvEcuMFrIf / FrSMUse Case: ErkennungWeck-Benachrichtigung(ggf. Interrupt-Kontext)FrTrcv_CheckWakeupByTransceiver(TrcvIdx)(Aufrufer: Interpretation)EcuM_SetWakeupEvent(...)Use Case: AuswertungFrTrcv_GetTransceiverWUReason(TrcvIdx, &Reason)altGrund in FrTrcv_TrcvWUReasonType definiertE_OK, z. B. FRTRCV_WU_BY_BUSCausa no definidaE_NOT_OK (salida sin cambios)FrTrcv_ClearTransceiverWakeup(TrcvIdx)E_OK (todos los eventos de wakeup pendientes borrados)

Diagrama de secuencias: Flujo desde la notificación de hardware a través del aviso a EcuM hasta la consulta y el borrado del motivo de activación. El contenido útil no nombra al invocador de la función de comprobación (interpretación). Fuentes: [SWS_FrTrcv_00331], [SWS_FrTrcv_00325], [SWS_FrTrcv_00329], SWS FrTrcv p. 46

Estrellas activas: supervisar, desconectar y habilitar ramas

Para transceptores que abastecen varias ramas como estrella activa, existen tres servicios adicionales. Solo están disponibles si hay ramas configuradas SWS FrTrcv p. 52. Los tres direccionan adicionalmente la rama mediante el índice basado en cero FrTrcv_BranchIdx y no son reentrantes [SWS_FrTrcv_00419] [SWS_FrTrcv_00442] [SWS_FrTrcv_00443].

FrTrcv_GetTransceiverError escribe el estado de error de una rama como uint32 en FrTrcv_BusErrorState. Se pueden consultar todos los errores prescritos por la EPL de FlexRay que admita el hardware SWS FrTrcv p. 48. Las ramas defectuosas se desconectan con FrTrcv_DisableTransceiverBranch SWS FrTrcv p. 50. FrTrcv_EnableTransceiverBranch vuelve a habilitarlas de forma síncrona con la planificación del bus FlexRay SWS FrTrcv p. 51. Si un índice se encuentra fuera del rango válido, ambos servicios de conmutación devuelven E_NOT_OK y el estado de la rama permanece inalterado [SWS_FrTrcv_00442] [SWS_FrTrcv_00443].

zweig start Comprobar estado de derivación (capa invocadora, interpretación) get FrTrcv_GetTransceiverError (TrcvIdx, BranchIdx, &BusErrorState) start->get rc ¿Retorno E_OK? get->rc na Estado de fallo no disponible o índice fuera de rango rc->na No fehler Zweig fehlerhaft? rc->fehler Sí aktiv Zweig bleibt aktiv fehler->aktiv No dis FrTrcv_DisableTransceiverBranch (TrcvIdx, BranchIdx) fehler->dis Sí wieder ¿Rehabilitación deseada? dis->wieder aus Zweig bleibt abgeschaltet wieder->aus No en FrTrcv_EnableTransceiverBranch síncrono a la planificación del bus FlexRay wieder->en Sí

Diagrama de actividades: Consulta de errores por rama, desconexión de ramas defectuosas y rehabilitación síncrona con la planificación del bus. Que la capa invocadora decida es una interpretación. Fuentes: [SWS_FrTrcv_00419], SWS FrTrcv p. 50, SWS FrTrcv p. 51

Configuración, tipo de acceso y particionamiento

FrTrcv_ConfigType es una estructura específica de la implementación [SWS_FrTrcv_00487]. El módulo contiene uno o varios contenedores FrTrcvChannel, uno por canal de transceptor, así como FrTrcvGeneral SWS FrTrcv p. 59. Este pasaje documental de R23-11/R25-11 solo menciona, además, VARIANT-PRE-COMPILE sin soporte post-build. Para R20-11, el contenido útil no contiene ningún requisito al respecto.

Por cada transceptor, FrTrcvAccess selecciona o bien FrTrcvDioAccess o bien FrTrcvSpiSequence SWS FrTrcv Fig. 10.4 p. 77. Las funciones opcionales pueden habilitarse y deshabilitarse en tiempo de compilación SWS FrTrcv p. 52. FrTrcvIcuChannelRef vincula la notificación de activación de ICU a [SWS_FrTrcv_00490]. Con FrTrcvDemReportErrorStatusConfiguration se puede emplear, en lugar de Dem_SetEventStatus, una función propia con la misma signatura [SWS_FrTrcv_00475].

En sistemas particionados, el módulo opera como una instancia independiente por partición. Una llamada a la API solo surte efecto en la partición en la que se realiza [SWS_FrTrcv_00494]. El módulo debe rechazar las asignaciones de partición que la implementación no admita [SWS_FrTrcv_00497].

Comportamiento en caso de error

Los errores de desarrollo están definidos [SWS_FrTrcv_00085]:

  • FRTRCV_E_FR_INVALID_TRCVIDX (0x01),
  • FRTRCV_E_FR_INVALID_BRANCHIDX (0x02),
  • FRTRCV_E_UNINIT (0x10),
  • FRTRCV_E_PARAM_POINTER (0x15).

Solo se notifican si la detección de errores de desarrollo está habilitada. Ejemplos de ello son FRTRCV_E_UNINIT en los servicios de rama SWS FrTrcv p. 50 y el puntero NULL en FrTrcv_GetVersionInfo SWS FrTrcv p. 43.

Como errores de tiempo de ejecución, el controlador notifica llamadas en el modo incorrecto con FRTRCV_E_FR_TRCV_NOT_STANDBY a FRTRCV_E_FR_TRCV_NOT_RECEIVEONLY (0x11 a 0x14). La comunicación ausente o defectuosa con el componente la notifica con FRTRCV_E_FR_NO_CONTROL_TRCV (0x16) [SWS_FrTrcv_91001]. Estas notificaciones se transmiten a través de Det_ReportRuntimeError [SWS_FrTrcv_00493]. FrTrcv_GetTransceiverMode desencadena el error FRTRCV_E_FR_NO_CONTROL_TRCV, por ejemplo, ante un fallo en el acceso al transceptor SWS FrTrcv p. 41.

Con E_NOT_OK, los parámetros de salida permanecen inalterados, como sucede en FrTrcv_GetTransceiverMode y FrTrcv_GetTransceiverError SWS FrTrcv p. 48. Un cambio de modo fallido deja subsistente el estado anterior [SWS_FrTrcv_00323].

pruefung start Llamada a un servicio FrTrcv init Modul initialisiert? start->init e_uninit Det_ReportError: FRTRCV_E_UNINIT init->e_uninit No idx ¿FrTrcv_TrcvIdx dentro del rango? init->idx Sí r_nok Retorno E_NOT_OK (salidas o bien estado sin cambios) e_uninit->r_nok e_idx Det_ReportError: FRTRCV_E_FR_INVALID_TRCVIDX idx->e_idx No br Servicio de derivación: ¿FrTrcv_BranchIdx dentro del rango? idx->br Sí e_idx->r_nok e_br Det_ReportError: FRTRCV_E_FR_INVALID_BRANCHIDX br->e_br No ptr Zeigerparameter ungleich NULL? br->ptr ja / kein Zweigdienst e_br->r_nok e_ptr Det_ReportError: FRTRCV_E_PARAM_POINTER ptr->e_ptr No zugriff Acceso al transceptor (Dio / Spi) ptr->zugriff Sí e_ptr->r_nok ok Zugriff fehlerfrei? zugriff->ok e_rt Det_ReportRuntimeError: FRTRCV_E_FR_NO_CONTROL_TRCV ok->e_rt No r_ok Retorno E_OK ok->r_ok Sí e_rt->r_nok

Diagrama de actividades: Las comprobaciones de parámetros y de inicialización conducen a errores de desarrollo; los errores de acceso, a un error de tiempo de ejecución. El orden de las comprobaciones es una interpretación. Las comprobaciones de DET solo existen si la detección de errores está habilitada. Fuentes: [SWS_FrTrcv_00085], [SWS_FrTrcv_91001], [SWS_FrTrcv_00493]

Para el diagnóstico de producción, el controlador distingue dos clases de transceptor:

  • En transceptores de clase A controlados por GPIO, un pin ERRN activo (low) significa «Fail», y un pin inactivo (high), «Pass» [SWS_FrTrcv_00489].
  • En transceptores de clase B controlados por SPI, cada bit 1…9 activado desencadena un error de bus [SWS_FrTrcv_00488].

La evaluación se realiza ante un HALT inesperado o en NORMAL_ACTIVE del controlador. En caso de cortocircuito en el bus, un «Pass» del controlador por sí solo no basta como prueba SWS FrTrcv p. 26. Dem_SetEventStatus solo está disponible en STANDARD_REPORTING [SWS_FrTrcv_00334].

dem anlass Motivo: HALT inesperado o NORMAL_ACTIVE del controlador klasse Transceiverklasse? anlass->klasse a Klasse A (GPIO): ERRN-Pin aktiv low? klasse->a A b Clase B (SPI): ¿un bit 1...9 establecido? klasse->b B fail_a Fail: FRTRCV_E_FR_ERRN_TRCV_<TrcvIdx> a->fail_a Sí pass_a Pass: FRTRCV_E_FR_ERRN_TRCV_<TrcvIdx> a->pass_a No fail_b Fail: FRTRCV_E_FR_BUSERROR_TRCV_<TrcvIdx> b->fail_b Sí pass_b Pass: FRTRCV_E_FR_BUSERROR_TRCV_<TrcvIdx> b->pass_b No cfg FrTrcvDemReportErrorStatusConfiguration konfiguriert? fail_a->cfg pass_a->cfg fail_b->cfg pass_b->cfg eigen Función configurada (firma idéntica a Dem_SetEventStatus) cfg->eigen Sí dem Dem_SetEventStatus (solo con STANDARD_REPORTING) cfg->dem No

Diagrama de actividades: Evaluación Pass/Fail por clase de transceptor y vía de notificación a DEM o a la función sustitutiva configurada. Fuentes: [SWS_FrTrcv_00488], [SWS_FrTrcv_00489], [SWS_FrTrcv_00475]

Más evidencia detallada

ReferenciaClasificación
[SWS_FrTrcv_00481], SWS FrTrcv Abb. 7.1 S. 23Modos de funcionamiento y máquina de estados
[SWS_FrTrcv_00323], SWS FrTrcv S. 39Cambio de modo, fallo, borrado del historial de errores en STANDBY
[SWS_FrTrcv_00322], SWS FrTrcv S. 37Inicialización y regla de reinicio para fuentes de activación
[SWS_FrTrcv_00330], [SWS_FrTrcv_00485]Sondeo cíclico y tiempos de espera
[SWS_FrTrcv_00331], [SWS_FrTrcv_00325], [SWS_FrTrcv_00074], [SWS_FrTrcv_00329]Ruta de activación desde la detección hasta el borrado
[SWS_FrTrcv_00490], [SWS_FrTrcv_00491], [SWS_FrTrcv_00492]Notificación de ICU dependiente del modo
[SWS_FrTrcv_00419], [SWS_FrTrcv_00442], [SWS_FrTrcv_00443]Gestión de ramas en estrellas activas
[SWS_FrTrcv_00085], [SWS_FrTrcv_91001], [SWS_FrTrcv_00493]Errores de desarrollo y de tiempo de ejecución
[SWS_FrTrcv_00488], [SWS_FrTrcv_00489], [SWS_FrTrcv_00475]Eventos de DEM y vía de notificación
[SWS_FrTrcv_00487], [SWS_FrTrcv_00494], [SWS_FrTrcv_00497]Tipo de configuración y particionamiento

Guía generada por IA sobre la base de los requisitos y pasajes documentales de R20-11 contenidos en el contenido útil. Los pasajes documentales procedentes de versiones posteriores están identificados como tales. El único vinculante es el pliego de especificaciones de AUTOSAR.

FlexRay Transceiver Driver (FrTrcv)

Controls physical bus transceiver states and bus diagnostics on FlexRay lines.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

función FrTrcv_Init [SWS_FrTrcv_00322] 📄 PDF

void FrTrcv_Init (const FrTrcv_ConfigType* ConfigPtr);

This service initializes the Fr Trcv.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 8880c7552dd0 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función síncrona FrTrcv_Init inicializa el controlador del transceptor FlexRay de la plataforma AUTOSAR Classic ([SWS_FrTrcv_00322]). Cuenta con el Service ID 0x00 y se proporciona a través del archivo de cabecera FrTrcv.h ([SWS_FrTrcv_00322]). El módulo FrTrcv ofrece este servicio para la configuración y puesta en marcha del hardware del transceptor ([SWS_FrTrcv_00322]).

La interfaz espera como único parámetro el puntero ConfigPtr de tipo const FrTrcv_ConfigType*, el cual hace referencia al conjunto de datos de configuración seleccionado del transceptor ([SWS_FrTrcv_00322]):

Dado que FrTrcv_Init está especificada como no reentrante (Non Reentrant), la función no se debe llamar en ningún caso de manera concurrente ni varias veces de forma simultánea ([SWS_FrTrcv_00322]). La ejecución se realiza de forma síncrona hasta la finalización de la inicialización ([SWS_FrTrcv_00322]).

La presente especificación no proporciona datos explícitos sobre el contexto de llamada ni sobre las condiciones de orden secuencial; presumiblemente, la inicialización la realiza la gestión de estados del software básico durante el arranque del sistema antes de todas las actividades de comunicación regulares. Pregunta Q-5fa4966e37b10516 (abierta) Los códigos de error específicos, las reacciones a punteros nulos y las interacciones con DET o DEM no están contenidos en el alcance de la especificación suministrado y, por lo tanto, no se detallan más ([SWS_FrTrcv_00322]).

Esta nota de uso ha sido generada de forma automatizada sobre la base de la especificación AUTOSAR Classic R20-11.

Guía del implementador pendiente (complejidad I1)

función FrTrcv_SetTransceiverMode [SWS_FrTrcv_00323] 📄 PDF

Std_ReturnType FrTrcv_SetTransceiverMode (uint8 FrTrcv_TrcvIdx, FrTrcv_TrcvModeType FrTrcv_TrcvMode);

This service sets the transceiver mode.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: fabc34a3f07e Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función síncrona FrTrcv_SetTransceiverMode sirve para cambiar el modo de funcionamiento de un transceptor FlexRay [SWS_FrTrcv_00323]. La declaración de este servicio se proporciona a través del archivo de cabecera FrTrcv.h [SWS_FrTrcv_00323].

Parámetros y control

La función espera dos parámetros de entrada [SWS_FrTrcv_00323]:

  • FrTrcv_TrcvIdx: Este índice de base cero identifica el transceptor concreto dentro del controlador del transceptor para el cual se debe ejecutar el cambio de estado [SWS_FrTrcv_00323].
  • FrTrcv_TrcvMode: Selecciona el estado de destino al que debe pasar el transceptor [SWS_FrTrcv_00323]. Al respecto, debe tenerse en cuenta que las transiciones a estados opcionales pueden fallar [SWS_FrTrcv_00323].

Valores de retorno y comportamiento en caso de error

El resultado del cambio de modo se transmite de forma síncrona mediante el valor de retorno de tipo Std_ReturnType [SWS_FrTrcv_00323]:

  • E_OK: Indica que el estado del transceptor ha cambiado con éxito al modo deseado [SWS_FrTrcv_00323].
  • E_NOT_OK: Señaliza un fallo en el cambio de estado; el estado anterior del transceptor permanece sin cambios [SWS_FrTrcv_00323].

concurrencia

El servicio está especificado como no reentrante (Non Reentrant) y posee una semántica de ejecución síncrona [SWS_FrTrcv_00323]. Debido a la propiedad Non Reentrant, presumiblemente el contexto llamador sea responsable de proteger las llamadas paralelas o superpuestas para el controlador. Pregunta Q-b83c7a2879a572b7 (abierta)

Esta nota de uso se ha generado automáticamente y se basa exclusivamente en los datos de especificación de AUTOSAR Release R20-11.

Guía del implementador pendiente (complejidad I1)

función FrTrcv_GetTransceiverMode [SWS_FrTrcv_00324] 📄 PDF

Std_ReturnType FrTrcv_GetTransceiverMode (uint8 FrTrcv_TrcvIdx, FrTrcv_TrcvModeType* FrTrcv_TrcvModePtr);

This function returns the actual state of the transceiver.

función FrTrcv_GetTransceiverWUReason [SWS_FrTrcv_00325] 📄 PDF

Std_ReturnType FrTrcv_GetTransceiverWUReason (uint8 FrTrcv_TrcvIdx, FrTrcv_TrcvWUReasonType* FrTrcv_TrcvWUReasonPtr);

This function returns the wakeup reason.

función FrTrcv_ClearTransceiverWakeup [SWS_FrTrcv_00329] 📄 PDF

Std_ReturnType FrTrcv_ClearTransceiverWakeup (uint8 FrTrcv_TrcvIdx);

This function clears a pending wake up event.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 486bcee2a527 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Uso y semántica

La función síncrona FrTrcv_ClearTransceiverWakeup sirve para restablecer un evento de despertar pendiente en un transceptor FlexRay [SWS_FrTrcv_00329]. Está declarada en el archivo de cabecera FrTrcv.h y posee el Service ID 0x0c [SWS_FrTrcv_00329].

A través del parámetro de entrada basado en cero FrTrcv_TrcvIdx se especifica el transceptor correspondiente dentro del controlador [SWS_FrTrcv_00329].

Tratamiento de errores y valores de retorno

El valor de retorno de tipo Std_ReturnType informa sobre el resultado de la operación [SWS_FrTrcv_00329]:

  • E_OK: El evento de despertar de la fuente de despertar del transceptor se ha borrado con éxito [SWS_FrTrcv_00329].
  • E_NOT_OK: El parámetro FrTrcv_TrcvIdx se encuentra fuera del rango válido; en este caso, el estado de despertar permanece sin cambios [SWS_FrTrcv_00329].

Concurrencia y restricciones

La función está especificada como no reentrante [SWS_FrTrcv_00329]. Por tanto, los llamadores deben asegurarse de que las llamadas para la misma instancia no se produzcan de forma interruptiva ni en paralelo. Dado que la función se define como síncrona, presumiblemente la depuración del evento de despertar se concluya directamente a nivel de controlador durante la llamada. Pregunta Q-e548008f8bae0ff0 (abierta)

Esta nota de uso se generó de manera automatizada a partir de la especificación SWS_FrTrcv_00329.

función FrTrcv_CheckWakeupByTransceiver [SWS_FrTrcv_00331] 📄 PDF

void FrTrcv_CheckWakeupByTransceiver (uint8 FrTrcv_TrcvIdx);

-

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 61627651eb93 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Uso y contexto de llamada

La función FrTrcv_CheckWakeupByTransceiver pertenece al controlador del transceptor FlexRay (módulo FrTrcv) y está declarada a través del archivo de cabecera FrTrcv.h [SWS_FrTrcv_00331]. La función posee el Service ID 0x0e y se ejecuta de forma síncrona [SWS_FrTrcv_00331]. Acepta como único parámetro de entrada FrTrcv_TrcvIdx de tipo uint8, el cual, como índice de base cero, determina el transceptor respectivo en el contexto del controlador del transceptor para el que debe ejecutarse la operación [SWS_FrTrcv_00331]. No existen parámetros de entrada/salida ni parámetros exclusivos de salida, y la función no devuelve ningún valor de retorno (void) [SWS_FrTrcv_00331].

En los datos de especificación no se incluye ninguna descripción funcional detallada. Interpretación: A juzgar por la denominación, la función presumiblemente sirva para comprobar si en el hardware del transceptor direccionado está presente o ha sido detectado por este un evento de despertar (Wakeup) [SWS_FrTrcv_00331]. Pregunta Q-9b8b5d8fb8e4543f (abierta)

Concurrencia y tratamiento de errores

En cuanto al comportamiento de concurrencia, FrTrcv_CheckWakeupByTransceiver está clasificada como reentrante [SWS_FrTrcv_00331]. Esto permite llamadas paralelas para diferentes instancias de transceptor en el sistema. Los mecanismos específicos de tratamiento de errores, como comprobaciones relativas a índices no válidos o notificaciones al Default Error Tracer (DET) o al Diagnostic Event Manager (DEM), no están definidos en este elemento de especificación [SWS_FrTrcv_00331].

Esta nota de uso fue generada por una IA y se basa exclusivamente en las indicaciones de especificación del paquete AUTOSAR R20-11.

función FrTrcv_GetTransceiverError [SWS_FrTrcv_00419] 📄 PDF

Std_ReturnType FrTrcv_GetTransceiverError (uint8 FrTrcv_TrcvIdx, uint8 FrTrcv_BranchIdx, uint32* FrTrcv_BusErrorState);

All mandatory errors defined by the Flex Ray EPL [5] which are supported by the Flex Ray transceiver hardware can be acce ssed via this API:In addition to errors on the physical layer and local to the ECU hardware, a global error flag is provided.

función FrTrcv_DisableTransceiverBranch [SWS_FrTrcv_00442] 📄 PDF

Std_ReturnType FrTrcv_DisableTransceiverBranch (uint8 FrTrcv_TrcvIdx, uint8 FrTrcv_BranchIdx);

This function disable s the specified branch on the addressed (active star) transceiver.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: f12db972f543 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función síncrona FrTrcv_DisableTransceiverBranch sirve para desactivar una rama individual especificada en un transceptor de estrella activa direccionado ([SWS_FrTrcv_00442]). Se proporciona a través del archivo de cabecera FrTrcv.h y posee el ID de servicio 0x0f ([SWS_FrTrcv_00442]).

Parámetros y contexto de llamada

La llamada se realiza de forma síncrona y está especificada como no reentrante (Non Reentrant) ([SWS_FrTrcv_00442]). La función espera dos parámetros de entrada con base cero:

  • FrTrcv_TrcvIdx: índice con base cero que identifica, en el contexto del controlador de transceptor, el transceptor sobre el que debe aplicarse la operación ([SWS_FrTrcv_00442]).
  • FrTrcv_BranchIdx: índice con base cero que determina la rama a desactivar del transceptor de estrella activa direccionado ([SWS_FrTrcv_00442]).

Valores de retorno y tratamiento de errores

El resultado de la operación se señaliza mediante el tipo de retorno Std_ReturnType ([SWS_FrTrcv_00442]):

  • E_OK: La rama de transceptor especificada se desactivó correctamente ([SWS_FrTrcv_00442]).
  • E_NOT_OK: el parámetro FrTrcv_TrcvIdx o FrTrcv_BranchIdx está fuera del rango válido ([SWS_FrTrcv_00442]). En este caso de error, el estado de la rama del transceptor permanece sin cambios ([SWS_FrTrcv_00442]).

Restricciones y concurrencia

Dado que FrTrcv_DisableTransceiverBranch no es reentrante, las llamadas no deben ejecutarse concurrentemente sin protección ([SWS_FrTrcv_00442]). Además, los llamadores deben asegurarse de que ambos índices se encuentren dentro de los límites configurados para evitar un rechazo con el estado de la rama inalterado ([SWS_FrTrcv_00442]).

Esta nota de uso se basa en la especificación SWS_FrTrcv_00442 de la versión R20-11.

función FrTrcv_EnableTransceiverBranch [SWS_FrTrcv_00443] 📄 PDF

Std_ReturnType FrTrcv_EnableTransceiverBranch (uint8 FrTrcv_TrcvIdx, uint8 FrTrcv_BranchIdx);

This function enables the specified branch on the addressed (active star) transceiver.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 8a9d8eb5de3b Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función síncrona FrTrcv_EnableTransceiverBranch sirve para activar una rama determinada en un transceptor direccionado, típicamente en una topología en estrella activa (Active Star) [SWS_FrTrcv_00443].

Parámetros y contexto de llamada

  • FrTrcv_TrcvIdx: Índice de base cero del transceptor en el contexto del controlador [SWS_FrTrcv_00443].
  • FrTrcv_BranchIdx: Índice de base cero de la rama específica del transceptor que debe activarse [SWS_FrTrcv_00443].

Valores de retorno y tratamiento de errores

La función devuelve un estado de tipo Std_ReturnType [SWS_FrTrcv_00443]:

  • E_OK: La rama del transceptor especificada se ha activado con éxito [SWS_FrTrcv_00443].
  • E_NOT_OK: Uno de los parámetros (FrTrcv_TrcvIdx o FrTrcv_BranchIdx) se encuentra fuera del rango válido; en este caso, el estado de la rama permanece sin cambios [SWS_FrTrcv_00443].

Concurrencia y restricciones

La llamada se ejecuta de forma síncrona y está especificada como no reentrante (Non Reentrant) [SWS_FrTrcv_00443]. Por lo tanto, los llamadores deben asegurarse de que la función no se llame concurrentemente para el mismo contexto ni para contextos paralelos.

Esta nota de uso se generó de forma automatizada sobre la base de la especificación.

función FrTrcv_MainFunction [SWS_FrTrcv_00330] 📄 PDF

void FrTrcv_MainFunction (void);

-

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: f615787755a2 Procedencia Preguntas abiertas (2)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función FrTrcv_MainFunction constituye la función principal periódica del controlador para el transceptor FlexRay (módulo FrTrcv) y está registrada con el ID de servicio 0x0d [SWS_FrTrcv_00330]. La interfaz C está definida con la firma void FrTrcv_MainFunction (void) como una función sin parámetros, motivo por el cual durante la llamada no se transmiten parámetros de entrada ni existe un valor de estado como tipo de retorno [SWS_FrTrcv_00330].

Como archivo include, para la función se prescribe la cabecera SchM_FrTrcv.h [SWS_FrTrcv_00330]. Su provisión a través de la interfaz del Schedule Manager fundamenta la interpretación de que, durante el funcionamiento del sistema, la llamada se realiza típicamente de forma cíclica por parte del BSW-Scheduler en el contexto de una tarea configurada del sistema operativo.

A falta de parámetros y valores de retorno, es de prever que los procesos de control y monitorización requeridos del transceptor se ejecuten internamente en el módulo de manera autónoma. Pregunta Q-2710fa5096bf4d90 (abierta) En este punto, la especificación no contiene determinaciones sobre aspectos como reentrancia, concurrencia, tratamiento de errores DET o interacciones con otras interfaces del controlador [SWS_FrTrcv_00330].

Esta nota de uso ha sido generada por una IA y se basa exclusivamente en los contenidos de la especificación de la versión R20-11.

tipo FrTrcv_TrcvModeType [SWS_FrTrcv_00481] 📄 PDF

Transceiver modes in state ACTIVE. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_FlexRayTransceiverDriver

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 4db36c82b07f Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

El tipo de enumeración FrTrcv_TrcvModeType especifica, según [SWS_FrTrcv_00481], los modos de funcionamiento permitidos de un transceptor FlexRay en el estado operativo de nivel superior ACTIVE. La definición tipificada es parte integral del controlador del transceptor FlexRay FrTrcv y se proporciona en toda la plataforma a través del archivo de cabecera Fr_GeneralTypes.h para módulos de software de nivel superior [SWS_FrTrcv_00481].

La enumeración comprende cuatro estados definidos para el funcionamiento del transceptor [SWS_FrTrcv_00481]:

  • FRTRCV_TRCVMODE_NORMAL: Identifica que el transceptor se encuentra en el estado de funcionamiento regular NORMAL [SWS_FrTrcv_00481].
  • FRTRCV_TRCVMODE_STANDBY: Identifica que el transceptor se encuentra en el estado de espera de bajo consumo STANDBY [SWS_FrTrcv_00481].
  • FRTRCV_TRCVMODE_SLEEP: Identifica que el transceptor se encuentra en el estado de reposo SLEEP [SWS_FrTrcv_00481].
  • FRTRCV_TRCVMODE_RECEIVEONLY: Identifica que el transceptor se encuentra en el estado RECEIVEONLY y solo permite procesos de recepción [SWS_FrTrcv_00481].

En cuanto a su uso e interacción, el tipo actúa como magnitud de interfaz central para el control y la adquisición de estado del hardware del transceptor FlexRay (Interpretación: Los valores de enumeración presumiblemente sirvan como parámetros para llamadas a funciones destinadas a cambiar el modo de funcionamiento, así como para la respuesta en consultas de estado, ya que el payload no contiene firmas de funciones). Pregunta Q-205f2b0575c32460 (abierta) No se definen en las especificaciones códigos de error específicos, tratamiento de errores mediante DET o DEM, ni restricciones de reentrancia para este tipo de enumeración elemental [SWS_FrTrcv_00481].

Esta nota de uso se generó de manera automatizada y se basa en la especificación AUTOSAR CP R20-11.

Guía del implementador pendiente (complejidad I1)

tipo FrTrcv_TrcvWUReasonType [SWS_FrTrcv_00074] 📄 PDF

This type to be used to specify the wake up reason detected by the FR transceiver in detail.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/CP_MOD_FrTrcv
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_FrTrcv@rel:R20-11#4207e894
Content hash
4207e894
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_FlexRayTransceiverDriver.pdf#nameddest=SWS_FrTrcv_00322

Inicialización y estado

This service returns the version information of this module.

void FrTrcv_GetVersionInfo (Std_VersionInfoType* versioninfo);
FrTrcv_Init función

This service initializes the Fr Trcv.

void FrTrcv_Init (const FrTrcv_ConfigType* ConfigPtr);

Servicios

-

void FrTrcv_CheckWakeupByTransceiver (uint8 FrTrcv_TrcvIdx);

This function clears a pending wake up event.

Std_ReturnType FrTrcv_ClearTransceiverWakeup (uint8 FrTrcv_TrcvIdx);

This function disable s the specified branch on the addressed (active star) transceiver.

Std_ReturnType FrTrcv_DisableTransceiverBranch (uint8 FrTrcv_TrcvIdx, uint8 FrTrcv_BranchIdx);

This function enables the specified branch on the addressed (active star) transceiver.

Std_ReturnType FrTrcv_EnableTransceiverBranch (uint8 FrTrcv_TrcvIdx, uint8 FrTrcv_BranchIdx);

All mandatory errors defined by the Flex Ray EPL [5] which are supported by the Flex Ray transceiver hardware can be acce ssed via this API:In addition to errors on the physical layer and local to the ECU hardware, a global error flag is provided.

Std_ReturnType FrTrcv_GetTransceiverError (uint8 FrTrcv_TrcvIdx, uint8 FrTrcv_BranchIdx, uint32* FrTrcv_BusErrorState);

This function returns the actual state of the transceiver.

Std_ReturnType FrTrcv_GetTransceiverMode (uint8 FrTrcv_TrcvIdx, FrTrcv_TrcvModeType* FrTrcv_TrcvModePtr);

This function returns the wakeup reason.

Std_ReturnType FrTrcv_GetTransceiverWUReason (uint8 FrTrcv_TrcvIdx, FrTrcv_TrcvWUReasonType* FrTrcv_TrcvWUReasonPtr);

This service sets the transceiver mode.

Std_ReturnType FrTrcv_SetTransceiverMode (uint8 FrTrcv_TrcvIdx, FrTrcv_TrcvModeType FrTrcv_TrcvMode);

Cíclico

-

void FrTrcv_MainFunction (void);

Tipos

Configuration data structure of the Fr Trcv module.

Transceiver modes in state ACTIVE. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_FlexRayTransceiverDriver

This type to be used to specify the wake up reason detected by the FR transceiver in detail.

Type ofaCfunctionwhichsubstitutesMultiplicityType.