Figure 15: Wakeup Source States
e217ab01da66552b37800a193a0a5e90d06b85ae859b06ebc0defa7b9c477411
1. Diagrammtyp & Architektur-Kontext
Das Diagramm ist ein UML-Zustandsdiagramm für die Weckquellen-Zustandsmaschine des AUTOSAR ECU State Managers (EcuM) der Classic Platform. Es beschreibt den Weckquellenstatus parametrisiert über die Menge der Weckquellen (sources) und integriert Benachrichtigungen an BswM und ComM sowie Funktionsaufrufe zur Validierungssteuerung.
2. Komponenten, Entitäten & Schnittstellen
Das Diagramm spezifiziert:
- Zustände:
ECUM_WKSTATUS_NONE: Grundzustand mit Entry-Aktionentry / BswM_EcuM_CurrentWakeup(sources, NONE).- Ein unbenannter Verbundzustand zur Validierung mit folgenden Subzuständen:
ECUM_WKSTATUS_PENDING: Entry-Aktionenentry / BswM_EcuM_CurrentWakeup(sources, PENDING),entry / EcuM_StartWakeupSources()und Do-Aktivitätdo / exec. wakeup validation seq..ECUM_WKSTATUS_VALIDATED: Entry-Aktionenentry / BswM_EcuM_CurrentWakeup(sources, VALIDATED)undentry / ComM_EcuM_WakeUpIndication().ECUM_WKSTATUS_EXPIRED: Entry-Aktionenentry / BswM_EcuM_CurrentWakeup(sources, EXPIRED)undentry / EcuM_StopWakeupSources().
- Schnittstellen und Ereignisse:
- Initialer Trigger:
Power On / Initial. - APIs mit Quellenparameter:
EcuM_SetWakeupEvent(sources),EcuM_ClearWakeupEvent(sources). - Validierungs-APIs und Trigger:
EcuM_ValidateWakeupEvent(),Timer Expired. - Guards:
[No Validation],[With Validation]. - Externe Benachrichtigungen:
BswM_EcuM_CurrentWakeup(sources, <STATE>),ComM_EcuM_WakeUpIndication(). - Treibersteuerung:
EcuM_StartWakeupSources(),EcuM_StopWakeupSources().
- Initialer Trigger:
3. Dynamisches Verhalten & Sequenzablauf
Der dynamische Ablauf gestaltet sich wie folgt:
- Initialisierung: Vom Initial State führt
Power On / Initialdirekt inECUM_WKSTATUS_NONE. - Weckereigniserkennung:
EcuM_SetWakeupEvent(sources) [With Validation]führt vonECUM_WKSTATUS_NONEnachECUM_WKSTATUS_PENDING. Dort wirdEcuM_StartWakeupSources()ausgeführt und die Validierungssequenz gestartet.EcuM_SetWakeupEvent(sources) [No Validation]führt vonECUM_WKSTATUS_NONEdirekt nachECUM_WKSTATUS_VALIDATED.
- Validierung:
- Bei erfolgreicher Validierung führt
EcuM_ValidateWakeupEvent()vonECUM_WKSTATUS_PENDINGnachECUM_WKSTATUS_VALIDATED. Beim Eintritt wird ComM viaComM_EcuM_WakeUpIndication()informiert. - Läuft der Überwachungstimer ab, führt
Timer ExpiredvonECUM_WKSTATUS_PENDINGnachECUM_WKSTATUS_EXPIRED. Beim Eintritt wirdEcuM_StopWakeupSources()aufgerufen.
- Bei erfolgreicher Validierung führt
- Rücksetzen:
- Aus dem übergeordneten Validierungsblock führt der Aufruf
EcuM_ClearWakeupEvent(sources)zurück nachECUM_WKSTATUS_NONE.
- Aus dem übergeordneten Validierungsblock führt der Aufruf
4. Normative Relevanz & Entwickler-Hinweise
Das Diagramm definiert normativ das Zusammenspiel der Weckzustände mit dem BswM unter Verwendung der sources-Maske. Jede Zustandsänderung erfordert den Aufruf von BswM_EcuM_CurrentWakeup(sources, <STATE>). Weckquellen, die eine Validierung erfordern, werden über EcuM_StartWakeupSources() aktiviert und im Fehler- bzw. Timeoutfall über die Entry-Aktion von ECUM_WKSTATUS_EXPIRED mittels EcuM_StopWakeupSources() gestoppt. Die Rücksetzung aller Validierungszustände zu ECUM_WKSTATUS_NONE erfolgt einheitlich über EcuM_ClearWakeupEvent(sources).
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.