SNIP_CLASSIC_CAN_SECTION_7_7_Wakeup_Concept
Wortlaut
7.7 Wakeup Concept
The Can module handles wakeups that can be detected by the Can controller itself and not via the Can transceiver. There are two possible scenarios: wakeup by interrupt and wakeup by polling. For wakeup by interrupt, an ISR of the Can module is called when the hardware detects the wakeup.
[SWS_Can_00364] Upstream requirements: SRS_BSW_00375, SRS_SPAL_12069, SRS_Can_01054
⌈If the ISR for wakeup events is called, it shall call EcuM_CheckWakeup in turn. The parameter passed to EcuM_CheckWakeup shall be the ID of the wakeup source referenced by the CanWakeupSourceRef configuration parameter.⌋ The ECU State Manager will then set up the MCU and call the Can module back via the Can Interface, resulting in a call to Can_CheckWakeup. When wakeup events are detected by polling, the ECU State Manager will cyclically call Can_CheckWakeup via the Can Interface as before. In both cases, Can_CheckWakeup will check if there was a wakeup detected by a Can controller and return the result. The CAN driver will then inform the ECU State Manager of the wakeup event via EcuM_SetWakeupEvent. The wakeup validation to prevent false wakeup events, will be done by the ECU State Manager and the Can Interface afterwards and without any help from the Can module. For a general description of the wakeup mechanisms and wakeup sequence diagrams refer to Specification of ECU State Manager [5].
Versionen & Provenienz · Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.
Begründung & Zuweisungs-Evidenz
ECUM service to check wakeup events
Dokumenten-Herkunft & Rückverfolgbarkeit
| Spezifikations-Dokument | SWS_CANDriver.pdf |
|---|---|
| Dokumentseite | Seite 45 |
| Ziel-Modul | can (classic) |
| Ziel-Anforderung | SWS_EcuM_02929 |
| Semantische Rolle | constitutive |
| Automatisierungs-Konfidenz | 0.90 |