DEENESPTFRRUARHIKOZHNL

FlexRay Transceiver Driver (FrTrcv)

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

Guide du moduleGÉNÉRÉ PAR IA

Pilote le matériel de transceiver FlexRay : définit les modes de fonctionnement, détecte les événements de réveil et signale les erreurs de bus.
GÉNÉRÉ PAR IA non vérifié Modèle : claude-opus-5-5 · Effort : high · Température : non réglable · Prompt : d2a3c22cd47c Provenance Questions ouvertes (6)
Ancre causale : R20-11 Valable à partir de R20-11 Synthétisé pour cette version de spécification.
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Pilote le matériel de transceiver FlexRay : définit les modes de fonctionnement, détecte les événements de réveil et signale les erreurs de bus.

Le pilote de transceiver FlexRay pilote les composants transceiver d'un calculateur via Dio ou Spi et propose en ACTIVE les modes NORMAL, RECEIVEONLY, STANDBY et SLEEP [SWS_FrTrcv_00481]. Il définit et lit les modes, détecte les événements de réveil par scrutation cyclique ou par notification, les signale à l'EcuM et fournit la cause du réveil. Dans le cas d'étoiles actives, il interroge les erreurs de bus par branche et déconnecte ou reconnecte les branches. Si un changement de mode échoue, il renvoie E_NOT_OK et laisse l'état précédent inchangé [SWS_FrTrcv_00323].

Le pilote de transceiver FlexRay pilote les composants transceiver d'un calculateur. Il adresse chaque composant via l'index basé sur zéro FrTrcv_TrcvIdx [SWS_FrTrcv_00323]. Vers le bas, il accède au matériel selon la configuration via Dio ou Spi SWS FrTrcv Fig. 10.4 p. 77. De plus, il utilise Icu, EcuM, Dem et Det [SWS_FrTrcv_00334]. Vers le haut, FrIf devrait avant tout utiliser les services pour le compte du FlexRay State Manager (interprétation) SWS FrSM p. 20. Question (ouverte)

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

Diagramme de contexte : FrTrcv entre FrIf/FrSM, les pilotes matériels et les services EcuM, DEM et DET. Sources : [SWS_FrTrcv_00334], SWS FrSM p. 20

Après la mise sous tension, le pilote est à l'état NOT_ACTIVE et passe à ACTIVE avec FrTrcv_Init SWS FrTrcv Fig. 7.1 p. 23. Là s'appliquent les modes NORMAL, RECEIVEONLY, STANDBY et SLEEP [SWS_FrTrcv_00481]. FrTrcv_SetTransceiverMode commute entre eux. Si le changement échoue, le service renvoie E_NOT_OK et conserve l'ancien état. Le pilote réalise les temps d'attente à l'aide de Tm_BusyWait1us16bit [SWS_FrTrcv_00485]. En STANDBY, les canaux de réveil ICU sont activés, en NORMAL ils sont désactivés [SWS_FrTrcv_00491] [SWS_FrTrcv_00492].

modi cluster_power_on POWER_ON cluster_active ACTIVE Aus Alimentation coupée 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)

Diagramme d'états : les quatre modes ACTIVE ne sont accessibles qu'après FrTrcv_Init. Les transitions sont partiellement reconstituées (interprétation). Sources : SWS FrTrcv Fig. 7.1 p. 23, [SWS_FrTrcv_00481]

Le pilote détecte les événements de réveil par deux voies : par FrTrcv_MainFunction cyclique [SWS_FrTrcv_00330] ou par notification. Selon FrTrcv_CheckWakeupByTransceiver, il signale l'événement à l'EcuM SWS FrTrcv p. 46. La cause, par exemple FRTRCV_WU_BY_BUS, est fournie par FrTrcv_GetTransceiverWUReason dans la mesure où le matériel peut la distinguer [SWS_FrTrcv_00074]. FrTrcv_ClearTransceiverWakeup efface tous les événements en attente [SWS_FrTrcv_00329].

Dans le cas d'étoiles actives, des services optionnels interrogent les erreurs de bus par branche et déconnectent ou reconnectent les branches [SWS_FrTrcv_00419] [SWS_FrTrcv_00442] [SWS_FrTrcv_00443]. Pour le traitement des erreurs :

  • Les erreurs de développement telles que FRTRCV_E_UNINIT sont transmises à DET [SWS_FrTrcv_00085].
  • Les erreurs d'exécution telles que FRTRCV_E_FR_NO_CONTROL_TRCV passent par Det_ReportRuntimeError [SWS_FrTrcv_91001].
  • Le pilote signale les erreurs de bus de classes A et B à DEM ou à une fonction de remplacement configurée [SWS_FrTrcv_00475].

Rôle : abstraction matérielle pour les composants transceiver FlexRay

Le pilote de transceiver FlexRay pilote un ou plusieurs composants transceiver FlexRay d'un calculateur. Tous les services liés aux canaux sélectionnent le composant via l'index basé sur zéro FrTrcv_TrcvIdx, qui s'applique dans le contexte du pilote [SWS_FrTrcv_00323]. Le pilote propose trois groupes de services :

FrTrcv_GetVersionInfo fournit expressément la version du module logiciel et non celle du matériel du transceiver SWS FrTrcv p. 43.

Vers le bas, le pilote accède au composant via Dio ou Spi. Pour les notifications de réveil, il utilise Icu, les signalements vont à EcuM, Dem et Det [SWS_FrTrcv_00334] [SWS_FrTrcv_00321]. Le type d'accès est défini par le conteneur de choix FrTrcvAccess : il n'autorise qu'exactement l'une des deux alternatives, à savoir l'accès Dio ou la séquence SPI SWS FrTrcv Fig. 10.4 p. 77.

Vers le haut, c'est surtout la FlexRay Interface qui devrait utiliser les services. Le FlexRay State Manager détermine la cause du réveil par transceiver d'un cluster via FrIf_GetTransceiverWUReason SWS FrSM p. 20. Interprétation : FrIf transmet ces requêtes à FrTrcv. Question Q-29229b532631a6b5 (ouverte) Cela concorde avec le fait que les types communs dans Fr_GeneralTypes.h sont protégés par FR_GENERAL_TYPES afin que plusieurs pilotes de transceiver et FrIf puissent les partager 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

Diagramme de contexte : FrTrcv se situe entre FrIf/FrSM et les pilotes Dio, Spi et Icu et émet des signalements vers EcuM, DEM et DET. Sources : [SWS_FrTrcv_00334], [SWS_FrTrcv_00485], [SWS_FrTrcv_00330], SWS FrSM p. 20

Modes de fonctionnement entre NOT_ACTIVE et ACTIVE

La figure 7.1 de la spécification décrit les modes sous la forme d'un automate à états imbriqué. À l'intérieur de POWER_ON, le pilote se trouve en NOT_ACTIVE après la mise sous tension et passe à ACTIVE avec FrTrcv_Init() SWS FrTrcv Fig. 7.1 p. 23. C'est uniquement en ACTIVE que s'appliquent les quatre valeurs de FrTrcv_TrcvModeType : FRTRCV_TRCVMODE_NORMAL, FRTRCV_TRCVMODE_RECEIVEONLY, FRTRCV_TRCVMODE_STANDBY et FRTRCV_TRCVMODE_SLEEP [SWS_FrTrcv_00481]. La couche appelante commute entre ces modes à l'aide de FrTrcv_SetTransceiverMode [SWS_FrTrcv_00323].

Un changement de mode s'exécute de façon synchrone et n'est pas réentrant. Les transitions vers des états optionnels peuvent échouer. Dans ce cas, le service renvoie E_NOT_OK et l'état précédent est conservé SWS FrTrcv p. 39. Si le composant requiert des temps d'attente pour un changement d'état, le pilote les réalise à l'aide du service de temporisation Tm_BusyWait1us16bit [SWS_FrTrcv_00485]. FrTrcv_GetTransceiverMode lit l'état réel. Ce service est réentrant et peut donc également être appelé en parallèle [SWS_FrTrcv_00324].

modi cluster_power_on POWER_ON cluster_active ACTIVE Aus Alimentation coupée 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)

Diagramme d'états : les quatre modes ACTIVE ne sont accessibles via FrTrcv_SetTransceiverMode qu'après FrTrcv_Init. Le choix des transitions est partiellement reconstitué (interprétation). Sources : SWS FrTrcv Fig. 7.1 p. 23, [SWS_FrTrcv_00481]

Démarrage et établissement de la communication sur le bus

FrTrcv_Init reçoit un pointeur vers le jeu de configuration sélectionné et initialise le pilote [SWS_FrTrcv_00322]. Cette fonction distincte initialise les variables et les ressources matérielles. Les pilotes qui gèrent des sources de réveil sont réinitialisés dans le bloc de redémarrage et réarment ce faisant le mécanisme de déclenchement de la notification de réveil SWS FrTrcv p. 37. Le pilote prend en charge la séquence d'initialisation de la pile AUTOSAR. Interprétation : au sein de cette séquence, c'est vraisemblablement l'ECU State Manager qui appelle la fonction. Question Q-93ce1e5987a96873 (ouverte)

Le passage à NORMAL a des répercussions sur les chemins de réveil. Si FrTrcvIcuChannelRef est configuré, le pilote désactive les canaux ICU avec Icu_DisableNotification [SWS_FrTrcv_00492]. Sans cette référence, il n'accède pas du tout aux canaux ICU [SWS_FrTrcv_00490].

Démarrage et passage à NORMALEcuMFrIf / FrSMFrTrcvDio / SpiIcuTmUse Case: InitialisierungFrTrcv_Init(ConfigPtr)Variables et ressources matériellesinitialisieren (NOT_ACTIVE → ACTIVE)Use Case: Kommunikation aufnehmenFrTrcv_SetTransceiverMode(TrcvIdx,FRTRCV_TRCVMODE_NORMAL)Positionner les broches de mode ou les registresTm_BusyWait1us16bit(...)optFrTrcvIcuChannelRef konfiguriertIcu_DisableNotification(...)altWechsel erfolgreichE_OKWechsel fehlgeschlagenE_NOT_OK (état inchangé)

Diagramme de séquence : l'initialisation est suivie du passage à NORMAL avec attente active (busy-wait) et désactivation optionnelle d'ICU. Un échec laisse l'état inchangé. Sources : [SWS_FrTrcv_00322], [SWS_FrTrcv_00323], [SWS_FrTrcv_00485], [SWS_FrTrcv_00492]

Détection de réveil en STANDBY et SLEEP, cause du réveil

Lors du passage à STANDBY, le pilote réactive les canaux ICU [SWS_FrTrcv_00491]. De plus, à chaque passage à STANDBY, FrTrcv_SetTransceiverMode efface l'historique des erreurs dans le transceiver, pour autant que le matériel le prenne en charge SWS FrTrcv p. 39.

En outre, le pilote peut effectuer une scrutation cyclique. Pour cela, il met FrTrcv_MainFunction à disposition via SchM_FrTrcv.h [SWS_FrTrcv_00330]. D'après le passage de document issu de R23-11, la fonction recherche des événements de réveil sur tous les bus en STANDBY et SLEEP et mémorise en interne les événements trouvés. La période est fixée par la configuration. La fonction peut s'exécuter de manière synchrone ou asynchrone par rapport à l'ordonnancement du bus FlexRay SWS FrTrcv p. 49.

Passage à STANDBY et détection cyclique de réveilFrIf / FrSMFrTrcvIcuDio / SpiBSW-SchedulerFrTrcv_SetTransceiverMode(TrcvIdx,FRTRCV_TRCVMODE_STANDBY)Effacer l'historique des erreurs dans le transceiver(si le matériel le prend en charge)optFrTrcvIcuChannelRef konfiguriertIcu_EnableNotification(...)E_OKloopcyclique, période selon la configurationFrTrcv_MainFunction()Weckstatus aller Busse inSTANDBY/SLEEP lesenWeckereignis intern speichernComportement de polling selon le passage de document R23-11 ;indépendant du schedule du bus FlexRay

Diagramme de séquence : lors de la transition vers STANDBY, l'historique des erreurs est effacé et la notification ICU est activée. Ensuite, la Main Function recherche cycliquement des événements de réveil. Sources : [SWS_FrTrcv_00491], [SWS_FrTrcv_00330], SWS FrTrcv p. 49

Si le composant détecte un réveil par le bus, le côté SPI ou DIO sous-jacent notifie le pilote. Cela peut se produire dans le contexte d'interruption SWS FrTrcv p. 46. Si FrTrcv_CheckWakeupByTransceiver est ensuite appelée [SWS_FrTrcv_00331], le pilote signale l'événement à l'ECU State Manager. À cette fin, EcuM_SetWakeupEvent figure dans la liste des interfaces utilisées [SWS_FrTrcv_00334]. Interprétation : l'appel de vérification est vraisemblablement déclenché par EcuM dans sa séquence de réveil. Question Q-d5873691a495bef0 (ouverte)

La cause du réveil est fournie par FrTrcv_GetTransceiverWUReason [SWS_FrTrcv_00325] en tant que valeur de FrTrcv_TrcvWUReasonType. Les valeurs possibles sont FRTRCV_WU_BY_BUS, FRTRCV_WU_BY_PIN, FRTRCV_WU_INTERNALLY ou FRTRCV_WU_NOT_SUPPORTED [SWS_FrTrcv_00074]. La précision avec laquelle les causes sont distinguées dépend fortement du matériel SWS FrTrcv p. 42. Le passage de document de versions ultérieures mentionne en outre FRTRCV_WU_RESET et FRTRCV_WU_POWER_ON SWS FrTrcv p. 34. Le texte d'exigence R20-11 dans le payload est raccourci à cet endroit.

Le FrSM vérifie la cause du réveil pour chaque transceiver pour FRTRCV_WU_BY_BUS. Il distingue ainsi s'il n'y a aucun réveil du bus, un réveil partiel ou un réveil complet SWS FrSM p. 20. FrTrcv_ClearTransceiverWakeup efface ensuite tous les événements de réveil en attente [SWS_FrTrcv_00329]. L'appel est également autorisé lorsque la notification de réveil est désactivée SWS FrTrcv p. 44.

Détecter, notifier et évaluer un événement de réveilIcu / 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_BUSRaison non définieE_NOT_OK (sortie inchangée)FrTrcv_ClearTransceiverWakeup(TrcvIdx)E_OK (tous les événements de réveil en attente effacés)

Diagramme de séquence : déroulement depuis la notification matérielle jusqu'à l'interrogation et l'effacement de la cause du réveil, en passant par le signalement à EcuM. Le payload ne mentionne pas l'appelant de la fonction de vérification (interprétation). Sources : [SWS_FrTrcv_00331], [SWS_FrTrcv_00325], [SWS_FrTrcv_00329], SWS FrTrcv p. 46

Étoiles actives : surveiller, déconnecter et réactiver les branches

Pour les transceivers qui desservent plusieurs branches en tant qu'étoile active, il existe trois services supplémentaires. Ils ne sont disponibles que si des branches sont configurées SWS FrTrcv p. 52. Tous les trois adressent en outre la branche via l'index basé sur zéro FrTrcv_BranchIdx et ne sont pas réentrants [SWS_FrTrcv_00419] [SWS_FrTrcv_00442] [SWS_FrTrcv_00443].

FrTrcv_GetTransceiverError écrit l'état d'erreur d'une branche sous forme de uint32 dans FrTrcv_BusErrorState. Peuvent être interrogées toutes les erreurs prescrites par l'EPL FlexRay que le matériel prend en charge SWS FrTrcv p. 48. Les branches défectueuses sont déconnectées à l'aide de FrTrcv_DisableTransceiverBranch SWS FrTrcv p. 50. FrTrcv_EnableTransceiverBranch les réactive de manière synchrone avec l'ordonnancement du bus FlexRay SWS FrTrcv p. 51. Si un index se situe en dehors de la plage valide, les deux services de commutation renvoient E_NOT_OK, et l'état de la branche reste inchangé [SWS_FrTrcv_00442] [SWS_FrTrcv_00443].

zweig start Vérifier l'état de la branche (couche appelante, interprétation) get FrTrcv_GetTransceiverError (TrcvIdx, BranchIdx, &BusErrorState) start->get rc Retour d'E_OK ? get->rc na État d'erreur non disponible ou index hors plage rc->na Non fehler Zweig fehlerhaft? rc->fehler Oui aktiv Zweig bleibt aktiv fehler->aktiv Non dis FrTrcv_DisableTransceiverBranch (TrcvIdx, BranchIdx) fehler->dis Oui wieder Réactivation souhaitée ? dis->wieder aus Zweig bleibt abgeschaltet wieder->aus Non en FrTrcv_EnableTransceiverBranch synchrone au schedule du bus FlexRay wieder->en Oui

Diagramme d'activité : interrogation des erreurs par branche, déconnexion des branches défectueuses et réactivation synchrone avec l'ordonnancement du bus. Le fait que la couche appelante prenne la décision constitue une interprétation. Sources : [SWS_FrTrcv_00419], SWS FrTrcv p. 50, SWS FrTrcv p. 51

Configuration, type d'accès et partitionnement

FrTrcv_ConfigType est une structure spécifique à l'implémentation [SWS_FrTrcv_00487]. Le module contient un ou plusieurs conteneurs FrTrcvChannel, un par canal de transceiver, ainsi que FrTrcvGeneral SWS FrTrcv p. 59. Ce passage de document issu de R23-11/R25-11 ne mentionne en outre que VARIANT-PRE-COMPILE sans prise en charge post-build. Pour R20-11, le payload ne contient aucune exigence à ce sujet.

Par émetteur-récepteur, FrTrcvAccess sélectionne soit FrTrcvDioAccess, soit FrTrcvSpiSequence SWS FrTrcv Fig. 10.4 p. 77. Les fonctions optionnelles peuvent être activées et désactivées au moment de la compilation SWS FrTrcv p. 52. FrTrcvIcuChannelRef lie la notification de réveil ICU à [SWS_FrTrcv_00490]. Avec FrTrcvDemReportErrorStatusConfiguration, une fonction personnalisée avec la même signature peut être utilisée à la place de Dem_SetEventStatus [SWS_FrTrcv_00475].

Dans les systèmes partitionnés, le module fonctionne comme une instance indépendante par partition. Un appel d'API n'affecte que la partition dans laquelle il est effectué [SWS_FrTrcv_00494]. Le module doit rejeter les affectations de partition que l'implémentation ne prend pas en charge [SWS_FrTrcv_00497].

Comportement en cas d'erreur

Les erreurs de développement sont définies [SWS_FrTrcv_00085] :

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

Ils ne sont signalés que lorsque la détection des erreurs de développement est activée. Des exemples sont FRTRCV_E_UNINIT pour les services de dérivation SWS FrTrcv p. 50 et le pointeur NULL pour FrTrcv_GetVersionInfo SWS FrTrcv p. 43.

Comme erreurs de runtime, le pilote signale les appels dans le mauvais mode avec FRTRCV_E_FR_TRCV_NOT_STANDBY à FRTRCV_E_FR_TRCV_NOT_RECEIVEONLY (0x11 à 0x14). Il signale une communication absente ou défectueuse avec le composant à l'aide de FRTRCV_E_FR_NO_CONTROL_TRCV (0x16) [SWS_FrTrcv_91001]. Ces notifications transitent par Det_ReportRuntimeError [SWS_FrTrcv_00493]. FrTrcv_GetTransceiverMode déclenche l'erreur FRTRCV_E_FR_NO_CONTROL_TRCV, par exemple lors d'une erreur d'accès à l'émetteur-récepteur SWS FrTrcv p. 41.

Avec E_NOT_OK, les paramètres de sortie restent inchangés, par exemple avec FrTrcv_GetTransceiverMode et FrTrcv_GetTransceiverError SWS FrTrcv p. 48. Un échec de changement de mode maintient l'état précédent [SWS_FrTrcv_00323].

pruefung start Appel d'un service FrTrcv init Modul initialisiert? start->init e_uninit Det_ReportError: FRTRCV_E_UNINIT init->e_uninit Non idx FrTrcv_TrcvIdx dans la plage valide ? init->idx Oui r_nok Retour d'E_NOT_OK (sorties ou état inchangés) e_uninit->r_nok e_idx Det_ReportError: FRTRCV_E_FR_INVALID_TRCVIDX idx->e_idx Non br Service de branche : FrTrcv_BranchIdx dans la plage valide ? idx->br Oui e_idx->r_nok e_br Det_ReportError: FRTRCV_E_FR_INVALID_BRANCHIDX br->e_br Non ptr Zeigerparameter ungleich NULL? br->ptr ja / kein Zweigdienst e_br->r_nok e_ptr Det_ReportError: FRTRCV_E_PARAM_POINTER ptr->e_ptr Non zugriff Accès au transceiver (Dio / Spi) ptr->zugriff Oui e_ptr->r_nok ok Zugriff fehlerfrei? zugriff->ok e_rt Det_ReportRuntimeError: FRTRCV_E_FR_NO_CONTROL_TRCV ok->e_rt Non r_ok Retour d'E_OK ok->r_ok Oui e_rt->r_nok

Diagramme d'activité : les vérifications de paramètres et d'initialisation conduisent à des erreurs de développement, les erreurs d'accès à une erreur de runtime. L'ordre des vérifications est une interprétation. Les vérifications DET n'existent que si la détection d'erreurs est activée. Sources : [SWS_FrTrcv_00085], [SWS_FrTrcv_91001], [SWS_FrTrcv_00493]

Pour le diagnostic de production, le pilote distingue deux classes d'émetteurs-récepteurs :

  • Pour les émetteurs-récepteurs de classe A pilotés par GPIO, une broche ERRN active (low) signifie « Fail », une broche inactive (high) « Pass » [SWS_FrTrcv_00489].
  • Pour les émetteurs-récepteurs de classe B pilotés par SPI, chaque bit 1…9 activé déclenche une erreur de bus [SWS_FrTrcv_00488].

L'évaluation a lieu lors d'un HALT inattendu ou à l'état NORMAL_ACTIVE du contrôleur. En cas de court-circuit sur le bus, un « Pass » du pilote ne suffit pas à lui seul comme preuve SWS FrTrcv p. 26. Dem_SetEventStatus n'est disponible qu'avec STANDARD_REPORTING [SWS_FrTrcv_00334].

dem anlass Motif : HALT inattendu ou NORMAL_ACTIVE du contrôleur klasse Transceiverklasse? anlass->klasse a Klasse A (GPIO): ERRN-Pin aktiv low? klasse->a A b Classe B (SPI) : un bit 1...9 activé ? klasse->b B fail_a Fail: FRTRCV_E_FR_ERRN_TRCV_<TrcvIdx> a->fail_a Oui pass_a Pass: FRTRCV_E_FR_ERRN_TRCV_<TrcvIdx> a->pass_a Non fail_b Fail: FRTRCV_E_FR_BUSERROR_TRCV_<TrcvIdx> b->fail_b Oui pass_b Pass: FRTRCV_E_FR_BUSERROR_TRCV_<TrcvIdx> b->pass_b Non cfg FrTrcvDemReportErrorStatusConfiguration konfiguriert? fail_a->cfg pass_a->cfg fail_b->cfg pass_b->cfg eigen fonction configurée (signature identique à Dem_SetEventStatus) cfg->eigen Oui dem Dem_SetEventStatus (uniquement avec STANDARD_REPORTING) cfg->dem Non

Diagramme d'activité : évaluation Pass/Fail par classe d'émetteur-récepteur et acheminement du signalement vers le DEM ou vers la fonction de remplacement configurée. Sources : [SWS_FrTrcv_00488], [SWS_FrTrcv_00489], [SWS_FrTrcv_00475]

Preuves détaillées supplémentaires

RéférenceClassification
[SWS_FrTrcv_00481], SWS FrTrcv Abb. 7.1 S. 23Modes de fonctionnement et automate d'états
[SWS_FrTrcv_00323], SWS FrTrcv S. 39Changement de mode, échec, effacement de l'historique des erreurs dans STANDBY
[SWS_FrTrcv_00322], SWS FrTrcv S. 37Initialisation et règle de redémarrage pour les sources de réveil
[SWS_FrTrcv_00330], [SWS_FrTrcv_00485]Scrutation cyclique et temps d'attente
[SWS_FrTrcv_00331], [SWS_FrTrcv_00325], [SWS_FrTrcv_00074], [SWS_FrTrcv_00329]Chemin de réveil de la détection à l'effacement
[SWS_FrTrcv_00490], [SWS_FrTrcv_00491], [SWS_FrTrcv_00492]Notification ICU selon le mode
[SWS_FrTrcv_00419], [SWS_FrTrcv_00442], [SWS_FrTrcv_00443]Gestion des branches pour les étoiles actives
[SWS_FrTrcv_00085], [SWS_FrTrcv_91001], [SWS_FrTrcv_00493]Erreurs de développement et de runtime
[SWS_FrTrcv_00488], [SWS_FrTrcv_00489], [SWS_FrTrcv_00475]Événements DEM et voie de notification
[SWS_FrTrcv_00487], [SWS_FrTrcv_00494], [SWS_FrTrcv_00497]Type de configuration et partitionnement

Guide généré par IA basé sur les exigences R20-11 et les passages de documents contenus dans la charge utile. Les passages de documents issus de versions ultérieures sont identifiés comme tels. Seule la spécification AUTOSAR fait foi.

FlexRay Transceiver Driver (FrTrcv)

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

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

fonction FrTrcv_Init [SWS_FrTrcv_00322] 📄 PDF

void FrTrcv_Init (const FrTrcv_ConfigType* ConfigPtr);

This service initializes the Fr Trcv.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 8880c7552dd0 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction synchrone FrTrcv_Init initialise le pilote de transceiver FlexRay de la plateforme AUTOSAR Classic ([SWS_FrTrcv_00322]). Elle possède l'ID de service 0x00 et est mise à disposition via le fichier d'en-tête FrTrcv.h ([SWS_FrTrcv_00322]). Le module FrTrcv fournit ce service pour la configuration et la mise en service du matériel transceiver ([SWS_FrTrcv_00322]).

L'interface attend comme unique paramètre le pointeur ConfigPtr de type const FrTrcv_ConfigType*, qui pointe vers le jeu de données de configuration sélectionné du transceiver ([SWS_FrTrcv_00322]) :

Comme FrTrcv_Init est spécifiée comme non réentrante (Non Reentrant), la fonction ne doit en aucun cas être appelée de manière concurrente ou multiple simultanément ([SWS_FrTrcv_00322]). L'exécution s'effectue de manière synchrone jusqu'à l'achèvement de l'initialisation ([SWS_FrTrcv_00322]).

La présente spécification ne fournit aucune indication explicite quant au contexte d'appel ni aux conditions d'ordonnancement ; l'initialisation a vraisemblablement lieu pendant le démarrage du système par la gestion des états du logiciel de base avant toutes les activités régulières de communication. Question Q-5fa4966e37b10516 (ouverte) Les codes d'erreur spécifiques, les réactions aux pointeurs nuls ainsi que les interactions avec le DET ou le DEM ne sont pas inclus dans le périmètre de la spécification fournie et ne sont donc pas détaillés davantage ([SWS_FrTrcv_00322]).

Cette note d'utilisation a été générée de manière automatisée sur la base de la spécification AUTOSAR Classic R20-11.

Guide de l'implémenteur à venir (complexité I1)

fonction FrTrcv_SetTransceiverMode [SWS_FrTrcv_00323] 📄 PDF

Std_ReturnType FrTrcv_SetTransceiverMode (uint8 FrTrcv_TrcvIdx, FrTrcv_TrcvModeType FrTrcv_TrcvMode);

This service sets the transceiver mode.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : fabc34a3f07e Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction synchrone FrTrcv_SetTransceiverMode sert à basculer le mode de fonctionnement d'un transceiver FlexRay [SWS_FrTrcv_00323]. La déclaration de ce service est fournie via le fichier d'en-tête FrTrcv.h [SWS_FrTrcv_00323].

Paramètres et contrôle

La fonction attend deux paramètres d'entrée [SWS_FrTrcv_00323] :

  • FrTrcv_TrcvIdx : cet index basé sur zéro identifie le transceiver concret au sein du pilote de transceiver pour lequel le changement d'état doit être exécuté [SWS_FrTrcv_00323].
  • FrTrcv_TrcvMode : sélectionne l'état cible vers lequel le transceiver doit basculer [SWS_FrTrcv_00323]. Il convient de noter que les transitions vers des états optionnels peuvent échouer [SWS_FrTrcv_00323].

Valeurs de retour et comportement en cas d'erreur

Le résultat du changement de mode est transmis de manière synchrone via la valeur de retour de type Std_ReturnType [SWS_FrTrcv_00323] :

  • E_OK : indique que l'état du transceiver est passé avec succès dans le mode souhaité [SWS_FrTrcv_00323].
  • E_NOT_OK : signale un échec du changement d'état ; l'état précédent du transceiver reste alors inchangé [SWS_FrTrcv_00323].

concurrence

Le service est spécifié comme non réentrant (Non Reentrant) et possède une sémantique d'exécution synchrone [SWS_FrTrcv_00323]. En raison de la propriété Non Reentrant, il incombe vraisemblablement au contexte appelant de sécuriser les appels parallèles ou se chevauchant pour le pilote. Question Q-b83c7a2879a572b7 (ouverte)

Cette note d'utilisation a été générée automatiquement et repose exclusivement sur les données de spécification d'AUTOSAR Release R20-11.

Guide de l'implémenteur à venir (complexité I1)

fonction 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.

fonction FrTrcv_GetTransceiverWUReason [SWS_FrTrcv_00325] 📄 PDF

Std_ReturnType FrTrcv_GetTransceiverWUReason (uint8 FrTrcv_TrcvIdx, FrTrcv_TrcvWUReasonType* FrTrcv_TrcvWUReasonPtr);

This function returns the wakeup reason.

fonction FrTrcv_ClearTransceiverWakeup [SWS_FrTrcv_00329] 📄 PDF

Std_ReturnType FrTrcv_ClearTransceiverWakeup (uint8 FrTrcv_TrcvIdx);

This function clears a pending wake up event.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 486bcee2a527 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation et sémantique

La fonction synchrone FrTrcv_ClearTransceiverWakeup sert à réinitialiser un événement de réveil en attente sur un transceiver FlexRay [SWS_FrTrcv_00329]. Elle est déclarée dans le fichier d'en-tête FrTrcv.h et possède l'ID de service 0x0c [SWS_FrTrcv_00329].

Le transceiver concerné au sein du pilote est spécifié via le paramètre d'entrée basé sur zéro FrTrcv_TrcvIdx [SWS_FrTrcv_00329].

Gestion des erreurs et valeurs de retour

La valeur de retour de type Std_ReturnType informe de l'issue de l'opération [SWS_FrTrcv_00329] :

  • E_OK : l'événement de réveil de la source de réveil du transceiver a été effacé avec succès [SWS_FrTrcv_00329].
  • E_NOT_OK : le paramètre FrTrcv_TrcvIdx se situe en dehors de la plage valide ; l'état de réveil reste dans ce cas inchangé [SWS_FrTrcv_00329].

Concurrence et restrictions

La fonction est spécifiée comme non réentrante [SWS_FrTrcv_00329]. Les appelants doivent par conséquent s'assurer que les appels pour une même instance n'interviennent pas de manière interruptive ou parallèle. Comme la fonction est définie comme synchrone, le traitement de l'événement de réveil devrait être achevé directement pendant l'appel au niveau du pilote. Question Q-e548008f8bae0ff0 (ouverte)

Cette note d'utilisation a été générée automatiquement sur la base de la spécification SWS_FrTrcv_00329.

fonction FrTrcv_CheckWakeupByTransceiver [SWS_FrTrcv_00331] 📄 PDF

void FrTrcv_CheckWakeupByTransceiver (uint8 FrTrcv_TrcvIdx);

-

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 61627651eb93 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation et contexte d'appel

La fonction FrTrcv_CheckWakeupByTransceiver appartient au pilote de transceiver FlexRay (module FrTrcv) et est déclarée via le fichier d'en-tête FrTrcv.h [SWS_FrTrcv_00331]. La fonction possède l'ID de service 0x0e et s'exécute de manière synchrone [SWS_FrTrcv_00331]. Elle prend comme unique paramètre d'entrée FrTrcv_TrcvIdx de type uint8, qui détermine, en tant qu'index basé sur zéro, le transceiver respectif dans le contexte du pilote de transceiver pour lequel l'opération doit être exécutée [SWS_FrTrcv_00331]. Il n'existe ni paramètre d'entrée/sortie ni paramètre de sortie pur, et la fonction ne fournit aucune valeur de retour (void) [SWS_FrTrcv_00331].

Aucune description fonctionnelle détaillée n'est enregistrée dans les données de spécification. Interprétation : d'après la dénomination, la fonction devrait servir à vérifier si un événement de réveil (Wakeup) est présent sur le matériel transceiver adressé ou a été détecté par celui-ci [SWS_FrTrcv_00331]. Question Q-9b8b5d8fb8e4543f (ouverte)

Concurrence et traitement des erreurs

En ce qui concerne le comportement de concurrence, FrTrcv_CheckWakeupByTransceiver est classée comme réentrante [SWS_FrTrcv_00331]. Cela permet des appels parallèles pour différentes instances de transceiver dans le système. Les mécanismes spécifiques de traitement des erreurs, tels que les vérifications d'index non valides ou les signalements au Default Error Tracer (DET) ou au Diagnostic Event Manager (DEM), ne sont pas définis dans cet élément de spécification [SWS_FrTrcv_00331].

Cette note d'utilisation a été générée par une IA et repose exclusivement sur les indications de spécification du package AUTOSAR R20-11.

fonction 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.

fonction 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.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : f12db972f543 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction synchrone FrTrcv_DisableTransceiverBranch sert à désactiver une branche individuelle spécifiée sur un émetteur-récepteur en étoile active adressé ([SWS_FrTrcv_00442]). Elle est fournie via le fichier d'en-tête FrTrcv.h et possède le Service ID 0x0f ([SWS_FrTrcv_00442]).

Paramètres et contexte d'appel

L'appel s'effectue de manière synchrone et est spécifié comme non réentrant (Non Reentrant) ([SWS_FrTrcv_00442]). La fonction attend deux paramètres d'entrée basés sur zéro :

  • FrTrcv_TrcvIdx : index basé sur zéro qui identifie l'émetteur-récepteur dans le contexte du pilote d'émetteur-récepteur sur lequel l'opération doit être appliquée ([SWS_FrTrcv_00442]).
  • FrTrcv_BranchIdx : index basé sur zéro qui détermine la branche à désactiver de l'émetteur-récepteur en étoile active adressé ([SWS_FrTrcv_00442]).

Valeurs de retour et gestion des erreurs

Le résultat de l'opération est signalé via le type de retour Std_ReturnType ([SWS_FrTrcv_00442]) :

  • E_OK : la branche de transceiver indiquée a été désactivée avec succès ([SWS_FrTrcv_00442]).
  • E_NOT_OK : le paramètre FrTrcv_TrcvIdx ou FrTrcv_BranchIdx se situe en dehors de la plage valide ([SWS_FrTrcv_00442]). Dans ce cas d'erreur, l'état de la branche de l'émetteur-récepteur demeure inchangé ([SWS_FrTrcv_00442]).

Restrictions et concurrence

Comme FrTrcv_DisableTransceiverBranch n'est pas réentrante, les appels ne doivent pas être exécutés simultanément sans protection ([SWS_FrTrcv_00442]). Les appelants doivent en outre s'assurer que les deux index se situent dans les limites configurées afin d'éviter un rejet avec un état de branche inchangé ([SWS_FrTrcv_00442]).

Cette note d'utilisation repose sur la spécification SWS_FrTrcv_00442 de la version R20-11.

fonction 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.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 8a9d8eb5de3b Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction synchrone FrTrcv_EnableTransceiverBranch sert à activer une branche déterminée sur un transceiver adressé, typiquement dans le cas d'une topologie en étoile active (Active Star) [SWS_FrTrcv_00443].

Paramètres et contexte d'appel

  • FrTrcv_TrcvIdx : index basé sur zéro du transceiver dans le contexte du pilote [SWS_FrTrcv_00443].
  • FrTrcv_BranchIdx : index basé sur zéro de la branche spécifique du transceiver devant être activée [SWS_FrTrcv_00443].

Valeurs de retour et gestion des erreurs

La fonction renvoie un statut de type Std_ReturnType [SWS_FrTrcv_00443] :

  • E_OK : la branche de transceiver indiquée a été activée avec succès [SWS_FrTrcv_00443].
  • E_NOT_OK : l'un des paramètres (FrTrcv_TrcvIdx ou FrTrcv_BranchIdx) se situe en dehors de la plage valide ; l'état de la branche reste dans ce cas inchangé [SWS_FrTrcv_00443].

Concurrence et restrictions

L'appel est exécuté de manière synchrone et spécifié comme non réentrant (Non Reentrant) [SWS_FrTrcv_00443]. Les appelants doivent par conséquent s'assurer que la fonction n'est pas appelée de manière concurrente pour le même contexte ou des contextes parallèles.

Cette note d'utilisation a été générée automatiquement sur la base de la spécification.

fonction FrTrcv_MainFunction [SWS_FrTrcv_00330] 📄 PDF

void FrTrcv_MainFunction (void);

-

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : f615787755a2 Provenance Questions ouvertes (2)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction FrTrcv_MainFunction constitue la fonction principale périodique du pilote pour l'émetteur-récepteur FlexRay (module FrTrcv) et est enregistrée avec le Service ID 0x0d [SWS_FrTrcv_00330]. L'interface C est définie avec la signature void FrTrcv_MainFunction (void) comme une fonction sans paramètre, raison pour laquelle lors de l'appel, aucun paramètre d'entrée n'est transmis et aucune valeur d'état n'est présente comme type de retour [SWS_FrTrcv_00330].

Le fichier d'inclusion prescrit pour la fonction est l'en-tête SchM_FrTrcv.h [SWS_FrTrcv_00330]. La mise à disposition via l'interface du Schedule Manager justifie l'interprétation selon laquelle l'appel en fonctionnement système s'effectue typiquement de façon cyclique par l'ordonnanceur BSW dans le contexte d'une tâche de système d'exploitation configurée.

En l'absence de paramètres et de valeurs de retour, les opérations de contrôle et de surveillance requises de l'émetteur-récepteur devraient être exécutées de manière autonome à l'intérieur du module. Question Q-2710fa5096bf4d90 (ouverte) Concernant des aspects tels que la réentrance, la concurrence, le traitement des erreurs DET ou les interactions avec d'autres interfaces de pilote, la spécification ne contient ici aucune définition [SWS_FrTrcv_00330].

Cette note d'utilisation a été générée par une IA et s'appuie exclusivement sur les contenus de spécification de la version R20-11.

type FrTrcv_TrcvModeType [SWS_FrTrcv_00481] 📄 PDF

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

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 4db36c82b07f Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Le type énuméré FrTrcv_TrcvModeType spécifie, conformément à [SWS_FrTrcv_00481], les modes de fonctionnement autorisés d'un transceiver FlexRay dans l'état de fonctionnement de niveau supérieur ACTIVE. La définition typée fait partie intégrante du pilote de transceiver FlexRay FrTrcv et est mise à disposition à l'échelle de la plateforme via le fichier d'en-tête Fr_GeneralTypes.h pour les modules logiciels de niveau supérieur [SWS_FrTrcv_00481].

L'énumération comprend quatre états définis pour le fonctionnement du transceiver [SWS_FrTrcv_00481] :

  • FRTRCV_TRCVMODE_NORMAL : indique que le transceiver se trouve dans l'état de fonctionnement régulier NORMAL [SWS_FrTrcv_00481].
  • FRTRCV_TRCVMODE_STANDBY : indique que le transceiver se trouve dans l'état de veille à économie d'énergie STANDBY [SWS_FrTrcv_00481].
  • FRTRCV_TRCVMODE_SLEEP : indique que le transceiver se trouve dans l'état de repos SLEEP [SWS_FrTrcv_00481].
  • FRTRCV_TRCVMODE_RECEIVEONLY : indique que le transceiver se trouve dans l'état RECEIVEONLY et n'autorise que les opérations de réception [SWS_FrTrcv_00481].

En ce qui concerne l'utilisation et l'interaction, le type fait office de grandeur d'interface centrale pour la commande ainsi que pour l'acquisition de l'état du matériel transceiver FlexRay (interprétation : les valeurs d'énumération devraient servir de paramètres pour des appels de fonction destinés au basculement de mode de fonctionnement ainsi qu'au retour d'information lors d'interrogations d'état, car la charge utile ne contient pas de signatures de fonction). Question Q-205f2b0575c32460 (ouverte) Les codes d'erreur spécifiques, les traitements d'erreur via DET ou DEM ainsi que les restrictions de réentrance ne sont pas définis pour ce type d'énumération élémentaire dans les exigences [SWS_FrTrcv_00481].

Cette note d'utilisation a été générée automatiquement et repose sur la spécification AUTOSAR CP R20-11.

Guide de l'implémenteur à venir (complexité I1)

type 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#16e74dd7
Content hash
16e74dd7
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_FlexRayTransceiverDriver.pdf#nameddest=SWS_FrTrcv_00322

Initialisation et état

This service returns the version information of this module.

void FrTrcv_GetVersionInfo (Std_VersionInfoType* versioninfo);
FrTrcv_Init fonction

This service initializes the Fr Trcv.

void FrTrcv_Init (const FrTrcv_ConfigType* ConfigPtr);

Services

-

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);

Cyclique

-

void FrTrcv_MainFunction (void);

Types

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.