AUTOSAR_CP_SWS_CANTransceiverDriver
FIG-7f9c73c9aba49a67
854 × 1157 px
1 Release(s)
Figure 9.1: CanTrcv Dio Interaction
SHA-256 Inhalts-Fingerabdruck:
7f9c73c9aba49a67782d4f6a95e46dbe571e957745ca29b7204935004b704570
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-series@1 · erstellt am 2026-10-08
1. Diagrammtyp & Architektur-Kontext
- Diagrammtyp: UML-Sequenzdiagramm (Interaktionsdiagramm mit kombinierten Fragmenten vom Typ
alt). - Funktionaler Kontext: Veranschaulicht das Zusammenspiel zwischen System Management, Communication Stack und MCAL bei der Betriebsartenumschaltung (
CanTrcv_TrcvModeType) eines pin-gesteuerten (DIO-basierten) CAN-Transceiver-Treibers gemäßAUTOSAR_CP_SWS_CANTransceiverDriver. - Architektonische Einordnung: Dargestellt wird die kaskadierte Weitergabe von Kommunikationsanforderungen von der Steuerungs- und State-Machine-Ebene (
EcuM,ComM,CanSM) über die Abstraktionsschicht (CanIf) und den Transceiver-Treiber (CanTrcv) bis hin zum MCAL-TreiberDiozur physischen Pegelsteuerung externer Pins (z. B.EN,STB/NSTB).
2. Komponenten, Entitäten & Schnittstellen
- Akteure & Module:
Integration Code: OEM-/Projekt-spezifischer Integrations- bzw. Callout-Code für das System-Shutdown-/Sleep-Handling.«module» EcuM: ECU State Manager (System Management) zur Initialisierung, Wakeup-Auswertung und Koordination des Run/Sleep-Transitionszyklus.«module» ComM: Communication Manager (Resource/Mode Management für Kommunikationskanäle).«module» CanSM: CAN State Manager (Netzwerk-Zustandsverwaltung des CAN-Subsystems).«module» CanIf: CAN Interface (Abstraktion der CAN-Controller- und Transceiver-Hardware).«module» CanTrcv: CAN Transceiver Driver (spezifischer BSW-Treiber zur Konfiguration und Ansteuerung der Transceiver-Hardware, hier als DIO-gesteuerter Treiber implementiert).«module» Dio: Digital IO Driver (MCAL-Modul für direkten Port-Pin-Zugriff).«Peripheral» ETH Hardware (PHY): Physisches Transceiver-IC auf der Leiterplatte. (Hinweis auf Spezifikationsfehler: Im AUTOSAR-Originaldokument wurde der Akteur fälschlicherweise alsETH Hardware (PHY)benannt; gemeint und funktional dargestellt ist der externe CAN Transceiver Hardware IC).
- Schnittstellen / Aufrufe:
ComM_EcuM_WakeUpIndication(NetworkHandleType)CanSM_RequestComMode(ComM_ModeType)(Werte:COMM_FULL_COMMUNICATION,COMM_NO_COMMUNICATION)CanIf_SetTrcvMode(uint8 TransceiverId, CanTrcv_TrcvModeType OpMode)CanTrcv_SetOpMode(uint8 TransceiverId, CanTrcv_TrcvModeType OpMode)Dio_WriteChannel(Dio_ChannelType ChannelId, Dio_LevelType Level)- Hardware-Aktion:
set/reset HW ports()(Pegelwechsel an den GPIO-Pins des Mikrocontrollers) EcuM_AL_SwitchOff()(ECU State Manager AL Callout)
3. Dynamisches Verhalten & Sequenzablauf
Fragment 1: [Start CAN Network] (Transition nach NORMAL)
- Trigger: Ein Wakeup-Ereignis wird registriert;
EcuMmeldet dies viaComM_EcuM_WakeUpIndication(NetworkHandleType)anComM. - Modusanforderung:
ComMfordert überCanSM_RequestComMode(COMM_FULL_COMMUNICATION)die Volllast-Kommunikation an. - Kanalabstraktion:
CanSMweistCanIfan, den Transceiver-Modus umzuschalten:CanIf_SetTrcvMode(CANIF_TRCV_MODE_NORMAL). - Treiberdurchgriff:
CanIfleitet den Aufruf direkt anCanTrcv_SetOpMode(CANIF_TRCV_MODE_NORMAL)weiter. - MCAL-Pinmanipulation: Zur Umschaltung in den Normalbetrieb führt
CanTrcvzwei sequentielle Aufrufe vonDio_WriteChannel(Dio_ChannelType, Dio_LevelType)aus (z. B. Setzen vonSTB=HIGHundEN=HIGH), wodurch die MCU-Hardwareports umgeschaltet werden (set/reset HW ports()). - Rücklauf: Alle Funktionsaufrufe kehren synchron über die Aufruf-Kaskade zurück. Der Transceiver befindet sich im Modus
NORMAL(Senden und Empfangen aktiv).
Fragment 2: [Stop & Sleep CAN Network] (Zweistufige Abschaltung: STANDBY gefolgt von SLEEP)
- Phase 1: Umschaltung in
STANDBY(Netzwerk-Deaktivierung)ComMfordert Kommunikationsstopp viaCanSM_RequestComMode(COMM_NO_COMMUNICATION).CanSMruftCanIf_SetTrcvMode(CANIF_TRCV_MODE_STANDBY)auf.CanIfdelegiert anCanTrcv_SetOpMode(CANIF_TRCV_MODE_STANDBY).CanTrcvsetzt über zweiDio_WriteChannel()-Aufrufe die entsprechenden Pegel (z. B.STB=LOW,EN=LOW), um den Hardware-Transceiver in den energiesparendenSTANDBY-Zustand zu versetzen.- Hardware ist in
STANDBY(kein Tx/Rx; Wakeup-Detektion aktiv). Aufrufe kehren synchron zurück.
- Phase 2: Transition nach
SLEEP(ECU Shutdown)- Während des Herunterfahrens der ECU ruft der
Integration Codeden CalloutEcuM_AL_SwitchOff()auf. EcuMversetzt den Transceiver vor dem finalen Power-Off/Standby in den ModusSLEEPviaCanIf_SetTrcvMode(CANIF_TRCV_MODE_SLEEP).CanIfruftCanTrcv_SetOpMode(CANIF_TRCV_MODE_SLEEP)auf.CanTrcvgeneriert die spezifische Pegelsequenz via zweifachemDio_WriteChannel()(z. B. definierte Flanke oder Haltepegel zur Aktivierung der internen Transceiver-Sleep-Logik).- Hardware ist im stromsparenden Modus
SLEEP. Nach Rückkehr beendetEcuM_AL_SwitchOff()die Abschaltsequenz.
- Während des Herunterfahrens der ECU ruft der
4. Normative Relevanz & Entwickler-Hinweise
- Synchrones API-Design: Das Diagramm spezifiziert eine rein synchrone Ausführungskette.
CanTrcv_SetOpModekehrt erst zurück, wenn die DIO-Kanäle geschrieben sind. - Transceiver-Hardware-Einschwingzeiten (t_mode / t_silence): Da
Dio_WriteChannellediglich den Ausgangsbuffer des Microcontrollers umschaltet, der Transceiver-IC jedoch eine physikalische Einschwingzeit benötigt (z. B. von Standby/Sleep nach Normal), muss der Stack (insbesondereCanSMundCanIf) etwaige Mindestwartezeiten über synchrone Delays oder State-Machine-Polling/Timer abfangen, bevor CAN-Controller-Aktivitäten (Baudraten-Sync, Tx-Mailbox-Freigabe) gestartet werden. - DIO-Kanal-Konfiguration: Der
CanTrcvmuss im BSW-Konfigurator (CanTrcvDioChannelAccess) auf exakt die symbolischen DIO-Kanal-Namen konfiguriert werden, die im MCAL-DIO-Container deklariert sind. Jeder Mode-Wechsel erfordert die korrekte Wahrheitstabelle für die Steuerpins (z. B. Mode-Pins M_0, M_1 bzw. $EN, \overline{NSTB}$). - Fehler im AUTOSAR-Standard: Die Beschriftung des Hardware-Akteurs als
«Peripheral» ETH Hardware (PHY)ist ein redaktioneller Artefakt im Standard (Copy-Paste aus der Ethernet-Transceiver-Spezifikation); die Implementierung steuert ausschließlich den CAN-Transceiver-Baustein an.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.