DEENESPTFRRUARHIKOZHNL

CAN Transceiver Driver (CanTrcv)

ModulCanTrcv (CAN Transceiver Driver)
BSW-Modul-ID70
Standard-Header#include "CanTrcv.h"
SWS-SpezifikationAUTOSAR_SWS_CANTransceiverDriver.pdf
ClusterCAN

Guía del móduloGENERADO POR IA

Controla transceptores CAN externos: modos de funcionamiento, detección de reactivación y reactivación selectiva mediante tramas de reactivación.
GENERADO POR IA no revisado Modelo: claude-opus-5-5 · Esfuerzo: high · Temperatura: no controlable · Prompt: 61900c5cf397 Procedencia Preguntas abiertas (4)
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 transceptores CAN externos: modos de funcionamiento, detección de reactivación y reactivación selectiva mediante tramas de reactivación.

CanTrcv controla transceptores CAN externos y los mapea a un modelo de modos genérico con NORMAL, STANDBY y SLEEP. CanIf solicita los cambios de modo de forma asíncrona; el controlador notifica los modos alcanzados mediante una indicación [SWS_CanTrcv_00158]. Además, detecta reactivaciones, las notifica a EcuM y, con el hardware adecuado, admite la reactivación selectiva mediante tramas de reactivación. Condición de contorno fundamental: a SLEEP solo se puede acceder desde STANDBY [SWS_CanTrcv_00104], y mientras la notificación esté bloqueada no se debe perder ninguna reactivación.

El controlador de transceptores CAN (CanTrcv) encapsula transceptores CAN externos tras un modelo de modos genérico. De este modo, ComM y EcuM permanecen desacoplados del hardware concreto (SWS CanTrcv p. 19). Existe una instancia de controlador para cada tipo de hardware de transceptor [SWS_CanTrcv_00016]. Se accede al controlador a través de CanIf y este controla el hardware mediante Dio y Spi, que deben estar inicializados antes de CanTrcv_Init [SWS_CanTrcv_00099]. Tras la inicialización, cada transceptor se encuentra en STANDBY o SLEEP según lo configurado por canal [SWS_CanTrcv_00148]. CanTrcv_DeInit conduce a NOT_ACTIVE [SWS_CanTrcv_91003].

CanTrcv_SetOpMode conmuta entre NORMAL, STANDBY y SLEEP [SWS_CanTrcv_00102]. SLEEP solo está permitido desde STANDBY [SWS_CanTrcv_00104]. Un cambio al modo actual no constituye un error [SWS_CanTrcv_00161]. La función opera de forma asíncrona: en cuanto se alcanza el modo de destino, CanTrcv lo notifica mediante CanIf_TrcvModeIndication [SWS_CanTrcv_00158].

zustaende cluster_power_on POWER_ON cluster_active ACTIVE start NOT_ACTIVE NOT_ACTIVE start->NOT_ACTIVE Power on stop NOT_ACTIVE->stop Power off STANDBY CANTRCV_TRCVMODE_STANDBY NOT_ACTIVE->STANDBY CanTrcv_Init() [Init-Zustand STANDBY] SLEEP CANTRCV_TRCVMODE_SLEEP NOT_ACTIVE->SLEEP CanTrcv_Init() [Init-Zustand SLEEP] NORMAL CANTRCV_TRCVMODE_NORMAL NORMAL->NOT_ACTIVE CanTrcv_DeInit() NORMAL->NORMAL SetOpMode(NORMAL) NORMAL->STANDBY SetOpMode(STANDBY) STANDBY->NORMAL SetOpMode(NORMAL) STANDBY->STANDBY SetOpMode(STANDBY) STANDBY->SLEEP SetOpMode(SLEEP) SLEEP->NORMAL SetOpMode(NORMAL) SLEEP->SLEEP SetOpMode(SLEEP)

Diagrama de estados: Init conduce a STANDBY o SLEEP, a SLEEP solo se puede acceder mediante STANDBY, DeInit conduce a NOT_ACTIVE. Fuentes: SWS CanTrcv p. 19, [SWS_CanTrcv_00148]

CanIf comprueba las reactivaciones mediante CanTrcv_CheckWakeup. Esta función notifica las reactivaciones detectadas mediante EcuM_SetWakeupEvent [SWS_CanTrcv_00146]. CanTrcv_MainFunction examina los buses en STANDBY y SLEEP [SWS_CanTrcv_00112]. CanTrcv_SetWakeupMode puede bloquear la notificación, habilitarla o borrar reactivaciones almacenadas. Al hacerlo, no debe perderse ninguna reactivación [SWS_CanTrcv_00095].

Los transceptores compatibles con PN (CanTrcvHwPnSupport) reactivan adicionalmente mediante tramas de reactivación configuradas [SWS_CanTrcv_00175]. Durante el apagado, CanSM borra primero el flag WUF y luego conmuta a STANDBY [SWS_CanTrcv_00194]. A continuación, CanSM solicita la comprobación asíncrona del flag de reactivación [SWS_CanTrcv_00224].

En caso de error aplica lo siguiente:

  • Con DET activado se notulan errores de desarrollo; con DET desactivado las API devuelven E_NOT_OK [SWS_CanTrcv_00050].
  • El controlador notifica una comunicación de hardware defectuosa como error de tiempo de ejecución CANTRCV_E_NO_TRCV_CONTROL [SWS_CanTrcv_91006].
  • CanTrcv_MainFunctionDiagnostics notifica errores de bus como CANTRCV_E_BUS_ERROR a DEM [SWS_CanTrcv_00206].
Shutdown con Partial Networking (SPI asíncrono)CanSMCanIfCanTrcvSpiAusgang: Anforderung NoCom,Transceiver NORMAL, Controller STARTEDUse Case: Parte I: borrar flag WUF, STANDBYCanIf_ClearTrcvWufFlag(TransceiverId)CanTrcv_ClearTrcvWufFlag(Transceiver)Spi_AsyncTransmit(Sequence)CanIf_ClearTrcvWufFlagIndication(TransceiverId)CanSM_ClearTrcvWufFlagIndicationCanIf_SetControllerMode(ControllerId, CAN_CS_STOPPED)CanIf_SetTrcvMode(TransceiverId, CANIF_TRCV_MODE_STANDBY)CanTrcv_SetOpMode(Transceiver, STANDBY)Spi_AsyncTransmit(Sequence)CanIf_TrcvModeIndication(TransceiverId, STANDBY)CanSM_TransceiverModeIndication(TransceiverId, STANDBY)Use Case: Parte II: sleep del controlador, comprobar flag WakeCanIf_SetControllerMode(ControllerId, CAN_CS_SLEEP)CanIf_CheckTrcvWakeFlag(TransceiverId)CanTrcv_CheckWakeFlag(Transceiver)Spi_AsyncTransmit (Wake-Flag lesen)CanIf_CheckTrcvWakeFlagIndication(TransceiverId)<User_CheckTrcvWakeFlagIndication>

Diagrama de secuencia: durante el apagado de PN se borra el flag WUF, se conmuta el transceptor a STANDBY y se comprueba el flag de reactivación de forma asíncrona. Fuentes: SWS CanTrcv p. 55, [SWS_CanTrcv_00194]

Rol: controlador para transceptores CAN externos situado bajo CanIf

El controlador de transceptores CAN (CanTrcv) controla componentes de transceptores CAN externos. Mapea sus estados de hardware a un modelo de modos de funcionamiento genérico. Este modelo pretende cubrir de forma uniforme numerosos transceptores disponibles. Según la especificación, para lograrlo asume tener uno o dos estados de más para un componente concreto, pero con ello desacopla ComM y EcuM del hardware (SWS CanTrcv p. 19). Para ello, el hardware del transceptor debe ofrecer una interfaz que permita ser mapeada a este modelo [SWS_CanTrcv_00098].

Hacia arriba, CanIf es el interlocutor directo:

Las respuestas transcurren mediante CanIf_TrcvModeIndication, que pertenece a las interfaces obligatorias [SWS_CanTrcv_00085]. Para las indicaciones de PN se enumeran callbacks adicionales de CanIf [SWS_CanTrcv_00086]. Hacia abajo, CanTrcv utiliza Dio y Spi para el control de hardware, así como tipos de Icu, DEM y EcuM, tal como muestra la lista de importación [SWS_CanTrcv_00084]. El controlador implementa tiempos de espera en los cambios de estado con Tm_BusyWait1us16bit [SWS_CanTrcv_00230]. El BSW Scheduler invoca CanTrcv_MainFunction y CanTrcv_MainFunctionDiagnostics (SWS CanTrcv p. 47).

kontext EcuM EcuM / Integrationscode CanTrcv CanTrcv EcuM->CanTrcv CanTrcv_Init SchM BSW-Scheduler (SchM) SchM->CanTrcv CanTrcv_MainFunction CanTrcv_MainFunctionDiagnostics CanSM CanSM CanIf CanIf CanSM->CanIf CanIf_SetTrcvMode CanIf_ClearTrcvWufFlag CanIf_CheckTrcvWakeFlag CanIf->CanSM CanSM_TransceiverModeIndication CanIf->CanTrcv SetOpMode, GetOpMode, GetBusWuReason, SetWakeupMode, CheckWakeup, ClearTrcvWufFlag, CheckWakeFlag CanTrcv->EcuM EcuM_SetWakeupEvent CanTrcv->CanIf CanIf_TrcvModeIndication CanIf_ClearTrcvWufFlagIndication CanIf_CheckTrcvWakeFlagIndication Dio Dio CanTrcv->Dio Dio_WriteChannel Spi Spi CanTrcv->Spi SPI-Sequenzen Icu Icu CanTrcv->Icu Icu_EnableNotification Icu_DisableNotification Tm Tm CanTrcv->Tm Tm_BusyWait1us16bit Det Det CanTrcv->Det Errores de desarrollo y de tiempo de ejecución Dem Dem CanTrcv->Dem Dem_SetEventStatus (CANTRCV_E_BUS_ERROR) HW CAN-Transceiver-Hardware Dio->HW Pins Spi->HW Register

Diagrama de contexto: CanTrcv es operado por CanIf, EcuM y el planificador, y accede al hardware mediante Dio, Spi e Icu. Notifica errores a DET y DEM. Fuentes: [SWS_CanTrcv_00084], [SWS_CanTrcv_00085], [SWS_CanTrcv_00146], SWS EcuM p. 35

Inicialización, ciclo de vida y desinicialización

Antes de invocar CanTrcv_Init [SWS_CanTrcv_00001], el entorno debe haber inicializado todos los controladores utilizados, en particular Spi y Dio [SWS_CanTrcv_00099]. El pasaje del documento añade dos requisitos temporales: la inicialización debe realizarse poco después del encendido y los servicios subyacentes deben ser cortos y síncronos (SWS CanTrcv p. 26).

CanTrcv_Init inicializa todos los transceptores conectados de acuerdo con sus secuencias de inicialización y la configuración de ConfigPtr [SWS_CanTrcv_00180]. El contenido de CanTrcv_ConfigType es específico del hardware [SWS_CanTrcv_00209]. Después, cada transceptor se encuentra en CANTRCV_TRCVMODE_SLEEP o CANTRCV_TRCVMODE_STANDBY; esto se puede configurar por cada transceptor [SWS_CanTrcv_00148].

Al mismo tiempo, la inicialización comprueba si existen reactivaciones:

  • Si el hardware lo admite, CanTrcv_Init comprueba si la actividad del transceptor ha disparado la reactivación. Notifica el resultado mediante EcuM_SetWakeupEvent con la fuente de CanTrcvWakeupSourceRef [SWS_CanTrcv_00167].
  • En transceptores compatibles con PN, además se vuelve a ejecutar la secuencia de configuración si el flag POR o SYSERR está activado. De lo contrario, la configuración guardada en el transceptor sigue siendo válida [SWS_CanTrcv_00182].
  • Un flag POR activado se notifica además a través de CanTrcvPorWakeupSourceRef como reactivación [SWS_CanTrcv_00183].

La notificación de POR se adecua a transceptores con alimentación integrada. En ellos, una reactivación pasiva se manifiesta ante la ECU como un reinicio por encendido (SWS EcuM p. 70).

init start vor El entorno ha inicializado Spi y Dio start->vor init CanTrcv_Init(ConfigPtr) vor->init komm ¿Comunicación con el transceptor correcta? init->komm noctrl Laufzeitfehler CANTRCV_E_NO_TRCV_CONTROL komm->noctrl No baud ¿Velocidad de baudios soportada? komm->baud Sí baudErr DET: CANTRCV_E_BAUDRATE_NOT_SUPPORTED baud->baudErr No seq Ejecutar secuencias de inicialización según la configuración baud->seq Sí porsys Hardware de PN: ¿POR o SYSERR activados? seq->porsys rekonf Ejecutar de nuevo la secuencia de configuración porsys->rekonf Sí wu ¿Wake-up por actividad del transceptor? porsys->wu No / sin hardware de PN por POR-Flag gesetzt? rekonf->por porWu EcuM_SetWakeupEvent (CanTrcvPorWakeupSourceRef) por->porWu Sí por->wu No porWu->wu wuMeld EcuM_SetWakeupEvent (CanTrcvWakeupSourceRef) wu->wuMeld Sí ziel Estado configurado por canal: CANTRCV_TRCVMODE_STANDBY o CANTRCV_TRCVMODE_SLEEP wu->ziel No wuMeld->ziel ende ziel->ende

Diagrama de actividades: la inicialización comprueba la accesibilidad del hardware, trata POR/SYSERR, notifica reactivaciones a EcuM y finaliza por canal en STANDBY o SLEEP. El orden de las comprobaciones es una interpretación. Fuentes: [SWS_CanTrcv_00180], [SWS_CanTrcv_00182], [SWS_CanTrcv_00183], [SWS_CanTrcv_00167], [SWS_CanTrcv_00148]

CanTrcv_DeInit [SWS_CanTrcv_91001] establece el hardware del transceptor en el estado NOT_ACTIVE [SWS_CanTrcv_91003]. En este estado se puede configurar con una nueva secuencia de configuración (SWS CanTrcv p. 49). El estado inicial esperado es CANTRCV_TRCVMODE_NORMAL; de lo contrario, la comprobación de errores de desarrollo notifica CANTRCV_E_TRCV_NOT_NORMAL [SWS_CanTrcv_91005].

Modos de funcionamiento NORMAL, STANDBY y SLEEP

CanTrcv_TrcvModeType define los tres modos [SWS_CanTrcv_00163]. CanTrcv_SetOpMode [SWS_CanTrcv_00002] conmuta el estado interno del transceptor direccionado a uno de estos modos [SWS_CanTrcv_00102]. Para las transiciones aplica lo siguiente:

zustaende cluster_power_on POWER_ON cluster_active ACTIVE start NOT_ACTIVE NOT_ACTIVE start->NOT_ACTIVE Power on stop NOT_ACTIVE->stop Power off STANDBY CANTRCV_TRCVMODE_STANDBY NOT_ACTIVE->STANDBY CanTrcv_Init() [Init-Zustand STANDBY] SLEEP CANTRCV_TRCVMODE_SLEEP NOT_ACTIVE->SLEEP CanTrcv_Init() [Init-Zustand SLEEP] NORMAL CANTRCV_TRCVMODE_NORMAL NORMAL->NOT_ACTIVE CanTrcv_DeInit() NORMAL->NORMAL SetOpMode(NORMAL) NORMAL->STANDBY SetOpMode(STANDBY) STANDBY->NORMAL SetOpMode(NORMAL) STANDBY->STANDBY SetOpMode(STANDBY) STANDBY->SLEEP SetOpMode(SLEEP) SLEEP->NORMAL SetOpMode(NORMAL) SLEEP->SLEEP SetOpMode(SLEEP)

Diagrama de estados: tras Init, el transceptor se encuentra en STANDBY o SLEEP. A SLEEP solo se puede acceder desde STANDBY; a NORMAL, desde todos los modos. DeInit conduce a NOT_ACTIVE. Fuentes: SWS CanTrcv p. 19, [SWS_CanTrcv_00148], [SWS_CanTrcv_00103], [SWS_CanTrcv_00104], [SWS_CanTrcv_91003]

CanTrcv_SetOpMode opera de forma asíncrona: E_OK solo significa que la solicitud ha sido aceptada (SWS CanTrcv p. 33). CanTrcv solo invoca CanIf_TrcvModeIndication con el TransceiverId abstracto de CanIf una vez alcanzado el modo de destino [SWS_CanTrcv_00158]. CanSM ignora dicha notificación para SLEEP, ya que SLEEP solo es solicitado por el código de integración (SWS CanSM p. 94).

En hardware compatible con PN, CanTrcv_SetOpMode comprueba adicionalmente los flags POR y SYSERR [SWS_CanTrcv_00186]. Tras un POR, reinicializa el transceptor [SWS_CanTrcv_00187]. CanTrcv_GetOpMode [SWS_CanTrcv_00005] proporciona de forma síncrona el estado actual [SWS_CanTrcv_00106].

Cambio de modo del transceptorCanSMCanIfCanTrcvDio / SpiCanIf_SetTrcvMode(TransceiverId, TransceiverMode)CanTrcv_SetOpMode(Transceiver, OpMode)optPN-Hardware (CanTrcvHwPnSupport = TRUE)Comprobar flags POR/SYSERR,reinicializar tras PORDio_WriteChannel o secuencia SPIE_OK (Anforderung angenommen)E_OKAsíncrono: el modo de destino se alcanzamás tardeCanIf_TrcvModeIndication(TransceiverId, TransceiverMode)CanSM_TransceiverModeIndication(TransceiverId, TransceiverMode)CanSM ignora la notificación para SLEEP

Diagrama de secuencia: un cambio de modo se acepta de forma síncrona y posteriormente se confirma mediante indicación a CanSM a través de CanIf. Fuentes: SWS CanTrcv p. 52, [SWS_CanTrcv_00158], [SWS_CanTrcv_00186]

Wake-up: detección, causa y control de notificaciones

Un wake-up se detecta mediante interrupción o mediante polling (SWS EcuM p. 179). Durante este proceso, CanIf consulta a través de CanIf_CheckWakeup la función CanTrcv_CheckWakeup [SWS_CanTrcv_00143] (SWS CanIf p. 56). Si el hardware lo admite, esta función valida un wake-up mediante actividad del transceptor y lo notifica a través de EcuM_SetWakeupEvent [SWS_CanTrcv_00146].

CanTrcv_MainFunction [SWS_CanTrcv_00013] busca wake-ups en todos los buses en STANDBY y SLEEP y establece un flag de wake-up [SWS_CanTrcv_00112]. Es de suponer que sea relevante sobre todo en configuraciones de polling; el diagrama de configuración prevé para ello el valor CanTrcvWakeUpByPolling (ECUC-Parameter p. 185). Pregunta Q-6144fdedb98cea44 (abierta)

CanTrcv_GetBusWuReason [SWS_CanTrcv_00007] proporciona la causa de wake-up detectada por el transceptor [SWS_CanTrcv_00107]. Entre los valores posibles se encuentran CANTRCV_WU_BY_BUS, CANTRCV_WU_INTERNALLY o CANTRCV_WU_RESET [SWS_CanTrcv_00165]. El nivel de detalle con el que se pueden distinguir las causas depende en gran medida del hardware (SWS CanTrcv p. 35).

El controlador utiliza canales ICU para las interrupciones de wake-up. Solo invoca Icu_EnableNotification y Icu_DisableNotification si CanTrcvIcuChannelRef está configurado [SWS_CanTrcv_00171]. Al cambiar a STANDBY, activa los canales [SWS_CanTrcv_00172]. El pasaje del documento de R24-11 menciona adicionalmente la desactivación al cambiar a NORMAL (SWS CanTrcv p. 23).

Detección de wake-up mediante el transceptorTransceiver-HardwareEcuM / IntegrationscodeCanIfCanTrcvaltWake-up per InterruptWake-up-Interrupt (ICU-Kanal)CanIf_CheckWakeup(WakeupSource)CanTrcv_CheckWakeup(Transceiver)Wake-up durch Transceiver-Validar actividadEcuM_SetWakeupEvent(CanTrcvWakeupSourceRef)Wake-up per PollingCanTrcv_MainFunction: Busse inComprobar STANDBY/SLEEP, establecer flagCanIf_CheckWakeup(WakeupSource)CanTrcv_CheckWakeup(Transceiver)EcuM_SetWakeupEvent(CanTrcvWakeupSourceRef)Use Case: Ursache abfragenCanIf_GetTrcvWakeupReason(TransceiverId, TrcvWuReasonPtr)CanTrcv_GetBusWuReason(Transceiver, reason)E_OK, reason = z. B. CANTRCV_WU_BY_BUSE_OK

Diagrama de secuencia: se comprueba un wake-up en el transceptor mediante interrupción o polling a través de CanIf, se notifica a EcuM y posteriormente se consulta su causa. Fuentes: SWS EcuM p. 179, SWS EcuM p. 138, SWS EcuM p. 140, [SWS_CanTrcv_00146], [SWS_CanTrcv_00112]

CanTrcv_SetWakeupMode [SWS_CanTrcv_00009] controla la notificación de wake-up a través de CanTrcv_TrcvWakeupModeType [SWS_CanTrcv_00164]:

En la fase deshabilitada no debe perderse ningún wake-up [SWS_CanTrcv_00095]. El borrado sirve para descartar wake-ups almacenados cuando la notificación está deshabilitada bajo el control de la capa superior [SWS_CanTrcv_00150]. CanIf reenvía la solicitud a CanTrcv a través de CanIf_SetTrcvWakeupMode (SWS CanIf p. 100).

Despertar selectivo (Partial Networking)

En Partial Networking, los nodos permanecen en modo de bajo consumo hasta que tramas de wake-up (WUF) predefinidas los despiertan. Por tanto, los transceptores compatibles con PN no solo reaccionan al patrón de wake-up (WUP), sino también a estas tramas (SWS CanTrcv p. 27). CanTrcvHwPnSupport indica si el hardware es capaz de hacerlo [SWS_CanTrcv_00174]. El contenedor CanTrcvPartialNetwork y cinco API (CanTrcv_GetTrcvSystemData, CanTrcv_ClearTrcvWufFlag, CanTrcv_ReadTrcvTimeoutFlag, CanTrcv_ClearTrcvTimeoutFlag y CanTrcv_ReadTrcvSilenceFlag) solo existen si este parámetro es TRUE [SWS_CanTrcv_00175].

CanTrcvPnFrameCanId, CanTrcvPnFrameCanIdMask y CanTrcvPnFrameDataMask determinan a qué tramas reacciona el transceptor [SWS_CanTrcv_00177]. CanTrcv_SetPNActivationState [SWS_CanTrcv_00219] activa la función de wake-up por PN con PN_ENABLED [SWS_CanTrcv_00221] y la desactiva con PN_DISABLED [SWS_CanTrcv_00222].

La secuencia de shutdown es fundamental:

  1. CanSM borra el flag WUF a través de CanTrcv_ClearTrcvWufFlag para que no se pierda ningún wake-up por trama al entrar en el modo de bajo consumo. A continuación, el transceptor pasa a STANDBY [SWS_CanTrcv_00194].
  2. CanTrcv confirma el borrado con CanIf_ClearTrcvWufFlagIndication [SWS_CanTrcv_00195].
  3. Por último, CanSM solicita la comprobación asíncrona CanTrcv_CheckWakeFlag [SWS_CanTrcv_00223]. CanTrcv notifica el resultado mediante CanIf_CheckTrcvWakeFlagIndication [SWS_CanTrcv_00224].

Para la conexión SPI, la especificación describe una variante asíncrona (SWS CanTrcv p. 55) y una síncrona (SWS CanTrcv p. 57).

Shutdown con Partial Networking (SPI asíncrono)CanSMCanIfCanTrcvSpiAusgang: Anforderung NoCom,Transceiver NORMAL, Controller STARTEDUse Case: Parte I: borrar flag WUF, STANDBYCanIf_ClearTrcvWufFlag(TransceiverId)CanTrcv_ClearTrcvWufFlag(Transceiver)Spi_AsyncTransmit(Sequence)CanIf_ClearTrcvWufFlagIndication(TransceiverId)CanSM_ClearTrcvWufFlagIndicationCanIf_SetControllerMode(ControllerId, CAN_CS_STOPPED)CanIf_SetTrcvMode(TransceiverId, CANIF_TRCV_MODE_STANDBY)CanTrcv_SetOpMode(Transceiver, STANDBY)Spi_AsyncTransmit(Sequence)CanIf_TrcvModeIndication(TransceiverId, STANDBY)CanSM_TransceiverModeIndication(TransceiverId, STANDBY)Use Case: Parte II: sleep del controlador, comprobar flag WakeCanIf_SetControllerMode(ControllerId, CAN_CS_SLEEP)CanIf_CheckTrcvWakeFlag(TransceiverId)CanTrcv_CheckWakeFlag(Transceiver)Spi_AsyncTransmit (Wake-Flag lesen)CanIf_CheckTrcvWakeFlagIndication(TransceiverId)<User_CheckTrcvWakeFlagIndication>

Diagrama de secuencia: durante el shutdown de PN, se borra el flag WUF, el transceptor se conmuta a STANDBY y, tras el sleep del controlador, se comprueba asíncronamente el flag de wake-up. Fuentes: SWS CanTrcv p. 55, SWS CanTrcv p. 56, SWS CanSM p. 36, [SWS_CanTrcv_00194], [SWS_CanTrcv_00224]

Para el diagnóstico, CanTrcv_GetTrcvSystemData [SWS_CanTrcv_00213] lee la configuración y el estado del transceptor como uint32 [SWS_CanTrcv_00189]. Los flags de timeout y de silence se leen y se borran a través de CanTrcv_ReadTrcvTimeoutFlag [SWS_CanTrcv_00215], CanTrcv_ClearTrcvTimeoutFlag [SWS_CanTrcv_00216] y CanTrcv_ReadTrcvSilenceFlag [SWS_CanTrcv_00217]. CanTrcv_TrcvFlagStateType indica su estado [SWS_CanTrcv_00211].

Configuración y referencia de instancia

Para cada tipo de hardware de transceptor existe una instancia de controlador que atiende a todos los componentes de dicho tipo [SWS_CanTrcv_00016]. El diagrama de CanIf muestra el caso de controladores idénticos con diferentes tipos de transceptor, lo que requiere entonces dos controladores de transceptor (SWS CanIf p. 34). Un contenedor CanTrcvChannel describe cada canal (multiplicidad 1..*). Contiene, entre otros, CanTrcvHwPnSupport, CanTrcvInitState, CanTrcvWakeupByBusUsed y las referencias a las fuentes de wake-up (SWS CanTrcv p. 70).

Una diferencia entre las fuentes atañe al estado tras Init. El diagrama de configuración indica CanTrcvOpModeNormal como valor por defecto de CanTrcvInitState (ECUC-Parameter p. 187). Sin embargo, la referencia normativa para R20-11 es [SWS_CanTrcv_00148], que tras Init solo prevé SLEEP o STANDBY. El controlador debe rechazar las configuraciones con asignaciones de partición no compatibles [SWS_CanTrcv_00231].

Comportamiento en caso de error

Los errores de desarrollo de [SWS_CanTrcv_00050] siguen un patrón uniforme. Con DET activado, las API notifican:

Si DET está desactivado, las API devuelven E_NOT_OK en estos casos.

Si la comunicación con el transceptor está perturbada, el controlador notifica el error de tiempo de ejecución CANTRCV_E_NO_TRCV_CONTROL [SWS_CanTrcv_91006] a través de Det_ReportRuntimeError [SWS_CanTrcv_00085]. Esto se aplica, por ejemplo, en Init [SWS_CanTrcv_00113], SetOpMode [SWS_CanTrcv_00114], GetOpMode [SWS_CanTrcv_00115], SetWakeupMode [SWS_CanTrcv_00117], GetTrcvSystemData [SWS_CanTrcv_00190] y ClearTrcvWufFlag [SWS_CanTrcv_00196]. Una excepción es CanTrcv_GetBusWuReason: en este caso, según [SWS_CanTrcv_00116], devuelve E_OK. Init notifica una velocidad en baudios no compatible como CANTRCV_E_BAUDRATE_NOT_SUPPORTED [SWS_CanTrcv_00168].

fehler start aufruf API-Aufruf, z. B. CanTrcv_SetOpMode start->aufruf init Modul initialisiert? aufruf->init eUninit DET: CANTRCV_E_UNINIT (DET aus: E_NOT_OK) init->eUninit No id ¿ID de transceptor válido? init->id Sí eId DET: CANTRCV_E_INVALID_TRANSCEIVER (DET aus: E_NOT_OK) id->eId No ptr Zeigerparameter != NULL? id->ptr Sí ePtr DET: CANTRCV_E_PARAM_POINTER (DET aus: E_NOT_OK) ptr->ePtr No modus ¿Modo / transición admisible? ptr->modus ja / kein Zeiger eModus DET: CANTRCV_E_PARAM_TRCV_OPMODE, CANTRCV_E_TRCV_NOT_NORMAL o CANTRCV_E_TRCV_NOT_STANDBY (DET desactivado: E_NOT_OK) modus->eModus No hw Acceso al hardware mediante Dio / Spi modus->hw Sí komm Kommunikation korrekt? hw->komm eKomm Det_ReportRuntimeError: CANTRCV_E_NO_TRCV_CONTROL Retorno E_NOT_OK (GetBusWuReason: E_OK) komm->eKomm No ok E_OK komm->ok Sí

Diagrama de actividades: las llamadas a la API pasan por comprobaciones de errores de desarrollo y, a continuación, por el acceso al hardware con gestión de errores de tiempo de ejecución. El orden de comprobación es una interpretación. Fuentes: [SWS_CanTrcv_00050], [SWS_CanTrcv_00122], [SWS_CanTrcv_00123], [SWS_CanTrcv_00132], [SWS_CanTrcv_00114], [SWS_CanTrcv_00116]

Los errores de bus se tratan como errores de producción. El requisito previo es que el hardware pueda distinguir los errores de bus de otros errores [SWS_CanTrcv_00178] y que CanTrcvBusErrFlag = TRUE [SWS_CanTrcv_00205]. Entonces, CanTrcv_MainFunctionDiagnostics [SWS_CanTrcv_00218] lee cíclicamente el flag BUSERR. Notifica CANTRCV_E_BUS_ERROR como DEM_EVENT_STATUS_FAILED [SWS_CanTrcv_00206] o DEM_EVENT_STATUS_PASSED [SWS_CanTrcv_00227] a DEM [SWS_CanTrcv_00228] [SWS_CanTrcv_00229]. El evento de DEM se referencia a través de CanTrcvDemEventParameterRefs (SWS CanTrcv p. 78).

Más evidencia detallada

Guía generada por IA sobre la base de los requisitos y pasajes de documentos incluidos en el payload para CanTrcv (Classic, R20-11). Los pasajes de documentos de otros releases se utilizan de forma complementaria; cuando difieren, se indica expresamente. Las afirmaciones marcadas como interpretación no son normativas.

CAN Transceiver Driver (CanTrcv)

Controls physical bus transceiver states and wakeup detection on CAN lines.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

función CanTrcv_Init [SWS_CanTrcv_00001] 📄 PDF

void CanTrcv_Init (const CanTrcv_ConfigType* ConfigPtr);

Initializes the Can Trcv module.

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

Uso y semántica

La función CanTrcv_Init sirve para la inicialización básica del módulo CanTrcv, así como de todos los transceptores CAN conectados [SWS_CanTrcv_00001] [SWS_CanTrcv_00180]. La ejecución es síncrona y está especificada como no reentrante [SWS_CanTrcv_00001]. Como parámetro de transferencia espera a través de ConfigPtr un puntero a la configuración del controlador y no posee valor de retorno [SWS_CanTrcv_00001].

Interacción y verificación de hardware

Durante el proceso, la función ejecuta las secuencias de inicialización vinculadas al hardware de todos los transceptores conectados según la configuración, apoyando así la secuencia de inicialización de la pila AUTOSAR [SWS_CanTrcv_00180]. Mediante la llamada, cada transceptor cambia de manera independiente, según su configuración respectiva, al modo CANTRCV_TRCVMODE_SLEEP o a CANTRCV_TRCVMODE_STANDBY [SWS_CanTrcv_00148]. Siempre que el hardware lo admita, CanTrcv_Init comprueba además si se produjo previamente un evento de despertar debido a la actividad del transceptor y lo notifica al EcuM a través de EcuM_SetWakeupEvent con la fuente definida mediante CanTrcvWakeupSourceRef [SWS_CanTrcv_00167].

Manejo de errores

En caso de comunicación defectuosa o inexistente con el hardware (por ejemplo, a través de pines de puerto o SPI), la función notifica el error de tiempo de ejecución CANTRCV_E_NO_TRCV_CONTROL al Default Error Tracer [SWS_CanTrcv_00113]. Si la detección de errores de desarrollo está activa, se notifica además CANTRCV_E_BAUDRATE_NOT_SUPPORTED si una velocidad en baudios configurada no es compatible con el transceptor respectivo [SWS_CanTrcv_00168].

Este texto ha sido generado por una IA basándose en la especificación AUTOSAR R20-11.

Guía del implementador pendiente (complejidad I1)

función CanTrcv_SetOpMode [SWS_CanTrcv_00002] 📄 PDF

Std_ReturnType CanTrcv_SetOpMode (uint8 Transceiver, CanTrcv_TrcvModeType OpMode);

Sets the mode of the Transceiver to the value Op Mode.

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

La función CanTrcv_SetOpMode sirve para cambiar de forma asíncrona el modo de funcionamiento de un transceptor CAN [SWS_CanTrcv_00002]. Acepta el número de dispositivo del transceptor (Transceiver) así como el modo de destino deseado (OpMode), el cual puede adoptar los valores CANTRCV_TRCVMODE_NORMAL, CANTRCV_TRCVMODE_STANDBY o CANTRCV_TRCVMODE_SLEEP [SWS_CanTrcv_00102]. La función es reentrante para diferentes transceptores [SWS_CanTrcv_00002]. El valor de retorno E_OK confirma la aceptación de la orden de conmutación; E_NOT_OK señaliza el rechazo de la solicitud, errores en los parámetros o la falta de soporte del modo por parte del hardware [SWS_CanTrcv_00002], [SWS_CanTrcv_00105].

Al realizar la llamada deben respetarse las transiciones de estado predeterminadas:

  • Si el transceptor se encuentra en el modo CANTRCV_TRCVMODE_NORMAL, solo se puede transferir como modo de destino CANTRCV_TRCVMODE_STANDBY o CANTRCV_TRCVMODE_NORMAL [SWS_CanTrcv_00103].
  • Si el transceptor se encuentra en CANTRCV_TRCVMODE_STANDBY, la función solo se puede llamar con CANTRCV_TRCVMODE_SLEEP o CANTRCV_TRCVMODE_STANDBY [SWS_CanTrcv_00104].

Con la detección de errores de desarrollo (DET) activada, la función notifica las llamadas previas a la inicialización como CANTRCV_E_UNINIT [SWS_CanTrcv_00122], los números de transceptor no válidos como CANTRCV_E_INVALID_TRANSCEIVER [SWS_CanTrcv_00123] y los modos de funcionamiento no admisibles como CANTRCV_E_PARAM_TRCV_OPMODE [SWS_CanTrcv_00087]. Si se solicita Standby sin que el transceptor se encuentre en Normal o Standby, se desencadena CANTRCV_E_TRCV_NOT_NORMAL [SWS_CanTrcv_00120]; al solicitar Sleep fuera de Standby o Sleep, se emite la notificación CANTRCV_E_TRCV_NOT_STANDBY [SWS_CanTrcv_00121]. Si el DET está desactivado, en estos casos se devuelve E_NOT_OK. En caso de comunicación inexistente o errónea con el transceptor, se notifica el error de tiempo de ejecución CANTRCV_E_NO_TRCV_CONTROL al DET y se devuelve E_NOT_OK [SWS_CanTrcv_00114].

Si el hardware admite Selective Wakeup, la API comprueba los flags de estado POR y SYSERR [SWS_CanTrcv_00186]. Tan pronto como el transceptor alcanza el modo solicitado, el módulo informa a la capa superior a través del callback CanIf_TrcvModeIndication [SWS_CanTrcv_00158].

Este texto ha sido generado por una IA sobre la base de los requisitos de la especificación.

Guía del implementador pendiente (complejidad I2)

función CanTrcv_GetBusWuReason [SWS_CanTrcv_00007] 📄 PDF

Std_ReturnType CanTrcv_GetBusWuReason (uint8 Transceiver, CanTrcv_TrcvWakeupReasonType* reason);

Gets the wakeup reason for the Transceiver and returns it in parameter Reason.

función CanTrcv_SetWakeupMode [SWS_CanTrcv_00009] 📄 PDF

Std_ReturnType CanTrcv_SetWakeupMode (uint8 Transceiver, CanTrcv_TrcvWakeupModeType TrcvWakeupMode);

En ables, disables or clears wake - up events of the Transceiver according to Trcv Wakeup Mode.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 7ddf69d5a7ae 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 CanTrcv_SetWakeupMode sirve para activar, desactivar o borrar eventos de wake-up para un transceptor determinado [SWS_CanTrcv_00009]. Se le transfieren el transceptor de destino a través del parámetro Transceiver, así como el modo deseado a través de TrcvWakeupMode. En caso de cambio de estado correcto, la función devuelve E_OK. Si el estado no se puede cambiar o un parámetro no es válido, se devuelve E_NOT_OK y el estado previo se conserva sin cambios [SWS_CanTrcv_00009].

Modos de funcionamiento e interacción

Si se llama a TrcvWakeupMode con el valor CANTRCV_WUMODE_CLEAR, la función borra un evento de wake-up almacenado del transceptor direccionado [SWS_CanTrcv_00094]. En caso de llamada con CANTRCV_WUMODE_ENABLE, el módulo actualiza el evento de wake-up al estado «present», siempre que ya haya pendiente un evento de wake-up almacenado para el bus correspondiente [SWS_CanTrcv_00111]. Interpretación: Para desactivar eventos de wake-up debería existir análogamente un valor de modo correspondiente, aunque este no se detalle por separado en el presente extracto de requisitos. Pregunta Q-e0f15d1d0855db81 (abierta)

Tratamiento de errores y concurrencia

La función es reentrante para diferentes instancias de transceptor [SWS_CanTrcv_00009]. Antes de la llamada, el controlador del transceptor debe estar completamente inicializado: una llamada en estado no inicializado desencadena el error CANTRCV_E_UNINIT con la detección de errores de desarrollo (DET) activa; de lo contrario, se devuelve E_NOT_OK [SWS_CanTrcv_00127]. Un índice no válido en Transceiver produce CANTRCV_E_INVALID_TRANSCEIVER (o bien E_NOT_OK) [SWS_CanTrcv_00131], y un valor de modo no permitido en TrcvWakeupMode notifica CANTRCV_E_PARAM_TRCV_WAKEUP_MODE o proporciona E_NOT_OK [SWS_CanTrcv_00089]. Si no hay comunicación o esta es defectuosa con el transceptor, se notifica el error de tiempo de ejecución CANTRCV_E_NO_TRCV_CONTROL al Default Error Tracer y se devuelve E_NOT_OK [SWS_CanTrcv_00117].

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

Guía del implementador pendiente (complejidad I2)

función CanTrcv_GetTrcvSystemData [SWS_CanTrcv_00213] 📄 PDF

Std_ReturnType CanTrcv_GetTrcvSystemData (uint8 Transceiver, uint32* TrcvSysData);

Reads the transceiver configuration/ status data and returns it through parameter Trcv Sys Data. This API shall exist only if Can Trcv Hw Pn Support = TRUE.

función CanTrcv_ClearTrcvWufFlag [SWS_CanTrcv_00214] 📄 PDF

Std_ReturnType CanTrcv_ClearTrcvWufFlag (uint8 Transceiver);

Clears the WUF flag in the transceiver hardware. This API shall exist only if Can Trcv Hw Pn Support = TRUE.

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

La función síncrona CanTrcv_ClearTrcvWufFlag borra el flag de trama de activación (WUF) en el hardware del transceptor CAN direccionado y solo está disponible si se ha configurado compatibilidad con Selective Wakeup (CanTrcvHwPnSupport = TRUE) [SWS_CanTrcv_00214], [SWS_CanTrcv_00175]. En caso de borrado correcto se devuelve E_OK; de lo contrario, E_NOT_OK [SWS_CanTrcv_00214], [SWS_CanTrcv_00194].

Interacción y secuencia

El módulo CanSM utiliza la API al entrar en un modo de bajo consumo para garantizar que no se pierda ningún evento de activación por trama durante la transición de estado [SWS_CanTrcv_00194]. Tras restablecer el flag WUF, el transceptor CAN debe ponerse en modo Standby (CANTRCV_STANDBY) [SWS_CanTrcv_00194].

Concurrencia y contexto de llamada

Las llamadas a CanTrcv_ClearTrcvWufFlag son reentrantes para diferentes instancias de transceptor (Transceiver) [SWS_CanTrcv_00214].

Manejo de errores

  • Errores de desarrollo (DET): Si la detección de errores está activa, la función notifica el error CANTRCV_E_UNINIT [SWS_CanTrcv_00197] si el controlador no está inicializado y el error CANTRCV_E_INVALID_TRANSCEIVER [SWS_CanTrcv_00198] en caso de un parámetro no válido Transceiver. Si DET está desactivado, en estos casos se devuelve directamente E_NOT_OK [SWS_CanTrcv_00197], [SWS_CanTrcv_00198].
  • Errores en tiempo de ejecución: Si la comunicación con el transceptor falla o es defectuosa, la función notifica el error en tiempo de ejecución CANTRCV_E_NO_TRCV_CONTROL al Default Error Tracer y devuelve E_NOT_OK [SWS_CanTrcv_00196].

Esta nota de uso se generó de forma automatizada sobre la base de la especificación AUTOSAR R20-11.

Guía del implementador pendiente (complejidad I1)

función CanTrcv_ReadTrcvTimeoutFlag [SWS_CanTrcv_00215] 📄 PDF

Std_ReturnType CanTrcv_ReadTrcvTimeoutFlag (uint8 Transceiver, CanTrcv_TrcvFlagStateType* FlagState);

Reads the status of the tim eout flag from the transceiver hardware. This API shall exist only if Can Trcv Hw Pn Support = TRUE.

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

La función síncrona CanTrcv_ReadTrcvTimeoutFlag lee el estado del flag de timeout directamente desde el hardware del transceptor CAN [SWS_CanTrcv_00215]. Como parámetro de entrada sirve Transceiver para identificar el transceptor al que dirigirse, mientras que mediante el parámetro de salida FlagState de tipo CanTrcv_TrcvFlagStateType* se devuelve el estado del flag [SWS_CanTrcv_00215]. El valor de retorno señala con E_OK una lectura correcta y con E_NOT_OK que no se pudo determinar el estado del flag de timeout [SWS_CanTrcv_00215].

Para el uso y la integración en el controlador del transceptor se aplican las siguientes condiciones marco:

  • Configuración: La API está disponible exclusivamente si está activado el soporte de hardware para redes parciales (CanTrcvHwPnSupport = TRUE) [SWS_CanTrcv_00215]. El contenedor de configuración asociado CanTrcvPartialNetwork también existe únicamente bajo esta condición [SWS_CanTrcv_00175].
  • Concurrencia: La función está especificada como no reentrante (Non Reentrant) [SWS_CanTrcv_00215].

El tratamiento de errores distingue según el estado de la detección de errores de desarrollo (Development Error Detection, DET):

  • Si se transfiere un identificador de transceptor no válido, el módulo genera con DET activo el error CANTRCV_E_INVALID_TRANSCEIVER; con DET desactivado se devuelve en su lugar E_NOT_OK [SWS_CanTrcv_00199].
  • Si se transfiere un puntero nulo para FlagState (FlagState = NULL), el módulo notifica con DET activo el error CANTRCV_E_PARAM_POINTER; si DET está desconectado, la llamada proporciona E_NOT_OK [SWS_CanTrcv_00200].

Esta nota de uso se ha generado automáticamente sobre la base de la especificación AUTOSAR CP R20-11.

Guía del implementador pendiente (complejidad I2)

función CanTrcv_ClearTrcvTimeoutFlag [SWS_CanTrcv_00216] 📄 PDF

Std_ReturnType CanTrcv_ClearTrcvTimeoutFlag (uint8 Transceiver);

Clears the status of the timeout flag in the transceiver hardware. This API shall exist only if Can Trcv Hw Pn Support = TRUE.

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

La función síncrona CanTrcv_ClearTrcvTimeoutFlag sirve para restablecer el flag de timeout en el hardware del transceptor [SWS_CanTrcv_00216]. Está disponible exclusivamente si el soporte de hardware para Partial Networking está activado a través del parámetro de configuración CanTrcvHwPnSupport = TRUE [SWS_CanTrcv_00175], [SWS_CanTrcv_00216].

Uso e interfaz

La llamada se realiza de forma síncrona a través de la interfaz en CanTrcv.h indicando el transceptor de destino:

  • Parámetro: Transceiver determina como valor de entrada (uint8) el canal del transceptor al que dirigirse [SWS_CanTrcv_00216].
  • Valor de retorno: Un Std_ReturnType señala con E_OK el borrado correcto del flag de hardware o con E_NOT_OK un fallo de la operación [SWS_CanTrcv_00216].

Manejo de errores

Si se transfiere a la función un identificador no válido para el parámetro Transceiver, se aplica un tratamiento de errores diferenciado:

  • Con la detección de errores de desarrollo (Development Error Detection) activa, se notifica el error CANTRCV_E_INVALID_TRANSCEIVER al DET [SWS_CanTrcv_00201].
  • Si la detección de errores de desarrollo está desactivada, la llamada se interrumpe y devuelve E_NOT_OK a quien llamó [SWS_CanTrcv_00201].

Concurrencia e integración en el sistema

La función está clasificada como no reentrante (Non Reentrant) [SWS_CanTrcv_00216]. Por lo tanto, las llamadas paralelas para la misma unidad de hardware deben evitarse o sincronizarse mediante la capa llamadora. Además, la función forma parte del alcance funcional para funciones de wakeup selectivo (Partial Networking); las estructuras de configuración correspondientes en el contenedor CanTrcvPartialNetwork existen asimismo solo si CanTrcvHwPnSupport está establecido [SWS_CanTrcv_00175].

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

Guía del implementador pendiente (complejidad I1)

función CanTrcv_ReadTrcvSilenceFlag [SWS_CanTrcv_00217] 📄 PDF

Std_ReturnType CanTrcv_ReadTrcvSilenceFlag (uint8 Transceiver, CanTrcv_TrcvFlagStateType* FlagState);

Reads the status of the silence flag from the transceiver hardware. This API shall exi st only if Can Trcv Hw Pn Support = TRUE.

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

La función síncrona y no reentrante CanTrcv_ReadTrcvSilenceFlag (ID de servicio 0x0d) sirve para leer el estado del flag de silencio directamente desde el hardware del transceptor CAN [SWS_CanTrcv_00217]. Se proporciona a través de la cabecera CanTrcv.h y, debido a la falta de reentrancia, no debe ejecutarse de forma concurrente [SWS_CanTrcv_00217].

Parámetros y valores de retorno

  • Transceiver: Parámetro de entrada (uint8) para direccionar la respectiva instancia de transceptor a través de su identificador [SWS_CanTrcv_00217].
  • FlagState: Parámetro de salida como puntero a CanTrcv_TrcvFlagStateType, a través del cual se devuelve el estado leído del flag de silencio [SWS_CanTrcv_00217].
  • Valor de retorno (Std_ReturnType): Devuelve E_OK si el estado de hardware del flag de silencio se pudo leer correctamente; de lo contrario, E_NOT_OK [SWS_CanTrcv_00217].

Manejo de errores

Si se transfiere a la función un puntero nulo para el parámetro de salida (FlagState == NULL), el tratamiento de errores depende del control de desarrollo: con DET activado, el controlador del transceptor CAN notifica el error de desarrollo CANTRCV_E_PARAM_POINTER; si DET está desactivado, la llamada se cancela de inmediato con E_NOT_OK [SWS_CanTrcv_00203].

Configuración e interacción

La función se encuentra en el contexto del despertar selectivo (Selective Wakeup). El contenedor de configuración correspondiente CanTrcvPartialNetwork, así como la interfaz CanTrcv_ReadTrcvSilenceFlag, solo están disponibles en el controlador si el soporte de hardware para Partial Networking está configurado mediante CanTrcvHwPnSupport = TRUE [SWS_CanTrcv_00175], [SWS_CanTrcv_00217].

Esta nota de uso se generó de forma automatizada sobre la base de la especificación AUTOSAR R20-11.

Guía del implementador pendiente (complejidad I1)

función CanTrcv_CheckWakeup [SWS_CanTrcv_00143] 📄 PDF

Std_ReturnType CanTrcv_CheckWakeup (uint8 Transceiver);

Service is called by underlying CANIF in case a wake up interrupt is detected.

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

La función síncrona y reentrante CanTrcv_CheckWakeup es llamada por la interfaz subyacente CanIf tan pronto como se detecta una interrupción de despertar [SWS_CanTrcv_00143]. A través del parámetro Transceiver se direcciona el transceptor CAN que se va a comprobar [SWS_CanTrcv_00143]. El valor de retorno E_OK señala la aceptación de la llamada, mientras que E_NOT_OK indica la no aceptación [SWS_CanTrcv_00143].

Siempre que el hardware lo admita, la función comprueba si realmente existe un evento de reactivación debido a actividad en el transceptor [SWS_CanTrcv_00146]. Si este es el caso, la notificación de reactivación se envía al EcuM a través de la API EcuM_SetWakeupEvent con la fuente de reactivación referenciada en CanTrcvWakeupSourceRef [SWS_CanTrcv_00146].

Para el tratamiento de errores, se aplican los siguientes requisitos con la detección de errores de desarrollo (DET) activada:

  • Si la función se invoca antes de la inicialización del módulo CanTrcv, se notifica el error de desarrollo CANTRCV_E_UNINIT; si DET está desactivado, la llamada devuelve en su lugar E_NOT_OK [SWS_CanTrcv_00144].
  • Si se transfiere un número de transceptor no válido, la función notifica CANTRCV_E_INVALID_TRANSCEIVER; si DET está desactivado, se devuelve E_NOT_OK [SWS_CanTrcv_00145].

Esta nota de uso se basa exclusivamente en los requisitos de especificación de AUTOSAR Classic R20-11.

Guía del implementador pendiente (complejidad I1)

función CanTrcv_SetPNActivationState [SWS_CanTrcv_00219] 📄 PDF

Std_ReturnType CanTrcv_SetPNActivationState (CanTrcv_PNActivationType ActivationState);

The API configures the wake - up of the transceiver for Standby and Sleep Mode: Either the CAN transceiver is woken up by a remote wake - up pattern (standard CAN wake - up) or by the configured remote wake - up frame.

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

La función síncrona CanTrcv_SetPNActivationState configura el comportamiento de despertar del transceptor CAN para el modo Standby y Sleep ([SWS_CanTrcv_00219]). Determina si el transceptor se despierta a través de un patrón de wake-up estándar o de forma selectiva a través de una trama de wake-up remota configurada en el marco de Partial Networking ([SWS_CanTrcv_00219]).

Uso y parámetros

La función se proporciona a través de CanTrcv.h con el ID de servicio 0x0f y se ejecuta de forma síncrona ([SWS_CanTrcv_00219]). Su parámetro de transferencia ActivationState de tipo CanTrcv_PNActivationType controla el modo de funcionamiento:

Como valor de retorno, la función proporciona E_OK si el transceptor se cambió con éxito a la configuración de PN solicitada. Si el cambio falla, se devuelve E_NOT_OK; en este caso, la configuración anterior se mantiene sin modificaciones ([SWS_CanTrcv_00219]).

Restricciones y tratamiento de errores

La función es no reentrante (Non Reentrant) ([SWS_CanTrcv_00219]). Como condición previa obligatoria, el módulo CanTrcv debe haberse inicializado por completo antes de la llamada: si la llamada se produce antes de la inicialización, la función notifica el error CANTRCV_E_UNINIT al DET con la detección de errores de desarrollo activa; si DET está desactivado, la llamada se rechaza de inmediato con el valor de retorno E_NOT_OK ([SWS_CanTrcv_00220]).

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

Guía del implementador pendiente (complejidad I1)

función CanTrcv_CheckWakeFlag [SWS_CanTrcv_00223] 📄 PDF

Std_ReturnType CanTrcv_CheckWakeFlag (uint8 Transceiver);

Requests to check the status of the wakeup flag from the transceiver hardware.

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

La función CanTrcv_CheckWakeFlag solicita la comprobación del estado del flag de wakeup directamente desde el hardware del transceptor ([SWS_CanTrcv_00223]). La llamada se realiza de forma asíncrona y hace referencia, a través del parámetro de entrada Transceiver, al identificador correspondiente del transceptor CAN al que dirigirse ([SWS_CanTrcv_00223]).

Como valor de retorno, la función proporciona el estado Std_ReturnType ([SWS_CanTrcv_00223]):

En cuanto a la concurrencia, se establece que la función es no reentrante (Non Reentrant) ([SWS_CanTrcv_00223]). Dado que el servicio está especificado como asíncrono, el valor de retorno refleja únicamente la aceptación de la orden de comprobación; la lectura efectiva del hardware debería producirse posteriormente ([SWS_CanTrcv_00223]). Pregunta Q-f09b7ff49c24cea8 (abierta) No se indican códigos de error concretos ni notificaciones DET o DEM para este servicio.

Esta nota de uso fue generada por una IA sobre la base de la especificación AUTOSAR.

Guía del implementador pendiente (complejidad I1)

función CanTrcv_DeInit [SWS_CanTrcv_91001] 📄 PDF

void CanTrcv_DeInit (void);

De - initializes the Can Trcv module.

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

La función síncrona CanTrcv_DeInit sirve para la desinicialización del controlador del transceptor CAN [SWS_CanTrcv_91001]. No recibe ningún parámetro, no devuelve ningún valor y está especificada como no reentrante (Non Reentrant) [SWS_CanTrcv_91001]. La interfaz se proporciona a través de la cabecera CanTrcv.h con el Service-ID 0x10 [SWS_CanTrcv_91001].

Durante la ejecución, la función sitúa el hardware del transceptor CAN en el estado NOT_ACTIVE [SWS_CanTrcv_91003]. Dado que CanTrcv_DeInit no es reentrante, las llamadas no deben realizarse de forma interruptiva ni concurrente entre sí [SWS_CanTrcv_91001].

Con respecto al tratamiento de errores y las condiciones de secuencia, se aplica lo siguiente:

  • Si la detección de errores de desarrollo (Development Error Detection) está activada para el módulo, la función comprueba el modo de funcionamiento del transceptor. Si el transceptor no se encuentra en el modo CANTRCV_TRCVMODE_NORMAL en el momento de la llamada, CanTrcv_DeInit notifica el error de desarrollo CANTRCV_E_TRCV_NOT_NORMAL [SWS_CanTrcv_91005].
  • De ello se deriva para el llamador la condición previa funcional de operar el transceptor en el estado CANTRCV_TRCVMODE_NORMAL antes de la desinicialización, a fin de evitar un informe de error en el modo de desarrollo [SWS_CanTrcv_91005].

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

función CanTrcv_MainFunction [SWS_CanTrcv_00013] 📄 PDF

void CanTrcv_MainFunction (void);

Service to scan all busses for wake up events and perform these event.

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

La función CanTrcv_MainFunction sirve como servicio central del controlador de transceptor CAN para supervisar todos los canales de bus conectados en busca de eventos de despertar ocurridos, así como para llevar a cabo dichos eventos [SWS_CanTrcv_00013]. Posee la signatura en C void CanTrcv_MainFunction(void), está definida con el ID de servicio hexadecimal 0x06 y opera de forma síncrona sin parámetros de transferencia ni valores de retorno [SWS_CanTrcv_00013].

Para la supervisión cíclica, la función explora selectivamente todos los buses que se encuentran en los estados de reposo STANDBY o SLEEP [SWS_CanTrcv_00112]. Si el controlador detecta un evento de despertar en uno de los buses supervisados, CanTrcv_MainFunction establece un flag interno de evento de despertar para provocar la posterior ejecución y procesamiento de estos eventos en el sistema [SWS_CanTrcv_00112].

En cuanto al contexto de llamada, la interfaz se proporciona a través del archivo de cabecera SchM_CanTrcv.h [SWS_CanTrcv_00013]. Interpretación: la provisión mediante esta cabecera del SchM sugiere que la función probablemente deba ser llamada periódicamente por el planificador de BSW en el contexto de una tarea cíclica para muestrear regularmente los canales de bus en estados inactivos. Pregunta Q-588109b1111a0f43 (abierta) En el presente extracto de la especificación no se mencionan códigos de error específicos, mensajes al DET o DEM ni requisitos de reentrancia.

Este texto fue generado por una IA a partir de la especificación AUTOSAR R20-11.

Guía del implementador pendiente (complejidad I1)

función CanTrcv_MainFunctionDiagnostics [SWS_CanTrcv_00218] 📄 PDF

void CanTrcv_MainFunctionDiagnostics (void);

Reads the transceiver diagnostic status periodically and sets product/ development accordingly.

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

La función CanTrcv_MainFunctionDiagnostics (Service-ID 0x08) lee periódicamente el estado de diagnóstico del transceptor y establece los correspondientes errores de producción y de desarrollo [SWS_CanTrcv_00218]. La función carece de parámetros, no posee valor de retorno (void CanTrcv_MainFunctionDiagnostics(void)) y se proporciona a través de la cabecera SchM_CanTrcv.h [SWS_CanTrcv_00218].

Contexto de llamada y concurrencia

Debido a su puesta a disposición a través de SchM_CanTrcv.h, la función principal probablemente es invocada de forma cíclica por el planificador de BSW (SchM) en el contexto de una tarea (interpretación). Pregunta Q-ab1f6c55abcb8d4b (abierta) Dado que la especificación no indica reentrancia, debe asumirse una ejecución no reentrante.

Tratamiento de errores e interacción con el DEM

La evaluación del diagnóstico se realiza en función de la configuración y de la compatibilidad del hardware:

  • Si el flag BUSERR notificado por el BSW está establecido, la función invoca la API Dem_SetEventStatus con el parámetro EventId como CANTRCV_E_BUS_ERROR y EventStatus como DEM_EVENT_STATUS_FAILED [SWS_CanTrcv_00206].
  • Si el flag BUSERR está restablecido, CanTrcv_MainFunctionDiagnostics invoca la API Dem_SetEventStatus con la misma EventId (CANTRCV_E_BUS_ERROR) y el estado DEM_EVENT_STATUS_PASSED [SWS_CanTrcv_00227].

Este texto ha sido generado por una IA. No sustituye el estudio de las especificaciones AUTOSAR correspondientes.

Guía del implementador pendiente (complejidad I1)

tipo CanTrcv_ConfigType [SWS_CanTrcv_00209] 📄 PDF

This is the type of the external data structure containing the overall initialization data for the CAN transceiver driver and settings affecting all transceivers. Furthermore it contains pointers to transceiver configuration structures. The con tents of the initialization data structure are CAN transceiver hardware specific.

tipo CanTrcv_PNActivationType [SWS_CanTrcv_00210] 📄 PDF

Datatype used for describing whether PN wakeup functionality in Can Trcv is enabled or disabled.

tipo CanTrcv_TrcvFlagStateType [SWS_CanTrcv_00211] 📄 PDF

Provides the state of a flag in the transceiver hardware.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 4ef0e0487226 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 CanTrcv_TrcvFlagStateType representa el estado de un flag individual en el hardware del transceptor [SWS_CanTrcv_00211]. La declaración se proporciona para los módulos de software y controladores aplicadores a través del archivo de cabecera CanTrcv.h [SWS_CanTrcv_00211].

El rango de valores tiene una estructura binaria y distingue dos estados discretos según [SWS_CanTrcv_00211]:

  • CANTRCV_FLAG_SET: Indica que el flag respectivo está activado en el hardware del transceptor [SWS_CanTrcv_00211].
  • CANTRCV_FLAG_CLEARED: Indica que el flag en el hardware del transceptor está borrado o no está activado [SWS_CanTrcv_00211].

Para el uso práctico, cabe señalar que el tipo sirve primordialmente para el mapeo estandarizado de estados de registro cercanos al hardware [SWS_CanTrcv_00211]. Interpretación: Las capas llamadoras, como el controlador de interfaz CAN o los módulos de diagnóstico, deberían leer típicamente este tipo mediante funciones de consulta a través de parámetros de puntero o valor de retorno, para evaluar posibles flags de error o de wake-up. Pregunta Q-1b75b4baf2f4c6e3 (abierta) Puesto que el tipo en sí no contiene lógica de función, restricciones de reentrancia o notificaciones DET, la comprobación de rangos de valores válidos corresponde a las interfaces de procesamiento.

Este texto fue generado por una IA y sirve como guía orientativa. El texto vinculante es la especificación AUTOSAR.

Guía del implementador pendiente (complejidad I1)

tipo CanTrcv_TrcvModeType [SWS_CanTrcv_00163] 📄 PDF

Operating modes of the CAN Transceiver Driver.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: b8ef2e8c5d35 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 CanTrcv_TrcvModeType define según [SWS_CanTrcv_00163] los modos de funcionamiento estandarizados para el controlador del transceptor CAN (CanTrcv). La declaración se pone a disposición a través del archivo de cabecera Can_GeneralTypes.h para interfaces intersoftware en la pila de comunicación de AUTOSAR.

Rango de valores y significados

Según [SWS_CanTrcv_00163] se dispone de tres valores de enumeración:

  • CANTRCV_TRCVMODE_NORMAL (valor 0x00): Identifica el modo de funcionamiento regular del transceptor para la transmisión y recepción de mensajes CAN.
  • CANTRCV_TRCVMODE_STANDBY: Representa el modo standby del transceptor, en el que la comunicación descansa y existe un consumo de corriente reducido.
  • CANTRCV_TRCVMODE_SLEEP: Representa el modo de suspensión del transceptor para el máximo ahorro de energía.

Uso y restricciones

La enumeración sirve como representación común del tipo de datos para el estado de hardware del transceptor CAN [SWS_CanTrcv_00163]. Interpretación: El tipo debería servir sobre todo para el paso de parámetros en interfaces de control y consulta del controlador del transceptor, mediante las cuales capas superiores como la interfaz CAN provocan cambios de modo o leen el estado actual. Pregunta Q-95fceb6988818621 (abierta) Dado que el presente extracto de la especificación no contiene errores de tiempo de ejecución (DET/DEM), indicaciones de reentrancia ni firmas de funciones concretas, los contextos de llamada y las reglas de concurrencia deben consultarse en las respectivas funciones del controlador que lo utilicen.

Esta nota de uso se basa exclusivamente en los datos de especificación de AUTOSAR R20-11 sobre [SWS_CanTrcv_00163].

Guía del implementador pendiente (complejidad I1)

tipo CanTrcv_TrcvWakeupModeType [SWS_CanTrcv_00164] 📄 PDF

This type shall be used to control the CAN transceiver concerning wake up events and wake up notifications.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: ceecd083c1cd 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 CanTrcv_TrcvWakeupModeType sirve para el control de un transceptor CAN en lo relativo a eventos de wake-up y notificaciones de wake-up [SWS_CanTrcv_00164]. La definición del tipo se proporciona a través del archivo de cabecera Can_GeneralTypes.h y queda así disponible en toda la pila [SWS_CanTrcv_00164].

El rango de valores comprende tres modos de control para el transceptor respectivamente direccionado [SWS_CanTrcv_00164]:

  • CANTRCV_WUMODE_ENABLE (valor 0x00): Activa la notificación para eventos de wakeup en el transceptor direccionado [SWS_CanTrcv_00164].
  • CANTRCV_WUMODE_DISABLE (valor 0x01): Desactiva la notificación para eventos de wakeup en el transceptor direccionado [SWS_CanTrcv_00164].
  • CANTRCV_WUMODE_CLEAR (valor 0x02): Borra un evento de wakeup almacenado en el transceptor direccionado [SWS_CanTrcv_00164].

Interpretación: En la práctica, el tipo se debería utilizar primordialmente como parámetro de transferencia en funciones de control del controlador del transceptor para activar o desactivar dinámicamente notificaciones de wake-up, así como para restablecer eventos de wake-up detectados. Pregunta Q-c53d60cdad0442ca (abierta) Dado que la especificación, como mero tipo de enumeración, no predefine firmas de función, semántica de ejecución, códigos de error o reglas de concurrencia, estos aspectos quedan determinados por completo por las interfaces del controlador que llaman y procesan [SWS_CanTrcv_00164].

Este texto ha sido elaborado por una IA; no se puede garantizar su exactitud.

Guía del implementador pendiente (complejidad I1)

tipo CanTrcv_TrcvWakeupReasonType [SWS_CanTrcv_00165] 📄 PDF

This type denotes the wake up reason detected by the CAN transceiver in detail. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_CANTransceiverDriver

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

Record
AUTOSAR/AP/record/CP_MOD_CanTrcv
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_CanTrcv@rel:R20-11#b28186d8
Content hash
b28186d8
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_CANTransceiverDriver.pdf#nameddest=SWS_CanTrcv_00001

Inicialización y estado

De - initializes the Can Trcv module.

void CanTrcv_DeInit (void);

Gets the version of the module and returns it in Version Info.

void CanTrcv_GetVersionInfo (Std_VersionInfoType* versioninfo);
CanTrcv_Init función

Initializes the Can Trcv module.

void CanTrcv_Init (const CanTrcv_ConfigType* ConfigPtr);

Servicios · Get…

Gets the wakeup reason for the Transceiver and returns it in parameter Reason.

Std_ReturnType CanTrcv_GetBusWuReason (uint8 Transceiver, CanTrcv_TrcvWakeupReasonType* reason);

Gets the mode of the Transceiver and returns it in Op Mode.

Std_ReturnType CanTrcv_GetOpMode (uint8 Transceiver, CanTrcv_TrcvModeType* OpMode);

Reads the transceiver configuration/ status data and returns it through parameter Trcv Sys Data. This API shall exist only if Can Trcv Hw Pn Support = TRUE.

Std_ReturnType CanTrcv_GetTrcvSystemData (uint8 Transceiver, uint32* TrcvSysData);

Servicios · Set…

Sets the mode of the Transceiver to the value Op Mode.

Std_ReturnType CanTrcv_SetOpMode (uint8 Transceiver, CanTrcv_TrcvModeType OpMode);

The API configures the wake - up of the transceiver for Standby and Sleep Mode: Either the CAN transceiver is woken up by a remote wake - up pattern (standard CAN wake - up) or by the configured remote wake - up frame.

Std_ReturnType CanTrcv_SetPNActivationState (CanTrcv_PNActivationType ActivationState);

En ables, disables or clears wake - up events of the Transceiver according to Trcv Wakeup Mode.

Std_ReturnType CanTrcv_SetWakeupMode (uint8 Transceiver, CanTrcv_TrcvWakeupModeType TrcvWakeupMode);

Servicios · Otros

Requests to check the status of the wakeup flag from the transceiver hardware.

Std_ReturnType CanTrcv_CheckWakeFlag (uint8 Transceiver);

Service is called by underlying CANIF in case a wake up interrupt is detected.

Std_ReturnType CanTrcv_CheckWakeup (uint8 Transceiver);

Clears the status of the timeout flag in the transceiver hardware. This API shall exist only if Can Trcv Hw Pn Support = TRUE.

Std_ReturnType CanTrcv_ClearTrcvTimeoutFlag (uint8 Transceiver);

Clears the WUF flag in the transceiver hardware. This API shall exist only if Can Trcv Hw Pn Support = TRUE.

Std_ReturnType CanTrcv_ClearTrcvWufFlag (uint8 Transceiver);

Reads the status of the silence flag from the transceiver hardware. This API shall exi st only if Can Trcv Hw Pn Support = TRUE.

Std_ReturnType CanTrcv_ReadTrcvSilenceFlag (uint8 Transceiver, CanTrcv_TrcvFlagStateType* FlagState);

Reads the status of the tim eout flag from the transceiver hardware. This API shall exist only if Can Trcv Hw Pn Support = TRUE.

Std_ReturnType CanTrcv_ReadTrcvTimeoutFlag (uint8 Transceiver, CanTrcv_TrcvFlagStateType* FlagState);

Cíclico

Service to scan all busses for wake up events and perform these event.

void CanTrcv_MainFunction (void);

Reads the transceiver diagnostic status periodically and sets product/ development accordingly.

void CanTrcv_MainFunctionDiagnostics (void);

Tipos

This is the type of the external data structure containing the overall initialization data for the CAN transceiver driver and settings affecting all transceivers. Furthermore it contains pointers to transceiver configuration structures. The con tents of the initialization data structure are CAN transceiver hardware specific.

Datatype used for describing whether PN wakeup functionality in Can Trcv is enabled or disabled.

Provides the state of a flag in the transceiver hardware.

Operating modes of the CAN Transceiver Driver.

This type shall be used to control the CAN transceiver concerning wake up events and wake up notifications.

This type denotes the wake up reason detected by the CAN transceiver in detail. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_CANTransceiverDriver