AUTOSAR_SWS_PWMDriver
FIG-627eb033f73b54d7
605 × 499 px
1 Release(s)
Figure 4: Pwm de-initialization
SHA-256 Inhalts-Fingerabdruck:
627eb033f73b54d789d9ce0c9573a782a7ed0251b452f3e35a6c42603a12b71c
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-description@2 · erstellt am 2026-10-07
1. Diagrammtyp & Architektur-Kontext
- Klassifikation: UML-Sequenzdiagramm (Interaktionsdiagramm).
- Technischer Zweck: Spezifikation des synchronen De-Initialisierungsablaufs des AUTOSAR Classic MCAL PWM-Treibers (
Pwm_DeInit). - Architektur-Einordnung: Schnittstelle zwischen höheren Schichten (z. B. BSW Mode Manager
BswM, ECU State ManagerEcuModer Complex Device DriverCDD) und dem hardwarenahen Peripherietreiber (Microcontroller Abstraction Layer, MCAL).
2. Komponenten, Entitäten & Schnittstellen
- Akteure / Lebenslinien:
Pwm User: Aufrufende Entität aus der BSW- oder Anwendungs-Ebene (typischerweise Zustands-/Modus-Manager zur ECU-Abschaltung oder Peripherie-Rekonfiguration).«module» Pwm: Standardisierter AUTOSAR BSW-Treiberbaustein (MCAL-Modul) mit Stereotyp«module».
- Schnittstelle:
- Funktionssignatur:
void Pwm_DeInit(void) - Aufrufart: Synchroner Funktionsaufruf mit Rückkehrpfad (
return).
- Funktionssignatur:
3. Dynamisches Verhalten & Sequenzablauf
- Trigger:
Pwm Usertriggert die De-Initialisierung durch synchronen Aufruf vonPwm_DeInit(). - Treiber-Interne Aktionen:
- Statusprüfung (DET): Sofern
PwmDevErrorDetect == STD_ON, Prüfung auf Modulinitialisierung; bei uninitialisiertem Modul wirdPWM_E_UNINITan das Default Error Tracer (DET) gemeldet und die Ausführung abgebrochen. - Interrupt-/Notification-Deaktivierung: Abschaltung aller aktiven Edge-/Period-Interrupts und kanalbezogenen Notifications.
- Ausgangspegel: Überführung aller konfigurierten PWM-Ausgangskanäle in den im Konfigurationsparameter festgelegten Ruhezustand (
PwmIdleState, z. B.PWM_LOWoderPWM_HIGH). - Zustandsübergang: Der Modulzustand wechselt deterministisch von
PWM_INITIALIZEDnachPWM_UNINIT.
- Statusprüfung (DET): Sofern
- Abschluss: Rückkehr zum Aufrufer (
return), womit der synchrone Ablauf blockierungsfrei beendet ist.
4. Normative Relevanz & Entwickler-Hinweise
- Konfigurationsabhängigkeit: Die API ist optional und existiert nur, wenn der Pre-Compile-Parameter
PwmDeInitApi == STD_ONgesetzt ist. Fehlt dieser, wirdPwm_DeInit()nicht kompiliert. - Kanalzustände nach De-Init: Ausgangspins verharren nicht im undefinierten Tri-State oder im letzten Duty-Cycle-Zustand, sondern werden zwingend auf den konfigurierten
PwmIdleStategezwungen, um unkontrollierte Aktuatoransteuerungen zu verhindern. - Reentranz & Nebenläufigkeit:
Pwm_DeInitist Non-Reentrant. Sie darf nicht unterbrochen oder parallel aus mehreren Tasks/Interrupt-Kontexten aufgerufen werden. Vor dem Aufruf müssen alle aktiven Channel-APIs (z. B.Pwm_SetDutyCycle,Pwm_SetPeriodAndDuty) beendet sein. - Folge-API-Vertrag: Nach erfolgreichem
Pwm_DeInit()führen nachfolgende Aufrufe von Betriebs-APIs (außerPwm_Init()undPwm_GetVersionInfo()) bei aktivem DET deterministisch zum FehlerPWM_E_UNINIT.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.