DEENESPTFRRUARHIKOZHNL

ECU State Manager (EcuM)

ModulEcuM (ECU State Manager)
BSW-Modul-ID10
Standard-Header#include "EcuM.h"
SWS-SpezifikationAUTOSAR_SWS_ECUStateManager.pdf
ClusterSystem Services

ModulegidsAI-GEGENEREERD

Bestuurt opstarten, uitschakelen, slaapfasen en wekbronnen van de ECU in samenspel met de BswM.
DOOR AI GEGENEREERD ongecontroleerd Model: claude-opus-5-5 · Inspanning: high · Temperatuur: niet regelbaar · Prompt: c4073030eea4 Herkomst Open vragen (1)
Causaal anker: R20-11 Geldig vanaf R20-11 Nieuw gesynthetiseerd voor deze specificatiestand.
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Bestuurt opstarten, uitschakelen, slaapfasen en wekbronnen van de ECU in samenspel met de BswM.

De ECU State Manager bestuurt de levenscyclus van een Classic-ECU. Hij initialiseert de basissoftware tot aan de OS-start, brengt de ECU naar de shutdown-doelen SLEEP, RESET of OFF en beheert de wekbronnen inclusief validatie [SWS_EcuM_04136]. Hardware-nabije stappen neemt de Integration Code over via callouts. De RUN- en POST_RUN-aanvragen van de gebruikers worden gearbitreerd door de EcuM, maar over de toestandsovergangen beslist de BswM, die deze via EcuM_SetState terugmeldt [SWS_EcuM_04116]. De belangrijkste randvoorwaarde is dat er in de SLEEP-fase geen wekgebeurtenis verloren mag gaan.

De ECU State Manager (EcuM) is in de Classic Platform verantwoordelijk voor opstarten, uitschakelen en slaapfasen van de ECU. EcuM_Init voert de StartPreOS-sequentie uit met de init-blokken 0 en 1. Daarbij selecteert en controleert de EcuM de post-build-configuratie en roept uiteindelijk StartOS aan. Daarna start EcuM_StartupTwo de SchM en de BswM [SWS_EcuM_02684] [SWS_EcuM_02906] [SWS_EcuM_02932]. Hardware-nabije stappen levert de Integration Code als callouts, bijvoorbeeld EcuM_AL_DriverInitZero [SWS_EcuM_02905].

phasen start Power On / Reset STARTUP STARTUP (StartPreOS, StartPostOS) start->STARTUP UP UP (RUN / POST_RUN, optional) STARTUP->UP EcuM_StartupTwo, BswM neemt over SHUTDOWN SHUTDOWN (OffPreOS, OffPostOS) UP->SHUTDOWN Doel RESET of OFF SLEEP SLEEP (GoSleep, Halt of Poll) UP->SLEEP Ziel SLEEP, EcuM_GoDownHaltPoll OFF OFF SHUTDOWN->OFF EcuM_AL_SwitchOff RESET RESET SHUTDOWN->RESET EcuM_AL_Reset SLEEP->STARTUP Hardware-Reset / Power-Cycle SLEEP->UP Weckereignis: WakeupRestart RESET->STARTUP Neustart

Toestandsdiagram: De ECU doorloopt STARTUP, UP, SHUTDOWN en SLEEP. Vanuit SLEEP keert hij via WakeupRestart terug naar UP. Bronnen: RS ModeManagement p. 15, [SWS_EcuM_91005], [SWS_EcuM_02963]

Over toestandsovergangen beslist de EcuM niet zelf. Hij verzamelt de RUN- en POST_RUN-aanvragen van de geconfigureerde gebruikers en meldt het resultaat aan de BswM. De toestandswijzigingen daarvan neemt hij over via EcuM_SetState en geeft deze door aan de RTE [SWS_EcuM_04144] [SWS_EcuM_04117] [SWS_EcuM_04116] SWS EcuM p. 103. EcuM_SelectShutdownTarget slaat het doel SLEEP, RESET of OFF enkel op voor later [SWS_EcuM_02585]. Bij het uitschakelen de-initialiseert OffPreOS de BswM en de SchM, controleert de wekgebeurtenissen en beëindigt het OS. De shutdown-hook roept vervolgens EcuM_Shutdown aan, dat eindigt met EcuM_AL_Reset of EcuM_AL_SwitchOff [SWS_EcuM_03021] [SWS_EcuM_04074] [SWS_EcuM_04075].

De SLEEP-fase begint met EcuM_GoDownHaltPoll. Eerst activeert GoSleep de wekbronnen van de slaapmodus. Daarna volgt ofwel Halt met een RAM-hashcontrole ofwel Poll met een lus over EcuM_SleepActivity en EcuM_CheckWakeup. De afsluiting vormt WakeupRestart met EcuM_AL_DriverRestart [SWS_EcuM_91002] [SWS_EcuM_02389] [SWS_EcuM_02863] [SWS_EcuM_03020] [SWS_EcuM_02963]. In deze fase mag geen wekgebeurtenis verloren gaan [SWS_EcuM_02188].

Wekbronnen zijn afzonderlijke bits in EcuM_WakeupSourceType en hebben telkens een van de toestanden NONE, PENDING, VALIDATED of EXPIRED [SWS_EcuM_04040] [SWS_EcuM_04091]. Drivers melden gebeurtenissen met EcuM_SetWakeupEvent. Is er een validatie geconfigureerd, dan start de EcuM een timeout. Alleen een EcuM_ValidateWakeupEvent vóór het verstrijken daarvan leidt tot VALIDATED; bij een geconfigureerde kanaalrelatie wordt dan ook ComM geïnformeerd. Anders wordt de bron EXPIRED [SWS_EcuM_02709] [SWS_EcuM_02645] [SWS_EcuM_04082].

validierung a Treiber erkennt Weckereignis: EcuM_SetWakeupEvent(sources) b Bron hoort bij de geselecteerde slaapmodus? a->b x Ereignis ignorieren b->x nein c Validierung konfiguriert? (EcuMValidationTimeout) b->c ja e Bits in Pending-Variable setzen, quellenspezifischen Timeout starten c->e ja h Timeout stoppen, Validated-Bits setzen, BswM_EcuM_CurrentWakeup(VALIDATED), ComM_EcuM_WakeUpIndication / PNCWakeUpIndication (falls Kanal/PNC konfiguriert) c->h nein: impliziter EcuM_ValidateWakeupEvent f EcuM_MainFunction: EcuM_CheckValidation(wakeupSource) e->f g EcuM_ValidateWakeupEvent eingetroffen? f->g g->h ja i Timeout abgelaufen? g->i nein i->f nein j Expired-Bit setzen, BswM_EcuM_CurrentWakeup(EXPIRED), EcuM_StopWakeupSources() i->j ja

Activiteitendiagram: Een wekgebeurtenis wordt direct gevalideerd of blijft PENDING totdat er een bevestiging binnenkomt of de timeout verstrijkt. Bronnen: SWS EcuM p. 63, [SWS_EcuM_02566], [SWS_EcuM_04082]

In geval van een fout roept de EcuM de callout EcuM_ErrorHook aan wanneer de configuratie inconsistent is of de RAM-controle mislukt [SWS_EcuM_04033] [SWS_EcuM_91003]. Ontwikkelfouten zoals meervoudige aanvragen of onbekende wekbronnen meldt hij aan DET [SWS_EcuM_03024] [SWS_EcuM_02867].

Rol en systeemgrens van de ECU State Manager

De ECU State Manager (EcuM) bepaalt in de Classic Platform het kader voor de levenscyclus van de ECU. Hij initialiseert de basissoftware tot aan de start van het besturingssysteem. Daarna brengt hij de ECU gecontroleerd naar een van de shutdown-doelen SLEEP, RESET of OFF [SWS_EcuM_04136]. Zijn toestanden worden vastgelegd door EcuM_StateType: STARTUP, RUN, POST_RUN, SHUTDOWN en SLEEP [SWS_EcuM_91005]. Aan de SW-C's meldt hij deze via de mode-declaration-group EcuM_Mode, waarvan de initiële modus STARTUP is [SWS_EcuM_04107] [SWS_EcuM_04132].

phasen start Power On / Reset STARTUP STARTUP (StartPreOS, StartPostOS) start->STARTUP UP UP (RUN / POST_RUN, optional) STARTUP->UP EcuM_StartupTwo, BswM neemt over SHUTDOWN SHUTDOWN (OffPreOS, OffPostOS) UP->SHUTDOWN Doel RESET of OFF SLEEP SLEEP (GoSleep, Halt of Poll) UP->SLEEP Ziel SLEEP, EcuM_GoDownHaltPoll OFF OFF SHUTDOWN->OFF EcuM_AL_SwitchOff RESET RESET SHUTDOWN->RESET EcuM_AL_Reset SLEEP->STARTUP Hardware-Reset / Power-Cycle SLEEP->UP Weckereignis: WakeupRestart RESET->STARTUP Neustart

Toestandsdiagram: De ECU doorloopt STARTUP, UP, SHUTDOWN en SLEEP. Vanuit SLEEP keert hij via WakeupRestart terug naar UP; na een hardware-reset of power-cycle start hij opnieuw op in STARTUP. Bronnen: RS ModeManagement p. 15, [SWS_EcuM_91005], [SWS_EcuM_02963], [SWS_EcuM_04001]

De EcuM beslist niet zelf over de statusovergangen. Hij heeft geen eigen toestandsmachine, arbitreert slechts de aanvragen en laat de overgangen over aan de BSW Mode Manager (BswM) SWS EcuM p. 103. Hardwarerelevante en projectspecifieke stappen delegeert hij naar callouts van de integration code, die via EcuM_Externals.h beschikbaar zijn. Voorbeelden zijn EcuM_AL_DriverInitZero en EcuM_AL_SwitchOff [SWS_EcuM_02905] [SWS_EcuM_02920]. De interfaces van de naburige modules staan vermeld in de tabellen met geïmporteerde functies, zoals BswM_EcuM_CurrentWakeup, Can_Init en Det_ReportError [SWS_EcuM_02858] [SWS_EcuM_02859].

kontext EcuM EcuM SWC SW-C's (via RTE-poorten) EcuM->SWC currentMode (EcuM_Mode) BswM BswM EcuM->BswM BswM_Init / BswM_Deinit, BswM_EcuM_CurrentWakeup, RequestedState, CurrentState IC Integration Code (Callouts in EcuM_Externals.h) EcuM->IC EcuM_AL_DriverInit*, EcuM_AL_DriverRestart, EcuM_AL_Reset, EcuM_AL_SwitchOff, EcuM_*WakeupSources Os Os EcuM->Os StartOS, ShutdownOS, GetResource Mcu Mcu EcuM->Mcu Mcu_GetResetReason, Mcu_SetMode SchM SchM EcuM->SchM SchM_Init / Start / Deinit ComM ComM EcuM->ComM ComM_EcuM_WakeUpIndication, ComM_EcuM_PNCWakeUpIndication Det Det EcuM->Det Det_ReportError SWC->EcuM RequestRUN / ReleaseRUN, SelectShutdownTarget, AlarmClock, BootTarget BswM->EcuM EcuM_SetState, EcuM_SelectShutdownTarget, EcuM_GoDownHaltPoll Os->EcuM EcuM_Shutdown (Shutdown-Hook) Drv Stuurprogramma's met wekbronnen (bijv. CanTrcv, Icu, Gpt) Drv->EcuM EcuM_SetWakeupEvent, EcuM_ValidateWakeupEvent

Contextdiagram: de EcuM bevindt zich tussen SW-C's, BswM, integration code, OS, MCAL-drivers en ComM. Over overgangen beslist de BswM; de hardwarestappen voert de integration code uit. Bronnen: SWS EcuM p. 34, [SWS_EcuM_02858], [SWS_EcuM_04135]

Opstarten: StartPreOS, StartPostOS en configuratiegegevens

Vóór EcuM_Init gaat de EcuM slechts uit van een minimale MCU-initialisatie: er is een stack ingericht en de C-variabelen zijn geïnitialiseerd SWS EcuM p. 39. EcuM_Init voert de StartPreOS-sequentie uit en keert niet terug, omdat deze StartOS aanroept [SWS_EcuM_02811] [SWS_EcuM_02684]. Daarbij worden alle modules geïnitialiseerd die nodig zijn voor de OS-start [SWS_EcuM_02603].

Init Block 0 (EcuM_AL_DriverInitZero) bereidt het laden van de post-build-gegevens voor. Deze mag daarom alleen modules gebruiken die tijdens pre-compile- of linktijd zijn geconfigureerd [SWS_EcuM_02905]. Vervolgens levert EcuM_DeterminePbConfiguration een pointer naar EcuM_ConfigType op. Deze structuur refereert aan de configuraties van alle overige BSW-modules [SWS_EcuM_02906] [SWS_EcuM_02801]. Zij bevat een variant-identifier en een hash. De hash controleert de EcuM tegen ECUM_CONFIGCONSISTENCY_HASH, en wel voor alle post-build configureerbare modules, voordat de eerste daarvan wordt geïnitialiseerd [SWS_EcuM_02794] [SWS_EcuM_02798] [SWS_EcuM_02796].

Init Block 1 (EcuM_AL_DriverInitOne) initialiseert de drivers na een power-on-reset, waaronder de MCU [SWS_EcuM_02907] SWS EcuM p. 146. De volgorde in beide blokken wordt vastgelegd door EcuMDriverInitListZero en EcuMDriverInitListOne. Elke init-functie ontvangt haar parameters uit de bijbehorende EcuMModuleService-container [SWS_EcuM_02559] [SWS_EcuM_02730]. De resetreden van de Mcu-driver vertaalt de EcuM naar een wekbron en onthoudt deze. Kan de reden niet worden bepaald, dan stelt hij ECUM_WKSOURCE_RESET in [SWS_EcuM_02623] [SWS_EcuM_02601]. Als EcuMResetLoopDetection is ingesteld, roept de EcuM bij elke start de callout EcuM_LoopDetection aan [SWS_EcuM_04137].

Opstarten: StartPreOS en StartPostOSBootloaderEcuMIntegration CodeMcuOsSchMBswMUse Case: StartPreOS (EcuM_Init)EcuM_Init()EcuM_AL_DriverInitZero()EcuM_DeterminePbConfiguration()const EcuM_ConfigType*Consistentie van de configuratiegegevens controlerenoptKonfigurationsdaten inkonsistentEcuM_ErrorHook(ECUM_E_CONFIGURATION_DATA_INCONSISTENT)EcuM_AL_DriverInitOne()Mcu_GetResetReason()Resetreden toewijzen aan wekbronStartOS(ECUM_DEFAULT_APP_MODE)Use Case: StartPostOS (EcuM_StartupTwo)EcuM_StartupTwo()(vanuit taak na StartOS)SchM_Init / SchM_Start / SchM_StartTimingBswM_Init()

Sequentiediagram: EcuM_Init doorloopt Init Block 0, de selectie en controle van de configuratie, Init Block 1 en de reset-evaluatie tot StartOS. Daarna start EcuM_StartupTwo SchM en BswM. Bronnen: SWS EcuM p. 38, SWS EcuM p. 78, [SWS_EcuM_02684], [SWS_EcuM_02932]

Na de OS-start roept een taak EcuM_StartupTwo aan, die direct als gevolg van StartOS is gestart [SWS_EcuM_02806]. Deze functie voert StartPostOS uit: zij initialiseert en start de SchM en roept BswM_Init aan [SWS_EcuM_02932] SWS EcuM p. 42. Verdere initialisaties neemt de BswM over via de gegenereerde functies EcuM_AL_DriverInitBswM_<x> [SWS_EcuM_04114].

Op meerkern-ECU's draait per kern een EcuM-instantie, en de master-EcuM start de overige kernen. Init Block 0 en 1 draaien op elke kern, maar initialiseren daar alleen de bijbehorende MCAL-modules. SchM, OS en alle kernlokale BswM worden op elke kern gestart [SWS_EcuM_04145] [SWS_EcuM_04093] [SWS_EcuM_04014] SWS EcuM p. 71.

RUN en POST_RUN: gebruikersaanvragen en arbitrering met de BswM

Als EcuMModeHandling actief is, kunnen gebruikers RUN en POST_RUN aanvragen en weer vrijgeven [SWS_EcuM_04115] [SWS_EcuM_04130]. Daartoe dienen EcuM_RequestRUN, EcuM_ReleaseRUN, EcuM_RequestPOST_RUN en EcuM_ReleasePOST_RUN. Alle vier verwachten een geconfigureerde gebruikers-ID van het type EcuM_UserType [SWS_EcuM_04124] [SWS_EcuM_04127] [SWS_EcuM_04128] [SWS_EcuM_04129]. De EcuM volgt aanvragen per gebruiker, en een gebruiker kan deze niet nesten. RUN- en POST_RUN-aanvragen houdt hij bij in afzonderlijke variabelen [SWS_EcuM_04126] [SWS_EcuM_04125] SWS EcuM p. 116. SW-C's bereiken deze services via de poort StateRequest_{UserName} [SWS_EcuM_04135].

De eerste RUN- of POST_RUN-aanvraag meldt de EcuM aan de BswM met BswM_EcuM_RequestedState(ECUM_STATE_APP_RUN, ECUM_RUNSTATUS_REQUESTED). De laatste vrijgave van RUN respectievelijk POST_RUN meldt hij met de desbetreffende status en ECUM_RUNSTATUS_RELEASED [SWS_EcuM_04144] [SWS_EcuM_04117] [SWS_EcuM_04119]. De BswM evalueert zijn regels en stelt de nieuwe status in met EcuM_SetState. De EcuM geeft de RTE vervolgens de passende modus door en meldt na diens terugkoppeling BswM_EcuM_CurrentState [SWS_EcuM_04122] [SWS_EcuM_04116] [SWS_EcuM_04143]. De mode-management-handleiding toont passende BswM-regels, bijvoorbeeld de overgang naar POST_RUN zodra RUN is vrijgegeven Mode-Management-Guide p. 34.

RUN-/POST_RUN-arbitrage tussen EcuM en BswMSW-C (EcuM-Nutzer)RTEEcuMBswMUse Case: AnforderungEcuM_RequestRUN(user)via poort StateRequest_{UserName}E_OKeerste RUN- of POST_RUN-verzoekBswM_EcuM_RequestedState(ECUM_STATE_APP_RUN, ECUM_RUNSTATUS_REQUESTED)Regelevaluatie beslist over de overgangEcuM_SetState(state)Rte_Switch_currentMode_currentMode(mode)Terugkoppeling via acknowledgement-poortBswM_EcuM_CurrentState(state)Use Case: UitgaveEcuM_ReleaseRUN(user)letzte RUN-Anforderung freigegebenBswM_EcuM_RequestedState(ECUM_STATE_APP_RUN, ECUM_RUNSTATUS_RELEASED)EcuM_SetState(state)bijv. overgang naar POST_RUN

Sequentiediagram: de EcuM arbitreert de aanvragen van de gebruikers en meldt het resultaat aan de BswM. De BswM retourneert de status via EcuM_SetState, en de EcuM geeft deze door aan de RTE. Bronnen: [SWS_EcuM_04144], [SWS_EcuM_04117], [SWS_EcuM_04116], [SWS_EcuM_04143]

Shutdown-doelen en het uitschakelen via OffPreOS en OffPostOS

EcuM_SelectShutdownTarget slaat doel en modus alleen op voor de latere SHUTDOWN- of SLEEP-fase en brengt zelf niets teweeg [SWS_EcuM_02822] [SWS_EcuM_00624] [SWS_EcuM_02585]. De modusparameter selecteert bij het doel SLEEP een geconfigureerde slaapmodus en bij het doel RESET een resetmodus. Bij OFF wordt deze genegeerd [SWS_EcuM_02979] [SWS_EcuM_02185]. Tot de resetmodi behoren minimaal Mcu_PerformReset, WdgM_PerformReset en het omschakelen van een I/O-pin [SWS_EcuM_04005] [SWS_EcuM_04044]. De oorzaak van een shutdown wordt vastgelegd met EcuM_SelectShutdownCause [SWS_EcuM_04007] [SWS_EcuM_04050]. EcuM_GetLastShutdownTarget levert het doel op waaruit het meest recent is gewekt of opgestart. Deze waarde blijft ongewijzigd tot de volgende shutdown [SWS_EcuM_02156].

De SHUTDOWN-fase eindigt in OFF of in RESET [SWS_EcuM_03022]. Wanneer het doel wordt ingesteld, bepaalt doorgaans de BswM SWS EcuM p. 66. In OffPreOS worden BswM en SchM gedeïnitialiseerd en worden de wekgebeurtenissen gecontroleerd. Staan er gebeurtenissen open, dan wordt RESET als doel ingesteld. De laatste actie is ShutdownOS [SWS_EcuM_03021] [SWS_EcuM_02952] SWS EcuM p. 49.

Vervolgens roept de shutdown-hook EcuM_Shutdown aan, die niet terugkeert. Na EcuM_OnGoOffTwo volgt bij het doel RESET EcuM_AL_Reset en bij het doel OFF EcuM_AL_SwitchOff [SWS_EcuM_02953] [SWS_EcuM_02917] [SWS_EcuM_04074] [SWS_EcuM_04075]. Interpretatie: ook bij RESET en OFF triggert de BswM vermoedelijk de fase via EcuM_GoDownHaltPoll, want de beschrijving van de retourwaarde daarvan maakt onderscheid naar het shutdown-doel [SWS_EcuM_91002]. Vraag Q-29bca5a7c6e82c98 (open)

Uitschakelen via OffPreOS en OffPostOSBswMEcuMSchMOsIntegration CodeEcuM_SelectShutdownTarget(target, mode)E_OKEcuM_GoDownHaltPoll(UserID)Interpretatie: trigger ook bij RESET/OFFUse Case: OffPreOSBswM_Deinit()SchM_Deinit()Wekgebeurtenissen controleren (pending of gevalideerd,afhankelijk van EcuMIgnoreWakeupEvValOffPreOS)optWeckereignisse anstehendShutdown-Ziel RESET setzen(EcuMDefaultResetModeRef)ShutdownOS()Use Case: OffPostOSEcuM_Shutdown()vanuit de shutdown-hookEcuM_OnGoOffTwo()altShutdown-Ziel RESETEcuM_AL_Reset(EcuM_ResetType)Shutdown-Ziel OFFEcuM_AL_SwitchOff()

Sequentiediagram: OffPreOS deïnitialiseert BswM en SchM, controleert de wekgebeurtenissen en beëindigt het OS. OffPostOS vertakt vervolgens afhankelijk van het shutdown-doel naar reset of uitschakelen. Bronnen: SWS EcuM p. 49, SWS EcuM p. 49, [SWS_EcuM_02953], [SWS_EcuM_91002]

SLEEP-fase: GoSleep, Halt of Poll en WakeupRestart

Als SLEEP als doel is gekozen, leidt EcuM_GoDownHaltPoll de SLEEP-fase in. De aanroeper moet het passende doel van tevoren hebben ingesteld [SWS_EcuM_91002] SWS EcuM p. 54. In GoSleep activeert de EcuM via EcuM_EnableWakeupSources alle wekbronnen uit EcuMWakeupSourceMask van de gewenste slaapmodus. Op meerkern-ECU's claimt hij daarnaast de kernspecifieke resource RES_AUTOSAR_ECUM. Anders dan bij de shutdown blijft het OS actief [SWS_EcuM_02389] [SWS_EcuM_03010] [SWS_EcuM_02951]. Er mag geen wekgebeurtenis verloren gaan. Als er tijdens GoSleep al een is opgetreden, worden Halt en Poll overgeslagen [SWS_EcuM_02188].

Slaapmodi die de microcontroller stilzetten, doorlopen de Halt-sequentie. Daarvoor roept de EcuM EcuM_GenerateRamHash aan, daarna EcuM_CheckRamHash [SWS_EcuM_02960] [SWS_EcuM_02863]. Slaapmodi met een gereduceerde klokfrequentie maken daarentegen gebruik van de Poll-sequentie. Deze roept EcuM_SleepActivity en EcuM_CheckWakeup aan in een blokkerende lus totdat een gebeurtenis als pending of gevalideerd is gemeld [SWS_EcuM_02962] [SWS_EcuM_03020]. In R20-11 is EcuM_CheckWakeup nog een callout. Pas vanaf R21-11 heet deze callout EcuM_CheckWakeupHook [SWS_EcuM_02929] SWS EcuM p. 145.

Een wekgebeurtenis leidt naar de WakeupRestart-sequentie [SWS_EcuM_02963] SWS EcuM p. 56:

  1. De MCU keert terug naar de normale modus.
  2. EcuM_DisableWakeupSources deactiveert de wekbronnen die momenteel actief zijn; alle andere blijven scherp [SWS_EcuM_02922].
  3. EcuM_AL_DriverRestart initialiseert de betrokken drivers opnieuw [SWS_EcuM_02923].
  4. De scheduler wordt weer vrijgegeven.

Treedt er tijdens de slaapstand een hardwarematige reset of een power-cycle op, dan begint de ECU daarentegen opnieuw in STARTUP [SWS_EcuM_04001].

SLEEP-fase: GoSleep, Halt of Poll, WakeupRestartBswMEcuMIntegration CodeOsMcuWeckquelle (Treiber)EcuM_SelectShutdownTarget(SLEEP, Schlafmodus)EcuM_GoDownHaltPoll(UserID)Use Case: GoSleepEcuM_EnableWakeupSources(EcuMWakeupSourceMask van de slaapmodus)BswM_EcuM_CurrentWakeup(sources, ECUM_WKSTATUS_NONE)GetResource(RES_AUTOSAR_ECUM_<core#>)altSlaapmodus stopt de µC (Halt)EcuM_GenerateRamHash()Mcu_SetMode(Schlafmodus)HALT tot aan de wek-interruptEcuM_CheckRamHash()Slaapmodus met gereduceerde klok (Poll)Mcu_SetMode(Schlafmodus)loopgeen gebeurtenis pending of gevalideerdEcuM_SleepActivity()EcuM_CheckWakeup(wakeupSource)<Module>_CheckWakeup()EcuM_SetWakeupEvent(sources)falls Weckereignis erkanntUse Case: WakeupRestartMcu_SetMode(EcuMNormalMcuModeRef)EcuM_GetPendingWakeupEvents()EcuM_DisableWakeupSources(pending)EcuM_AL_DriverRestart()ReleaseResource(RES_AUTOSAR_ECUM_<core#>)

Sequentiediagram: GoSleep bereidt de wekbronnen voor, Halt of Poll implementeren de slaapstand en WakeupRestart leidt terug naar de UP-status. Bronnen: SWS EcuM p. 52, SWS EcuM p. 85, SWS EcuM p. 87, SWS EcuM p. 58

Optioneel houdt de EcuM een klok bij die de seconden sinds het aansluiten van de batterij telt [SWS_EcuM_04069]. Elke gebruiker kan maximaal één wekalarm instellen. Het master-alarm komt altijd overeen met het vroegste gebruikersalarm [SWS_EcuM_04070] [SWS_EcuM_04072]. EcuM_SetAbsWakeupAlarm wijst een later tijdstip af met ECUM_E_EARLIER_ACTIVE en een reeds verstreken tijdstip met ECUM_E_PAST [SWS_EcuM_04059] [SWS_EcuM_04060]. Bij het verlaten van SLEEP verwerpt de EcuM alle alarmen [SWS_EcuM_04009].

Wekbronnen: statussen, validatie en opvragen

De EcuM beheert tot 32 wekbronnen als een bitmasker van het type EcuM_WakeupSourceType. Vijf bits zijn vooraf gedefinieerd, waaronder ECUM_WKSOURCE_POWER en ECUM_WKSOURCE_RESET. Overige bronnen krijgen via EcuMWakeupSourceId de bits 5 tot en met 31 toegewezen [SWS_EcuM_04040] [SWS_EcuM_02165] [SWS_EcuM_02166] SWS EcuM p. 63. Elke bron bevindt zich in een van de statussen NONE, PENDING, VALIDATED of EXPIRED [SWS_EcuM_04091] [SWS_EcuM_04041]. Elke statusovergang meldt de EcuM aan de BswM als mode-request [SWS_EcuM_04003].

weckzustaende start Power On NONE ECUM_WKSTATUS_NONE entry: BswM_EcuM_CurrentWakeup(sources, NONE) start->NONE PENDING ECUM_WKSTATUS_PENDING entry: BswM_EcuM_CurrentWakeup(sources, PENDING) entry: EcuM_StartWakeupSources() do: Validierungssequenz NONE->PENDING EcuM_SetWakeupEvent [met validatie] VALIDATED ECUM_WKSTATUS_VALIDATED entry: BswM_EcuM_CurrentWakeup(sources, VALIDATED) entry: ComM_EcuM_WakeUpIndication() NONE->VALIDATED EcuM_SetWakeupEvent [zonder validatie] PENDING->NONE EcuM_ClearWakeupEvent PENDING->VALIDATED EcuM_ValidateWakeupEvent EXPIRED ECUM_WKSTATUS_EXPIRED entry: BswM_EcuM_CurrentWakeup(sources, EXPIRED) entry: EcuM_StopWakeupSources() PENDING->EXPIRED Validierungs-Timeout (EcuM_MainFunction) VALIDATED->NONE EcuM_ClearWakeupEvent EXPIRED->NONE EcuM_ClearWakeupEvent

Toestandsdiagram: een wekbron gaat van NONE via PENDING naar VALIDATED of EXPIRED. Elke statusovergang wordt aan de BswM gemeld, en EcuM_ClearWakeupEvent stelt de bron weer in op NONE. Bronnen: SWS EcuM p. 60, [SWS_EcuM_04091], [SWS_EcuM_02683]

Een driver meldt een gedetecteerde gebeurtenis precies één keer met EcuM_SetWakeupEvent SWS EcuM p. 71. De functie mag ook vanuit interruptcontext en vanuit OS-vrije context worden aangeroepen. Zij zet de meegegeven bits via OR in de pending-variabele. Bronnen die niet bij de gekozen slaapmodus horen, negeert zij [SWS_EcuM_02826] [SWS_EcuM_02171] [SWS_EcuM_01117] [SWS_EcuM_04138].

Als de gebeurtenis gevalideerd moet worden, start de EcuM een bronspecifieke time-out conform EcuMValidationTimeout. Wordt dezelfde bron opnieuw gemeld, dan start de time-out niet opnieuw [SWS_EcuM_02975] [SWS_EcuM_02565] [SWS_EcuM_02709] [SWS_EcuM_02712]. Is voor een bron geen validatie geconfigureerd, dan werkt EcuM_SetWakeupEvent tegelijkertijd als EcuM_ValidateWakeupEvent. De vijf vooraf gedefinieerde bronnen worden nooit gevalideerd [SWS_EcuM_02566] [SWS_EcuM_02625].

De validatie zelf draait in EcuM_MainFunction, die daarvoor de callout EcuM_CheckValidation aanroept [SWS_EcuM_02539] [SWS_EcuM_02925] SWS EcuM p. 64. EcuM_ValidateWakeupEvent heeft het volgende effect [SWS_EcuM_02710] [SWS_EcuM_04078] [SWS_EcuM_04079] [SWS_EcuM_02645] [SWS_EcuM_04140]:

  • Zij stopt de time-out en zet de bits in de validated-variabele.
  • Zij meldt aan de BswM ECUM_WKSTATUS_VALIDATED.
  • Als er een kanaal of PNC geconfigureerd is, roept zij ComM_EcuM_WakeUpIndication respectievelijk ComM_EcuM_PNCWakeUpIndication aan.

Verloopt de time-out, dan stelt de hoofdfunctie het expired-bit in en meldt ECUM_WKSTATUS_EXPIRED [SWS_EcuM_04081] [SWS_EcuM_04082]. In de toestand RUN werkt de validatie alleen voor communicatiekanalen [SWS_EcuM_02790] [SWS_EcuM_02791].

validierung a Treiber erkennt Weckereignis: EcuM_SetWakeupEvent(sources) b Bron hoort bij de geselecteerde slaapmodus? a->b x Ereignis ignorieren b->x nein c Validierung konfiguriert? (EcuMValidationTimeout) b->c ja e Bits in Pending-Variable setzen, quellenspezifischen Timeout starten c->e ja h Timeout stoppen, Validated-Bits setzen, BswM_EcuM_CurrentWakeup(VALIDATED), ComM_EcuM_WakeUpIndication / PNCWakeUpIndication (falls Kanal/PNC konfiguriert) c->h nein: impliziter EcuM_ValidateWakeupEvent f EcuM_MainFunction: EcuM_CheckValidation(wakeupSource) e->f g EcuM_ValidateWakeupEvent eingetroffen? f->g g->h ja i Timeout abgelaufen? g->i nein i->f nein j Expired-Bit setzen, BswM_EcuM_CurrentWakeup(EXPIRED), EcuM_StopWakeupSources() i->j ja

Activiteitendiagram: bij bronnen zonder validatiebehoefte is een gebeurtenis direct gevalideerd. Bij de overige blijft deze PENDING totdat EcuM_ValidateWakeupEvent binnenkomt of de time-out verloopt en de bron EXPIRED wordt. Bronnen: SWS EcuM p. 63, SWS EcuM p. 78, [SWS_EcuM_02566], [SWS_EcuM_04082]

De actuele stand wordt opgevraagd door EcuM_GetPendingWakeupEvents, EcuM_GetValidatedWakeupEvents en EcuM_GetExpiredWakeupEvents. EcuM_ClearWakeupEvent wist de meegegeven bits uit alle drie de variabelen [SWS_EcuM_01156] [SWS_EcuM_02533] [SWS_EcuM_04076] [SWS_EcuM_02683].

Sommige wekbronnen hebben een geïntegreerde voeding, zodat hun wekken als een power-on-reset werkt. Voor deze bronnen start EcuM_StartCheckWakeup een CheckWakeupTimer, die voortijdig uitschakelen voorkomt. EcuM_SetWakeupEvent of EcuM_EndCheckWakeup beëindigt de timer weer [SWS_EcuM_04096] [SWS_EcuM_04098] [SWS_EcuM_02927] SWS EcuM p. 70.

Gedrag in het foutgeval

Niet-herstelbare fouten meldt de EcuM via de callout EcuM_ErrorHook met de bijbehorende foutcode [SWS_EcuM_04033] [SWS_EcuM_02904]. In R20-11 zijn hiervoor twee codes gedefinieerd [SWS_EcuM_91003] [SWS_EcuM_02987]:

  • ECUM_E_CONFIGURATION_DATA_INCONSISTENT bij inconsistente post-build-gegevens.
  • ECUM_E_RAM_CHECK_FAILED wanneer de RAM-controle na het wekken mislukt.

Mislukt een OS-aanroep, dan behoudt de EcuM de aangevraagde toestand en roept tevens de ErrorHook aan [SWS_EcuM_04139]. Een eigen code ECUM_E_OS_CALL_FAILED en de mededeling dat de hook niet terugkeert, bevat pas een latere versie van de specificatie SWS EcuM p. 102. Fouten tijdens de initialisatie negeert de EcuM, bijvoorbeeld de retourwaarden van init-functies [SWS_EcuM_02980].

Bij geactiveerde ontwikkelingsfoutdetectie controleren alle functies hun parameters en uitvoeringsvoorwaarden. Hiervoor staan ECUM_E_UNINIT, ECUM_E_SERVICE_DISABLED, ECUM_E_PARAM_POINTER en ECUM_E_INVALID_PAR ter beschikking [SWS_EcuM_03009]. Verdere gevallen meldt de EcuM aan DET:

Treedt er tijdens het uitschakelen een wekgebeurtenis op, dan voltooit de EcuM de shutdown en start direct opnieuw [SWS_EcuM_02756]. Kan de ECU zichzelf in EcuM_AL_SwitchOff niet stroomloos schakelen, dan is een reset een passende reactie [SWS_EcuM_02920] SWS EcuM p. 141.

Verdere gedetailleerde bewijzen

Deze handleiding is met behulp van AI opgesteld op basis van specificatiefragmenten voor de module EcuM (Classic Platform, R20-11). Bepalend zijn de gelinkte requirements; uitspraken die zijn aangeduid als interpretatie zijn niet normatief onderbouwd.

ECU State Manager (EcuM)

Controls ECU lifecycle states: Startup, Run, PostRun, Sleep, and Shutdown.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

functie EcuM_GoDownHaltPoll [SWS_EcuM_91002] 📄 PDF

Std_ReturnType EcuM_GoDownHaltPoll (EcuM_UserType UserID);

Instructs the ECU State Manager module to go into a sleep mode, Reset or OFF depending on the previously selected shutdown target.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 71091e858c55 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone en re-entrante functie EcuM_GoDownHaltPoll instrueert de module ECU State Manager om, afhankelijk van het eerder geselecteerde shutdown-doel, over te gaan naar een slaapmodus, een reset of de toestand OFF [SWS_EcuM_91002]. Zij is beschikbaar via het headerbestand EcuM.h en bezit de service-ID 0x2c [SWS_EcuM_91002].

Parameters en aanroepbevoegdheid

Als enige invoerparameter wordt UserID van het type EcuM_UserType doorgegeven. Deze identificeert de aanroepende gebruiker. Een aanroep is strikt gereglementeerd: uitsluitend voorgeconfigureerde gebruikers mogen deze functie uitvoeren [SWS_EcuM_91002].

Retourwaarden en verloopgedrag

Het retourgedrag hangt in hoge mate af van het type ingestelde shutdown-doel [SWS_EcuM_91002]:

  • E_NOT_OK: het verzoek is niet geaccepteerd [SWS_EcuM_91002].
  • E_OK: Als het doel SLEEP is, keert de functie na het verlaten van de slaaptoestand succesvol terug met deze status [SWS_EcuM_91002].
  • Geen terugkeer: Als als shutdown-doel RESET of OFF is gekozen, keert de functieaanroep niet meer terug naar de aanroeper [SWS_EcuM_91002].

Beperkingen en foutafhandeling

Hoewel de functie formeel als reentrant is gedeclareerd, vereist de beoogde uitvoering ervan de voorafgaande vastlegging van een geldig shutdown-doel [SWS_EcuM_91002]. Specifieke DET- of DEM-foutcodes worden niet vermeld in de interfacespecificatie; een mislukking of de afwijzing van het verzoek wordt direct via de retourwaarde E_NOT_OK aangegeven [SWS_EcuM_91002].

Deze gebruiksinstructie is automatisch gegenereerd op basis van de AUTOSAR-specificatie.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_Init [SWS_EcuM_02811] 📄 PDF

void EcuM_Init (void);

Initializes the ECU state manager and carries out the startup procedure. The function will never return (it calls StartOS)

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 0b36a0aa946f Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone servicefunctie EcuM_Init initialiseert de ECU State Manager en leidt de ordentelijke startprocedure van de ECU in ([SWS_EcuM_02811]). Ze wordt via de header EcuM.h met het service-ID 0x01 gedeclareerd, accepteert geen parameters en levert geen retourwaarde op ([SWS_EcuM_02811]). Formeel geclassificeerd als re-entrant, keert EcuM_Init na de aanroep nooit terug naar de aanroeper, aangezien ze de uitvoering aan het besturingssysteem overdraagt door StartOS aan te roepen ([SWS_EcuM_02811]).

In het kader van haar uitvoering verwerkt de functie de gedefinieerde StartPreOS-sequentie en de bijbehorende activiteiten in de exact voorgeschreven volgorde ([SWS_EcuM_02411], [SWS_EcuM_02684]). Een wezenlijk onderdeel van deze fase is de verificatie van de configuratieconsistentie: de module controleert binnen EcuM_Init of het desbetreffende structuurveld identiek is aan de waarde van ECUM_CONFIGCONSISTENCY_HASH ([SWS_EcuM_02798]).

Daarnaast stuurt EcuM_Init de initialisatie van de drivers op multi-coresystemen aan ([SWS_EcuM_04145]). De functie roept op elke afzonderlijke core de callouts EcuM_AL_DriverInitZero en EcuM_AL_DriverInitOne aan ([SWS_EcuM_04145]). Voor de callout-implementaties geldt de richtlijn ervoor te zorgen dat op de op dat moment actieve core uitsluitend die MCAL-modules worden geïnitialiseerd die ook daadwerkelijk op deze core worden uitgevoerd ([SWS_EcuM_04145]).

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie AUTOSAR Classic R20-11.

Implementer's Guide volgt (complexiteit I2)

functie EcuM_StartupTwo [SWS_EcuM_02838] 📄 PDF

void EcuM_StartupTwo (void);

This function implements the STARTUP II state.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 537ce9e5d889 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone en niet-re-entrante functie EcuM_StartupTwo implementeert de toestand STARTUP II van de ECU State Manager [SWS_EcuM_02838]. De interface wordt gedeclareerd via het headerbestand EcuM.h en heeft de service-ID 0x1a [SWS_EcuM_02838]. Conform de functiesignatuur void EcuM_StartupTwo(void) accepteert de aanroep noch invoerparameters noch invoer-/uitvoer- of uitvoerparameters en levert geen retourwaarde op aan de aanroeper [SWS_EcuM_02838].

Wordt de ECU-Manager-module geactiveerd door de functie EcuM_StartupTwo, dan voert deze de acties van de StartPostOS-sequentie uit [SWS_EcuM_02932].

Voor de integratie gelden wezenlijke voorschriften met betrekking tot de aanroepcontext en de gelijktijdigheid: De functie moet dwingend worden aangeroepen vanuit een task die direct als consequentie van StartOS wordt gestart [SWS_EcuM_02806]. Dit vereist dat de aanroep van EcuM_StartupTwo hetzij vanuit een autostart-task plaatsvindt, hetzij vanuit een task die expliciet wordt gestart [SWS_EcuM_02806]. Aangezien de functie als niet-re-entrant is gespecificeerd, mag er geen gelijktijdige of meervoudige aanroep plaatsvinden [SWS_EcuM_02838].

Deze tekst is door een AI gegenereerd op basis van de AUTOSAR-specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_Shutdown [SWS_EcuM_02812] 📄 PDF

void EcuM_Shutdown (void);

Typically called from the shutdown hook, this function takes over execution control and will carry out GO OFF II activities.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 06f5a6c81474 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone servicefunctie EcuM_Shutdown (service-ID 0x02) wordt beschikbaar gesteld via het headerbestand EcuM.h en neemt de uitvoeringsbesturing over voor het uitvoeren van de activiteiten van de fase „GO OFF II” [SWS_EcuM_02812]. Zij dient voor de definitieve beëindiging van het uitschakelproces [SWS_EcuM_02953].

Aanroepcontext en semantiek

Typisch wordt de functie aangeroepen vanuit de shutdown-hook [SWS_EcuM_02812]. Deze hook is conform de vereisten expliciet verplicht om EcuM_Shutdown aan te roepen om het uitschakelproces te beëindigen [SWS_EcuM_02953].

Gelijktijdigheid en control flow

In de specificatie is EcuM_Shutdown als re-entrant gedeclareerd [SWS_EcuM_02812]. Voor het programmaverloop geldt echter de strikte eis dat EcuM_Shutdown niet mag terugkeren naar de aanroeper [SWS_EcuM_02953]. Na de afhandeling schakelt de functie de ECU definitief uit of triggert als alternatief een reset [SWS_EcuM_02953].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de AUTOSAR-specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_SetState [SWS_EcuM_04122] 📄 PDF

void EcuM_SetState (EcuM_StateType state);

Function called by BswM to notify about State Switch.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 6ccfd6ea170b Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepcontext

De synchrone functie EcuM_SetState dient voor de BswM om een toestandswisseling aan de EcuM mee te delen [SWS_EcuM_04122]. Als invoerparameter wordt state van het type EcuM_StateType overgedragen, die de door de BswM voorgeschreven toestand specificeert [SWS_EcuM_04122]. De functie heeft geen retourwaarde [SWS_EcuM_04122].

Werking en samenspel

Bij het aanroepen stelt de functie de interne toestand van de EcuM in op de waarde van de parameter state [SWS_EcuM_04123]. Stelt de BswM op deze wijze een toestand van de EcuM in, dan geeft de EcuM de corresponderende modus door aan de RTE [SWS_EcuM_04116].

Foutafhandeling

Als de overgedragen waarde van de parameter state ongeldig is, wijzigt EcuM_SetState de EcuM-toestand niet [SWS_EcuM_04123]. Voor zover Development Error Reporting is geactiveerd, meldt de functie in dit foutgeval bovendien de fout ECUM_E_STATE_PAR_OUT_OF_RANGE aan de DET-module [SWS_EcuM_04123].

Gelijktijdigheid en interface

De uitvoering is synchroon en re-entrant [SWS_EcuM_04122]. De service wordt gedeclareerd via het headerbestand EcuM.h [SWS_EcuM_04122].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie AUTOSAR Classic R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_RequestRUN [SWS_EcuM_04124] 📄 PDF

Std_ReturnType EcuM_RequestRUN (EcuM_UserType user);

Places a request for the RUN state. Requests can be placed by every user made known to the state manager at configuration time.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: edb1d4cba6be Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik

De synchrone en re-entrante functie EcuM_RequestRUN dient ertoe de RUN-toestand bij de ECU State Manager aan te vragen [SWS_EcuM_04124]. Als parameter wordt via user van het type EcuM_UserType de identificatie van de aanvragende entiteit overgedragen; bevoegd zijn uitsluitend gebruikers die al tijdens configuratietijd aan de tostandsmanager bekend zijn gemaakt [SWS_EcuM_04124]. De functie levert E_OK terug wanneer de EcuM de aanvraag heeft geaccepteerd, anders E_NOT_OK [SWS_EcuM_04124]. De service is gedeclareerd via de header EcuM.h [SWS_EcuM_04124].

Foutafhandeling en beperkingen

Aanvragen mogen niet worden genest: Een individuele gebruiker kan op een bepaald moment ten hoogste één actieve RUN-aanvraag behouden [SWS_EcuM_04125]. Detecteert EcuM_RequestRUN herhaalde of dubbele aanroepen door dezelfde gebruiker, dan wordt bij geactiveerde ontwikkelingsdetectie de foutcode ECUM_E_MULTIPLE_RUN_REQUESTS aan de DET gemeld [SWS_EcuM_03024], [SWS_EcuM_04125].

Samenspel

Elke met EcuM_RequestRUN succesvol ingestelde toestandsaanvraag moet na voltooiing van de activiteit weer worden vrijgegeven. Hiervoor staat de complementaire, eveneens synchrone en re-entrante service EcuM_ReleaseRUN ter beschikking, waaraan dezelfde gebruikers-ID wordt overgedragen [SWS_EcuM_04127].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de AUTOSAR-specificatie R20-11.

Implementer's Guide volgt (complexiteit I2)

functie EcuM_ReleaseRUN [SWS_EcuM_04127] 📄 PDF

Std_ReturnType EcuM_ReleaseRUN (EcuM_UserType user);

Releases a RUN request previously done with a call to EcuM_RequestRUN. The service is intended for implementing AUTOSAR ports.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: f2acc7b3a714 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik

De synchrone functie EcuM_ReleaseRUN (service-ID 0x04) dient voor het vrijgeven van een eerder via EcuM_RequestRUN geregistreerde RUN-toestandsaanvraag [SWS_EcuM_04127]. De interface wordt via de header EcuM.h ter beschikking gesteld en is primair bedoeld voor de implementatie van AUTOSAR-poorten [SWS_EcuM_04127]. Als invoerparameter verwacht de functie de gebruikers-ID user van het type EcuM_UserType, die de vrijgevende entiteit binnen de module eenduidig identificeert [SWS_EcuM_04127].

De retourwaarde van het type Std_ReturnType geeft met E_OK aan dat de vrijgaveaanvraag succesvol door de module is geaccepteerd [SWS_EcuM_04127]. Kon de vrijgave niet worden verwerkt, dan retourneert de service de foutwaarde E_NOT_OK [SWS_EcuM_04127].

Foutafhandeling en gelijktijdigheid

Specifieke foutcodes, ontwikkelingsfouten (DET) of productiefouten (DEM) worden in de specificatie niet vermeld; de afwijzing van een aanvraag uit zich uitsluitend via het retourneren van E_NOT_OK [SWS_EcuM_04127]. Aangenomen mag worden (interpretatie:) dat het retourneren van E_NOT_OK vermoedelijk dan plaatsvindt wanneer er voor de opgegeven gebruikers-ID geen actieve aanvraag voorliegt of er een ongeldige parameterwaarde is doorgegeven. Vraag Q-cbe9031cffe1be81 (open)

De functie is gedeclareerd als re-entrant en mag zodoende in concurrente uitvoeringscontexten worden aangeroepen [SWS_EcuM_04127]. Als functionele volgordevoorwaarde vereist de aanroep dwingend dat de desbetreffende gebruiker eerder de toestand via EcuM_RequestRUN heeft aangevraagd [SWS_EcuM_04127].

Samenspel

De module EcuM stelt deze service ter beschikking om via gedefinieerde poorten het vasthouden van de RUN-toestand te beëindigen [SWS_EcuM_04127]. Voor de RTE-configuratie en de interactie met het lokale RTE-runtimegedrag definieert de specificatie het interne gedrag van de EcuStateManager met meerdere parallel uitvoerbare Runnable Entities [SWS_EcuM_03018].

Deze tekst is gegenereerd door een AI op basis van de AUTOSAR-specificatie.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_RequestPOST_RUN [SWS_EcuM_04128] 📄 PDF

Std_ReturnType EcuM_RequestPOST_RUN (EcuM_UserType user);

Places a request for the POST RUN state. Requests can be placed by every user made known to the state manager at configuration time. Requests for RUN and POST RUN must be tracked independently (in other words: two independent variables). The service is intended for implementing AUTOSAR ports.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 8517014c50a6 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik

De synchrone functie EcuM_RequestPOST_RUN dient voor het aanvragen van de toestand POST RUN bij de ECU State Manager ([SWS_EcuM_04128]). De aanroeper identificeert zich via de parameter user, waarbij elke aanvragende entiteit al tijdens configuratietijd aan de tostandsmanager bekend moet zijn gemaakt ([SWS_EcuM_04128]). De service is gedeclareerd in de header EcuM.h, bedoeld voor de implementatie van AUTOSAR-ports en bevestigt een succesvolle acceptatie met E_OK respectievelijk een afwijzing met E_NOT_OK ([SWS_EcuM_04128]).

Foutafhandeling

Voor zover de detectie van ontwikkelingsfouten is geactiveerd, leidt een hernieuwde aanroep door dezelfde gebruiker ertoe dat EcuM_RequestPOST_RUN de fout ECUM_E_MULTIPLE_RUN_REQUESTS aan de DET meldt ([SWS_EcuM_03025]). Interpretatie: In het geval van dergelijke meervoudige aanvragen of bij ongeldige gebruikers-ID's zal de service vermoedelijk antwoorden met E_NOT_OK ([SWS_EcuM_04128]). Vraag Q-b5bbd7d5b53e76ba (open)

Gelijktijdigheid en wisselwerking

De functie is ontworpen als re-entrant ([SWS_EcuM_04128]). In de module moeten de aanvragen voor RUN en POST RUN strikt onafhankelijk van elkaar worden bijgehouden via twee afzonderlijke variabelen ([SWS_EcuM_04128]). Elke via deze service geregistreerde aanvraag houdt de POST RUN-toestand actief totdat deze expliciet weer wordt ingetrokken door de complementaire aanroep van EcuM_ReleasePOST_RUN ([SWS_EcuM_04129]).

Deze tekst is automatisch gegenereerd. Alle inhoudelijke gegevens zijn gebaseerd op de AUTOSAR-specificatie.

Implementer's Guide volgt (complexiteit I2)

functie EcuM_ReleasePOST_RUN [SWS_EcuM_04129] 📄 PDF

Std_ReturnType EcuM_ReleasePOST_RUN (EcuM_UserType user);

Releases a POST RUN request previously done with a call to EcuM_RequestPOST_RUN. The service is intended for implementing AUTOSAR ports.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 5beb0fd73cda Herkomst Open vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en semantiek

De synchrone en re-entrante functie EcuM_ReleasePOST_RUN ([SWS_EcuM_04129]) dient voor het vrijgeven van een eerder middels EcuM_RequestPOST_RUN ingestelde POST-RUN-aanvraag. Via de invoerparameter user van het type EcuM_UserType wordt de identificatie doorgegeven van de entiteit die de POST-RUN-status weer vrijgeeft. De interface is beschikbaar via het headerbestand EcuM.h en is primair ontworpen voor de realisatie van AUTOSAR-poorten ([SWS_EcuM_04129]).

Retourwaarden en foutafhandeling

De functie retourneert de status Std_ReturnType ([SWS_EcuM_04129]):

  • E_OK: De vrijgaveaanvraag is succesvol geaccepteerd door de ECU State Manager.
  • E_NOT_OK: De vrijgaveaanvraag is afgewezen. Interpretatie: Een afwijzing met E_NOT_OK ligt vermoedelijk voor wanneer er voor de opgegeven gebruiker geen actieve aanvraag geregistreerd was of een ongeldige gebruikersidentificator is doorgegeven. Vraag Q-67bd8594612defca (open)

Gelijktijdigheid en wisselwerking

De service is gespecificeerd als re-entrant ([SWS_EcuM_04129]), zodat gelijktijdige aanroepen door meerdere entiteiten zijn toegestaan. De functie maakt deel uit van het interne gedrag van de module EcuM ([SWS_EcuM_03018]). De aanroep vereist logischerwijs dat de entiteit eerder de fase POST RUN heeft aangevraagd ([SWS_EcuM_04129]). Interpretatie: Kenmerkend is dat de aanroep vermoedelijk plaatsvindt vanuit softwarecomponenten via RTE-poorten, zodra hun naloopactiviteiten vóór het uitschakelen zijn voltooid. Vraag Q-81f71656d4debb4a (open)

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de AUTOSAR-specificatiestatus R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_SelectShutdownTarget [SWS_EcuM_02822] 📄 PDF

Std_ReturnType EcuM_SelectShutdownTarget (EcuM_ShutdownTargetType shutdownTarget, EcuM_ShutdownModeType shutdownMode);

EcuM_SelectShutdownTarget selects the shutdown target. EcuM_SelectShutdownTarget is part of the ECU Manager Module port interface.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: a39197138cfb Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone servicefunctie EcuM_SelectShutdownTarget dient voor de selectie van het shutdown-doel voor de ECU en wordt via het headerbestand EcuM.h en als onderdeel van de poortinterface van de ECU-managermodule ter beschikking gesteld [SWS_EcuM_02822]. Door de aanroep wordt het interne shutdown-doel ingesteld op de waarde van de doorgegeven parameter shutdownTarget [SWS_EcuM_00624].

De functie verwacht twee invoerparameters [SWS_EcuM_02822]:

  • shutdownTarget: Bepaalt het geselecteerde doel voor het afsluiten [SWS_EcuM_02822].
  • shutdownMode: Bevat de identificatie van een sleep-modus (als het doel ECUM_SHUTDOWN_TARGET_SLEEP is) of van een resetmechanisme (als het doel ECUM_SHUTDOWN_TARGET_RESET is) volgens de configuratie [SWS_EcuM_02822].

De aanroep start geen directe instellings- of uitvoeringsactiviteiten (setup), maar slaat de waarden alleen op voor later gebruik in de fase SHUTDOWN of SLEEP [SWS_EcuM_02585].

Met betrekking tot concurrency is de functie re-entrant gespecificeerd [SWS_EcuM_02822]. In het RTE-Internal-Behavior van de ECU State Manager is de corresponderende Runnable Entity SelectShutdownTarget met canbeInvokedConcurrently = TRUE gedeclareerd [SWS_EcuM_03018], waardoor parallelle aanroepen zijn toegestaan.

De retourwaarde van het type Std_ReturnType geeft met E_OK aan dat het nieuwe shutdown-doel succesvol is ingesteld, en met E_NOT_OK dat de overname is mislukt [SWS_EcuM_02822]. Concrete foutoorzaken voor E_NOT_OK of DET-meldingen noemt de specificatie hier niet; vermoedelijk leiden ontoelaatbare of niet-geconfigureerde combinaties van doel en modus tot weigering. Vraag Q-e916f3a6ac0bf47e (open)

Deze tekst is gegenereerd door een AI en is gebaseerd op de specificaties van release R20-11.

Implementer's Guide volgt (complexiteit I2)

functie EcuM_SelectShutdownCause [SWS_EcuM_04050] 📄 PDF

Std_ReturnType EcuM_SelectShutdownCause (EcuM_ShutdownCauseType target);

EcuM_SelectShutdownCause elects the cause for a shutdown. EcuM_SelectShutdownCause is part of the ECU Manager Module port interface.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 518672a867f6 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone functie EcuM_SelectShutdownCause dient voor de selectie van de oorzaak voor het afsluiten van de ECU en is beschikbaar via het headerbestand EcuM.h [SWS_EcuM_04050].

Gebruik en semantiek:

  • Parameters: De invoerparameter target van het type EcuM_ShutdownCauseType draagt de geselecteerde uitschakeloorzaak over [SWS_EcuM_04050].
  • Retourwaarde: Een retourwaarde van het type Std_ReturnType signaleert met E_OK dat de nieuwe oorzaak succesvol is ingesteld, en met E_NOT_OK dat het instellen is mislukt [SWS_EcuM_04050].
  • Uitvoering: De service werkt synchroon onder de service-ID 0x1b en is als re-entrant gespecificeerd [SWS_EcuM_04050].

Gelijktijdigheid en samenspel:

De functie maakt deel uit van de port-interface van de module ECU Manager [SWS_EcuM_04050]. Voor de configuratie van de lokale RTE is in het interne gedrag EcuStateManager de runnable entity SelectShutdownCause met het symbool EcuM_SelectShutdownCause gedefinieerd, waarbij de eigenschap canbeInvokedConcurrently = TRUE is toegekend [SWS_EcuM_03018].

Foutafhandeling:

In de specificatieomvang zijn geen specifieke DET- of DEM-meldingen opgenomen; fouttoestanden bij het instellen van de oorzaak worden uitsluitend via de retourwaarde E_NOT_OK aangegeven [SWS_EcuM_04050].

Deze gebruiksinstructie is geautomatiseerd opgesteld en is gebaseerd op de specificatievoorschriften voor AUTOSAR Classic Release R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_GetShutdownCause [SWS_EcuM_04051] 📄 PDF

Std_ReturnType EcuM_GetShutdownCause (EcuM_ShutdownCauseType* shutdownCause);

EcuM_GetShutdownCause returns the selected shutdown cause as set by EcuM_Select ShutdownCause. EcuM_GetShutdownCause is part of the ECU Manager Module port interface.

functie EcuM_ClearWakeupEvent [SWS_EcuM_02828] 📄 PDF

void EcuM_ClearWakeupEvent (EcuM_WakeupSourceType sources);

Clears wakeup events.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 8efe1e7a60e8 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone servicefunctie EcuM_ClearWakeupEvent (service-ID 0x16) dient voor het resetten van wakeup-events en is beschikbaar via het headerbestand EcuM.h [SWS_EcuM_02828]. Als parameter accepteert ze het bitmasker sources van het type EcuM_WakeupSourceType en ze bezit geen retourwaarde [SWS_EcuM_02828].

Bij aanroep worden alle in sources als bit gezette openstaande events uit drie interne variabelen van de module gewist [SWS_EcuM_02683]:

  • uit de interne variabele voor openstaande wakeup-events (pending wakeup events),
  • uit de interne variabele voor gevalideerde wakeup-events (validated events) en
  • uit de interne variabele voor verlopen wakeup-events (expired events) [SWS_EcuM_02683].

Met betrekking tot de aanroepcontext mag EcuM_ClearWakeupEvent flexibel worden aangeroepen vanuit de interruptcontext, vanuit de reguliere OS-context en vanuit een OS-vrije context [SWS_EcuM_02807]. Tegelijkertijd is de functie echter bindend gespecificeerd als niet-re-entrant (Non-Reentrant) en niet-onderbreekbaar (Non-Interruptible) [SWS_EcuM_02828]. Interpretatie: Aangezien de functie in verschillende contexten is toegestaan, maar niet onderbreekbaar is, zal de integrator of aanroeper organisatorisch moeten waarborgen dat er geen gelijktijdige of elkaar onderbrekende aanroepen plaatsvinden. Vraag Q-71a4b1b218505a1c (open)

Deze tekst is door een AI gegenereerd op basis van de AUTOSAR-specificatie R20-11.

functie EcuM_AbortWakeupAlarm [SWS_EcuM_04061] 📄 PDF

Std_ReturnType EcuM_AbortWakeupAlarm (EcuM_UserType user);

Ecum_AbortWakeupAlarm aborts the wakeup alarm previously set by this user. EcuM_Abort WakeupAlarm is part of the ECU Manager Module port interface.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: a619899b3b6a Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone functie EcuM_AbortWakeupAlarm dient voor het afbreken van een eerder door een gebruiker ingesteld wake-up-alarm [SWS_EcuM_04061]. De interface is beschikbaar via het headerbestand EcuM.h en vormt een onderdeel van de port-interface van de ECU Manager-module [SWS_EcuM_04061].

Parameters en retourwaarden

  • user (In): Identificatie van de gebruiker van het type EcuM_UserType die het wake-up-alarm wil annuleren [SWS_EcuM_04061]. In-/uitgangs- of zuivere uitgangsparameters bestaan niet [SWS_EcuM_04061].
  • E_OK: De service is met succes uitgevoerd en het alarm is geannuleerd [SWS_EcuM_04061].
  • ECUM_E_NOT_ACTIVE: Er is geen actief alarm gevonden dat toebehoort aan de doorgegeven gebruiker [SWS_EcuM_04061].
  • E_NOT_OK: De uitvoering van de dienst is mislukt [SWS_EcuM_04061].

Gelijktijdigheid en wisselwerking

De functie heeft service-ID 0x24 en is gespecificeerd als reentrant [SWS_EcuM_04061]. Aanroepen kunnen dus voor verschillende gebruikers gelijktijdig plaatsvinden. Het interne gedrag van de ECU Manager definieert de uitvoerbare eenheden voor de configuratie van de lokale RTE [SWS_EcuM_03018]; als onderdeel van de module-port-interface zal de aanroep doorgaans door softwarecomponenten via de RTE worden geïnitieerd. Vraag Q-2c8f004d9f00bbd3 (open)

Deze tekst is door een AI gegenereerd op basis van de AUTOSAR-specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_GetCurrentTime [SWS_EcuM_04062] 📄 PDF

Std_ReturnType EcuM_GetCurrentTime (EcuM_TimeType* time);

EcuM_GetCurrentTime returns the current value of the EcuM clock (i.e. the time since battery connect). EcuM_GetCurrentTime is part of the ECU Manager Module port interface.

functie EcuM_GetWakeupTime [SWS_EcuM_04063] 📄 PDF

Std_ReturnType EcuM_GetWakeupTime (EcuM_TimeType* time);

EcuM_GetWakeupTime returns the current value of the master alarm clock (the minimum absolute time of all user alarm clocks). EcuM_GetWakeupTime is part of the ECU Manager Module port interface.

functie EcuM_SetClock [SWS_EcuM_04064] 📄 PDF

Std_ReturnType EcuM_SetClock (EcuM_UserType user, EcuM_TimeType time);

EcuM_SetClock sets the EcuM clock time to the provided value. This API is useful for testing the alarm services; Alarms that take days to expire can be tested. EcuM_SetClock is part of the ECU Manager Module port interface.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: a5821c5da6f5 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone en re-entrante functie EcuM_SetClock dient er volgens [SWS_EcuM_04064] toe de interne tijd van de ECU State Manager op een vooraf ingestelde waarde in te stellen. Als onderdeel van de port-interface van de ECU Manager kan de functie via het headerbestand EcuM.h worden geïntegreerd en aangeroepen [SWS_EcuM_04064].

Het hoofddoel van de interface is het testen van alarmdiensten: alarmen waarvan het reguliere verloop dagen in beslag zou nemen, kunnen door het gericht instellen van de tijd in testmodus worden geverifieerd [SWS_EcuM_04064]. Hierbij worden twee invoerparameters overgedragen:

  • user (type EcuM_UserType): Identificatie van de aanroeper respectievelijk gebruiker die de tijd wil instellen.
  • time (type EcuM_TimeType): Absolute tijdsaanduiding in seconden sinds het aansluiten van de batterij (Battery Connect).

Als retourwaarde levert de service de status Std_ReturnType met E_OK bij succesvolle uitvoering of E_NOT_OK in geval van een fout [SWS_EcuM_04064]. Concrete foutoorzaken of DET-meldingen zijn bij de interface niet gespecificeerd; vermoedelijk leidt het overdragen van niet-geautoriseerde gebruikersidentificaties of ongeldige tijdwaarden tot het retourneren van E_NOT_OK. Vraag Q-248768580c0309e8 (open)

Wat betreft het interne modulegedrag en de RTE-configuratie voegt de functie zich in de structuur van de runnable entities van de EcuStateManager in [SWS_EcuM_03018].

Deze tekst is gegenereerd door een AI en dient voor technische oriëntatie.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_SelectBootTarget [SWS_EcuM_02835] 📄 PDF

Std_ReturnType EcuM_SelectBootTarget (EcuM_BootTargetType target);

EcuM_SelectBootTarget selects a boot target. EcuM_SelectBootTarget is part of the ECU Manager Module port interface.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 3afaf8f6214a Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone functie EcuM_SelectBootTarget dient voor de selectie van een boot-target voor de ECU en maakt deel uit van de port-interface van de ECU Manager, en is beschikbaar via de header EcuM.h [SWS_EcuM_02835]. Het gewenste doel wordt via de invoerparameter target van het type EcuM_BootTargetType doorgegeven [SWS_EcuM_02835].

Als retourwaarde signaleert de functie E_OK wanneer het nieuwe boot-target door de EcuM is geaccepteerd, en anders E_NOT_OK [SWS_EcuM_02835]. De implementatie moet het gekozen doel opslaan op een wijze die compatibel is met de bootloader [SWS_EcuM_02247]. De actueel ingestelde waarde kan via de complementaire service EcuM_GetBootTarget worden opgevraagd [SWS_EcuM_02836].

De functie is gespecificeerd als re-entrant [SWS_EcuM_02835]; binnen het interne gedrag voor de RTE-configuratie is de Runnable Entity SelectBootTarget gedeclareerd met canbeInvokedConcurrently = TRUE [SWS_EcuM_03018]. Als beperking geldt dat deze service uitsluitend bedoeld is voor softwarecomponenten (SW-Cs) met betrekking tot diagnose c.q. bootmanagement, en afhankelijk kan zijn van de specifiek toegepaste bootloader [SWS_EcuM_03000].

Deze tekst is gegenereerd door een AI en is gebaseerd op de vereisten van de AUTOSAR-specificatie.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_GetBootTarget [SWS_EcuM_02836] 📄 PDF

Std_ReturnType EcuM_GetBootTarget (EcuM_BootTargetType* target);

EcuM_GetBootTarget returns the current boot target - see EcuM_SelectBootTarget. EcuM_Get BootTarget is part of the ECU Manager Module port interface.

functie EcuM_ValidateWakeupEvent [SWS_EcuM_02829] 📄 PDF

void EcuM_ValidateWakeupEvent (EcuM_WakeupSourceType sources);

After wakeup, the ECU State Manager will stop the process during the WAKEUP VALIDATION state/sequence to wait for validation of the wakeup event.This API service is used to indicate to the ECU Manager module that the wakeup events indicated in the sources parameter have been validated.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: f79b59c62af4 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

EcuM_ValidateWakeupEvent is een synchrone service (service-ID 0x14) die aan de ECU Manager signaleert dat de in parameter sources doorgegeven wekbronnen met succes zijn gevalideerd ([SWS_EcuM_02829]). Na het ontwaken wacht de ECU State Manager in de validatiesequentie op deze bevestiging. Bij de aanroep stopt de functie de lopende timeout-timer van de validatie ([SWS_EcuM_02710]) en voegt ze de doorgegeven events via een OR-koppeling van het bitmasker toe aan de interne variabele voor gevalideerde wek-events ([SWS_EcuM_04078]).

De functie is re-entrant ([SWS_EcuM_02829]) en mag zowel vanuit de task- als vanuit de interruptcontext worden aangeroepen ([SWS_EcuM_02345]). Bevindt de ECU Manager zich in de toestand RUN, dan blijft de aanroep voor alle wekbronnen zonder effect, voor zover het geen communicatiekanalen betreft ([SWS_EcuM_02790]). Voor bronnen die aan een communicatiekanaal zijn toegewezen, heeft de service daarentegen in elke fase van de ECU een onbeperkte werking ([SWS_EcuM_02791]).

In het totale verloop interacteert de service nauw met de wekvalidatie en het communicatiebeheer:

  • Validatiecontrole: De ECU Manager roept ter controle de callout EcuM_CheckValidation aan; wordt een geldig wek-event herkend, dan vindt de terugmelding plaats via EcuM_ValidateWakeupEvent ([SWS_EcuM_02925]).
  • Configuratie: Is voor een wekbron geen validatieprotocol geconfigureerd (EcuMValidationTimeout), dan impliceert EcuM_SetWakeupEvent reeds de aanroep van EcuM_ValidateWakeupEvent ([SWS_EcuM_02566]).
  • Melding: Is voor de wekbron EcuMComMChannelRef geconfigureerd, dan roept de service ComM_EcuM_WakeUpIndication aan ([SWS_EcuM_02645]). Bij een geconfigureerde EcuMComMPNCRef wordt bovendien voor elke gerefereerde PNC ComM_EcuM_PNCWakeUpIndication geactiveerd ([SWS_EcuM_04140]).

Deze gebruiksinstructie is gegenereerd door een AI op basis van de specificatie AUTOSAR Classic R20-11.

Implementer's Guide volgt (complexiteit I2)

functie EcuM_ErrorHook [SWS_EcuM_02904] 📄 PDF

void EcuM_ErrorHook (uint16 reason);

The ECU State Manager will call the error hook if the error codes "ECUM_E_RAM_CHECK_ FAILED" or "ECUM_E_CONFIGURATION_DATA_INCONSISTENT" occur. In this situation it is not possible to continue processing and the ECU must be stopped. The integrator may choose the modality how the ECU is stopped, i.e. reset, halt, restart, safe state etc.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: a96df00e2811 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone en niet-re-entrante callback-functie EcuM_ErrorHook (beschikbaar gesteld via EcuM_Externals.h) wordt door de ECU State Manager aangeroepen zodra er ernstige fouten optreden die een reguliere verdere verwerking onmogelijk maken en het stilleggen van de ECU vereisen [SWS_EcuM_02904]. Via de overdrachtsparameter reason wordt de specifieke foutoorzaak doorgegeven [SWS_EcuM_02904].

Tot de gedefinieerde foutoorzaken behoren ECUM_E_RAM_CHECK_FAILED en ECUM_E_CONFIGURATION_DATA_INCONSISTENT [SWS_EcuM_02904]. Mislukt de RAM-controle bij de wakeup, dan is de ECU Manager verplicht om EcuM_ErrorHook met de reden ECUM_E_RAM_CHECK_FAILED te triggeren [SWS_EcuM_02987]. Daarnaast vindt de foutafhandeling plaats via deze hook wanneer een aanroep van een besturingssysteemfunctie mislukt en er geen andere foutreactie is gespecificeerd; de EcuM blijft in dat geval in de voorgaande toestand [SWS_EcuM_04139].

Voor de systeemintegrator gelden bij de implementatie de volgende randvoorwaarden:

  • Stopmodaliteit van de ECU: De integrator kiest de wijze waarop de ECU wordt stilgelegd (bijv. reset, halt, herstart of veilige toestand) [SWS_EcuM_02904]. Interpretatie: Bij drastische maatregelen zoals een reset of halt zal de functie typisch niet meer terugkeren naar de reguliere programmabesturing. Vraag Q-59c23e3a2569f670 (open)
  • Foutmelding aan het DEM: Het is ter beoordeling van de integrator of de fout wordt doorgestuurd naar het DEM, mits gewaarborgd is dat het DEM geen beschadigde NVRAM-blokken beschrijft [SWS_EcuM_02987].

Deze tekst is opgesteld door een AI en is gebaseerd op de specificatie AUTOSAR CP R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_AL_SetProgrammableInterrupts [SWS_EcuM_04085] 📄 PDF

void EcuM_AL_SetProgrammableInterrupts (void);

If the configuration parameter EcuMSetProgrammableInterrupts is set to true, this callout Ecu M_AL_SetProgrammableInterrupts is executed and shall set the interrupts on ECUs with programmable interrupts.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 166191cb51d3 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepvoorwaarden

De callout-functie EcuM_AL_SetProgrammableInterrupts wordt door de module ECU State Manager aangeroepen om op ECU's met programmeerbare interruptcontrollers de overeenkomstige interrupts te configureren en in te stellen [SWS_EcuM_04085]. De uitvoering van deze callout vindt echter alleen plaats als de configuratieparameter EcuMSetProgrammableInterrupts is ingesteld op de waarde true [SWS_EcuM_04085]. Als deze parameter niet is geactiveerd, blijft de aanroep achterwege [SWS_EcuM_04085]. Voor integrators en platformstuurprogramma's wordt de declaratie van de interface via het headerbestand EcuM_Externals.h beschikbaar gesteld [SWS_EcuM_04085].

De interface heeft de syntax void EcuM_AL_SetProgrammableInterrupts (void) en is toegewezen aan service-ID 0x4A [SWS_EcuM_04085]. De aanroep is volledig parameterloos: er worden invoer-, in-/uitvoer- noch uitvoerparameters doorgegeven, en de functie retourneert geen retourwaarde aan de aanroepende module [SWS_EcuM_04085].

Gelijktijdigheid en beperkingen

Voor EcuM_AL_SetProgrammableInterrupts is in de specificatie een asynchroon uitvoeringsgedrag (Asynchronous) vastgelegd [SWS_EcuM_04085]. Met betrekking tot de gelijktijdigheid is de functie geclassificeerd als niet-re-entrant (Non Reentrant) [SWS_EcuM_04085]. Voor de integratie betekent dit dat parallelle of geneste aanroepen van de interface ontoelaatbaar zijn en dat de interruptgerelateerde configuratie zonder gelijktijdige herintreding moet verlopen [SWS_EcuM_04085].

Deze gebruiksinstructie is geautomatiseerd opgesteld op basis van de AUTOSAR-specificatie.

functie EcuM_AL_DriverInitZero [SWS_EcuM_02905] 📄 PDF

void EcuM_AL_DriverInitZero (void);

This callout shall provide driver initialization and other hardware-related startup activities for loading the post-build configuration data. Beware: Here only pre-compile and link-time configurable modules may be used.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 5df1108381d2 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik

De callout-functie EcuM_AL_DriverInitZero (service-ID 0x31) wordt synchroon aangeroepen, bezit noch parameters noch een retourwaarde en is niet-re-entrant [SWS_EcuM_02905]. Ze is gedeclareerd via de header EcuM_Externals.h [SWS_EcuM_02905]. De functie dient ertoe vroege driverinitialisaties evenals fundamentele hardwaregerelateerde startactiviteiten te leveren die dwingend noodzakelijk zijn om aansluitend de post-build-configuratiegegevens te kunnen laden [SWS_EcuM_02905].

Beperkingen en multi-core-werking

Voor de implementatie en uitvoering gelden specifieke richtlijnen en restricties:

  • Configuratieklassen: Op dit vroege tijdstip mogen uitsluitend modules worden gebruikt die configureerbaar zijn als pre-compile of link-time [SWS_EcuM_02905]. Post-build-configureerbare drivers zijn hier nog niet beschikbaar.
  • Aanroepcontext: De functie wordt door EcuM_Init op elke Core van het systeem aangeroepen [SWS_EcuM_04145].
  • Core-specifieke initialisatie: De implementatie van de callout moet waarborgen dat op de momenteel actieve core alleen die MCAL-modules worden geïnitialiseerd die daadwerkelijk op deze specifieke core worden uitgevoerd [SWS_EcuM_04145].

Retourwaarden, specifieke foutcodes of meldingen via DET of DEM zijn voor deze callout niet gedefinieerd [SWS_EcuM_02905].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie van AUTOSAR Release R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_DeterminePbConfiguration [SWS_EcuM_02906] 📄 PDF

const EcuM_ConfigType* EcuM_DeterminePbConfiguration (void);

This callout should evaluate some condition, like port pin or NVRAM value, to determine which post-build configuration shall be used in the remainder of the startup process. It shall load this configuration data into a piece of memory that is accessible by all BSW modules and shall return a pointer to the EcuM post-build configuration as a base for all BSW module post-build configrations.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 8491e826e02d Herkomst Open vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De functie EcuM_DeterminePbConfiguration ([SWS_EcuM_02906]) is een synchrone callout van de ECU State Manager, die beschikbaar wordt gesteld via het headerbestand EcuM_Externals.h en de service-ID 0x32 heeft. De interface heeft geen ingangs-, uitgangs- of in-/uitgangsparameters ([SWS_EcuM_02906]). Het centrale doel ervan is om tijdens het opstartproces aan de hand van hardware- of geheugencondities te bepalen welke post-build-configuratierecord voor het verdere verloop van de systeemstart moet worden gebruikt ([SWS_EcuM_02906]).

Voor het bepalen van de configuratie dient de callout externe of residente criteria zoals de status van een poortpin of een waarde in het NVRAM te evalueren ([SWS_EcuM_02906]). Vervolgens moet de functie deze configuratiegegevens laden in een geheugensegment waartoe alle BSW-modules toegang hebben ([SWS_EcuM_02906]). Als retourwaarde levert zij een pointer van het type const EcuM_ConfigType* naar de EcuM-post-build-configuratie op ([SWS_EcuM_02906]). Deze pointer vormt het gemeenschappelijke uitgangspunt voor de gehele BSW, aangezien de structuur pointers bevat naar de respectieve post-build-configuraties van alle overige BSW-modules ([SWS_EcuM_02906]).

Wat betreft het aanroepgedrag is de functie gespecificeerd als synchroon en niet-re-entrant (Non Reentrant) ([SWS_EcuM_02906]). Specifieke foutcodes, bijzondere foutretourwaarden en interfaces naar DET of DEM zijn voor deze callout niet gedefinieerd ([SWS_EcuM_02906]). Het mag daarom gelden als een interpretatie van de voorschriften dat een applicatiespecifieke callout-implementatie fouttoestanden zelfstandig moet afhandelen, aangezien het ontbreken van een geldige configuratiepointer vermoedelijk het ordentelijk opstarten van de afhankelijke BSW-modules zou verhinderen. Vraag Q-b9487647fb39a2e2 (open)

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie AUTOSAR CP R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_AL_DriverInitOne [SWS_EcuM_02907] 📄 PDF

void EcuM_AL_DriverInitOne (void);

This callout shall provide driver initialization and other hardware-related startup activities in case of a power on reset.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 1a4bc344c682 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en semantiek

De functie EcuM_AL_DriverInitOne is een callout-functie van de ECU-toestandsmanager (EcuM), die beschikbaar wordt gesteld via het headerbestand EcuM_Externals.h [SWS_EcuM_02907]. Haar primaire taak bestaat erin om in het geval van een power-on-reset de initialisatie van drivers en verdere hardwaregerelateerde startactiviteiten van de besturingseenheid uit te voeren [SWS_EcuM_02907]. Aangezien het om een callout gaat, zal de concrete implementatie van de hardware- en driverinitialisatie vermoedelijk plaatsvinden door de desbetreffende systeemintegrator. Vraag Q-e22baf2fa31cf075 (open)

De interface bezit de C-signatuur void EcuM_AL_DriverInitOne (void) en is toegewezen aan service-ID 0x33 [SWS_EcuM_02907]. Ze accepteert geen enkele ingangsparameter en levert evenmin een retourwaarde op aan de aanroeper [SWS_EcuM_02907].

Gelijktijdigheid en beperkingen

Voor de aanroep en het runtimegedrag gelden conform [SWS_EcuM_02907] de volgende randvoorwaarden:

  • Synchroniciteit: De uitvoering geschiedt synchroon (Synchronous), zodat de aanroeper wacht op de voltooiing van de startactiviteiten.
  • Re-entrantie: De functie is gedefinieerd als niet-re-entrant (Non Reentrant); een gelijktijdige of onderbrekende meervoudige aanroep is niet toegestaan.
  • Aanroepcontext: De activering is uitsluitend gespecificeerd voor de initialisatiefase direct na een power-on-reset.

Foutafhandeling

Aangezien EcuM_AL_DriverInitOne het retourtype void heeft, bestaat er op interfaceniveau geen directe terugkoppeling over het succes of het falen van de initialisatie [SWS_EcuM_02907]. Specifieke foutcodes, DET- of DEM-meldingen zijn binnen de onderhavige specificatieomvang niet gedefinieerd voor deze callout.

Deze tekst is opgesteld door een AI en baseert zich op de AUTOSAR-specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_LoopDetection [SWS_EcuM_04137] 📄 PDF

void EcuM_LoopDetection (void);

If the configuration parameter EcuMResetLoopDetection is set to true, this callout EcuM_Loop Detection is called on every startup.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: e51873f736db Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De functie EcuM_LoopDetection is een callout van de ECU State Manager met service-ID 0x4B, die via het headerbestand EcuM_Externals.h beschikbaar wordt gesteld [SWS_EcuM_04137].

Gebruik en aanroepcontext

Zolang de configuratieparameter EcuMResetLoopDetection op true staat, wordt deze callout bij elke opstart (startup) synchroon aangeroepen [SWS_EcuM_04137]. De functie heeft noch ingangs-, noch in-/uitgangs-, noch uitgangsparameters en levert geen retourwaarde op (signatuur: void EcuM_LoopDetection (void)) [SWS_EcuM_04137].

Gelijktijdigheid en beperkingen

De uitvoering van EcuM_LoopDetection is gespecificeerd als synchroon en niet-reentrant (Non Reentrant) [SWS_EcuM_04137]. Aangezien het om een callout gaat, is de concrete implementatie van de lusdetectie doorgaans de verantwoordelijkheid van de integrator of gebruiker, om herhaalde reset-lussen bij de systeemstart te detecteren.

Deze gebruiksinstructie is automatisch gegenereerd op basis van de AUTOSAR-specificaties.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_OnGoOffOne [SWS_EcuM_02916] 📄 PDF

void EcuM_OnGoOffOne (void);

This call allows the system designer to notify that the GO OFF I state is about to be entered.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: ee988344d1c4 Herkomst Open vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik

De functie EcuM_OnGoOffOne dient ertoe om het bereiken van de systeemtoestand GO OFF I aan te kondigen en de systeemontwerper de mogelijkheid te bieden om direct vóór de overgang passende maatregelen te nemen [SWS_EcuM_02916]. De functie wordt synchroon uitgevoerd, verwacht geen overdrachtsparameters (noch in noch inout) en levert geen retourwaarde op (void) [SWS_EcuM_02916]. Aangezien de interface via het headerbestand EcuM_Externals.h wordt gedeclareerd, betreft het begrijpelijkerwijs een gebruikersspecifieke callout-functie die in de integratiecode wordt geïmplementeerd [SWS_EcuM_02916]. Vraag Q-93de53c47a5a6142 (open)

Foutafhandeling

In de specificatie van EcuM_OnGoOffOne zijn noch ontwikkelingsfouten (DET) noch productiefouten (DEM) of specifieke fouteretourwaarden vermeld [SWS_EcuM_02916]. Hieruit kan worden afgeleid dat de aanroeper geen gestandaardiseerd foutbeheer verwacht en dat eventuele uitzonderingsgevallen binnen de gebruikersspecifieke implementatie autonoom moeten worden afgehandeld [SWS_EcuM_02916].

Gelijktijdigheid en beperkingen

Voor de aanroepcontext en het runtimegedrag zijn de volgende eigenschappen vastgelegd [SWS_EcuM_02916]:

  • Re-entrantie: De functie is gespecificeerd als niet-re-entrant (Non Reentrant) en mag geenszins parallel of genest worden aangeroepen [SWS_EcuM_02916].
  • Synchroniciteit: De semantiek is strikt synchroon (Synchronous), zodat de aanroeper wacht op de volledige terugkeer van de functie [SWS_EcuM_02916].
  • Service-ID: De service wordt intern vertegenwoordigd door de hexadecimale identifier 0x3C [SWS_EcuM_02916].

Vanwege het synchrone gedrag en de ophanden zijnde overgang naar de toestand GO OFF I mag worden aangenomen dat blokkerende operaties vermeden moeten worden om het uitschakel- resp. overgangsproces niet ontoelaatbaar te vertragen [SWS_EcuM_02916]. Vraag Q-93f5e23c581f0c38 (open)

Deze gebruiksinstructie is gegenereerd door een AI op basis van de specificatie AUTOSAR CP R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_OnGoOffTwo [SWS_EcuM_02917] 📄 PDF

void EcuM_OnGoOffTwo (void);

This call allows the system designer to notify that the GO OFF II state is about to be entered.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: e613bc195292 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone functie EcuM_OnGoOffTwo dient volgens de specificatie om het voor de systeemontwerper mogelijk te maken de melding te ontvangen dat de toestand GO OFF II direct aanstaande is [SWS_EcuM_02917]. De aanroep geschiedt parameterloos zonder in-, inout- of out-parameters en levert geen retourwaarde op aan de aanroeper [SWS_EcuM_02917].

Wat betreft de uitvoeringscontext en de concurrente uitvoering is de interface voorzien van het service-ID 0x3D en gespecificeerd als niet-re-entrant (Non Reentrant) [SWS_EcuM_02917]. Ze wordt beschikbaar gesteld via de header EcuM_Externals.h [SWS_EcuM_02917]. Interpretatie: Aangezien de declaratie in EcuM_Externals.h ligt en dient voor de notificatie van de systeemontwerper, zal de functie vermoedelijk geconcipieerd zijn als een synchrone callout van het regeleenheidbeheer, die vóór de overgang naar de toestand GO OFF II wordt aangeroepen. Vraag Q-bb0ae6e4632de827 (open)

Vanwege de eigenschap als niet-re-entrante interface mag de aanroep niet parallel of onderbrekend worden herhaald [SWS_EcuM_02917]. Specifieke foutcodes, terugmeldingen aan DET of DEM alsmede afzonderlijke foutafhandelingsmechanismen zijn niet gedefinieerd in de specificatieomvang [SWS_EcuM_02917].

Deze tekst is gegenereerd door een AI op basis van de specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_AL_SwitchOff [SWS_EcuM_02920] 📄 PDF

void EcuM_AL_SwitchOff (void);

This callout shall take the code for shutting off the power supply of the ECU. If the ECU cannot unpower itself, a reset may be an adequate reaction.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 0b4004b6930f Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik

De callout-functie EcuM_AL_SwitchOff maakt deel uit van de module ECU State Manager (EcuM) en dient om de gebruikersspecifieke code voor het uitschakelen van de voedingsspanning van de ECU op te nemen [SWS_EcuM_02920]. De interface is synchroon gedefinieerd, heeft service-ID 0x3E en wordt via het headerbestand EcuM_Externals.h beschikbaar gesteld [SWS_EcuM_02920].

Volgens de specificatie accepteert de functie noch ingangs-, noch in-/uitgangs-, noch uitgangsparameters en heeft deze geen retourwaarde (void) [SWS_EcuM_02920]. Indien de hardware van de ECU zichzelf niet zelfstandig kan uitschakelen, voorziet de specificatie erin dat het activeren van een reset als passend alternatief kan dienen [SWS_EcuM_02920].

Interactie en gelijktijdigheid

De aanroep van EcuM_AL_SwitchOff vindt verplicht plaats door de module ECU Manager zodra het geselecteerde shutdown-doel OFF luidt [SWS_EcuM_04075]. Wat betreft het concurrency-gedrag is de callout vastgelegd als niet-reentrant (Non Reentrant) [SWS_EcuM_02920]. Interpretatie: Aangezien het doel van de functie het volledig scheiden van de voeding dan wel bij wijze van uitwijkmogelijkheid een reset is, vormt deze callout vermoedelijk de afsluitende stap van de uitschakelsequentie, waarna geen verdere reguliere programmauitvoering meer plaatsvindt. Vraag Q-e8a1aaa1413bbea9 (open)

Foutafhandeling

Voor de callout zijn in de specificatie noch specifieke foutcodes noch foutafhandelingsmechanismen of meldingen aan DET of DEM voorzien [SWS_EcuM_02920].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie AUTOSAR CP R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_AL_Reset [SWS_EcuM_04065] 📄 PDF

void EcuM_AL_Reset (EcuM_ResetType reset);

This callout shall take the code for resetting the ECU.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: cf7a6e2e5e21 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De callout EcuM_AL_Reset dient voor de opname van de integratiespecifieke code die verantwoordelijk is voor het resetten van de ECU ([SWS_EcuM_04065]). De interface wordt via het headerbestand EcuM_Externals.h gedeclareerd en heeft service-ID 0x4C ([SWS_EcuM_04065]).

De aanroep van de functie vindt synchroon plaats en is gedefinieerd als niet-reentrant (Non Reentrant) ([SWS_EcuM_04065]). Als enige ingangsparameter wordt reset van het type EcuM_ResetType doorgegeven, die het concrete type uit te voeren reset bepaalt ([SWS_EcuM_04065]). De functie heeft geen retourwaarde (void) en beschikt niet over parameters voor uitvoer of in-/uitvoer ([SWS_EcuM_04065]).

In het samenspel van de shutdown-fase is vastgelegd dat de module ECU Manager de callout EcuM_AL_Reset verplicht moet aanroepen wanneer het doel van het afsluiten op RESET is ingesteld ([SWS_EcuM_04074]). Voor de callout zijn in de specificatie noch foutcodes noch meldingen aan DET of DEM voorzien ([SWS_EcuM_04065]). Interpretatie: De callout voert vermoedelijk hardwarematige stuurcommando's uit die direct de reset van de MCU bewerkstelligen. Vraag Q-1e318404843faabd (open)

Deze gebruiksinstructie is gegenereerd door een AI op basis van de AUTOSAR-specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_EnableWakeupSources [SWS_EcuM_02918] 📄 PDF

void EcuM_EnableWakeupSources (EcuM_WakeupSourceType wakeupSource);

The ECU Manager Module calls EcuM_EnableWakeupSource to allow the system designer to notify wakeup sources defined in the wakeupSource bitfield that SLEEP will be entered and to adjust their source accordingly.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 4e41a87f2d45 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De functie EcuM_EnableWakeupSources is een synchrone callout van de ECU-manager met het service-ID 0x3F, die wordt gedeclareerd via de header EcuM_Externals.h [SWS_EcuM_02918]. Ze dient ertoe de systeemontwikkelaar erover te informeren dat de toestand SLEEP aanstaande is, zodat de in het bitveld wakeupSource (type EcuM_WakeupSourceType) aangegeven wekbronnen dienovereenkomstig kunnen worden voorbereid en ingesteld [SWS_EcuM_02918].

Gebruik en samenspel

De ECU-manager voert EcuM_EnableWakeupSources uit om de wekbronnen voor de volgende sleep-modus te configureren; dit gebeurt voor elke wekbron die in EcuMWakeupSourceMask voor de beoogde sleep-modus is geconfigureerd [SWS_EcuM_02389]. De functie heeft geen retourwaarde (void) en verwacht als invoerparameter het bitveld wakeupSource [SWS_EcuM_02918].

Gelijktijdigheid en beperkingen

  • Re-entrantie: De functie is gespecificeerd als niet-re-entrant (Non Reentrant) [SWS_EcuM_02918].
  • Synchroniciteit: De verwerking geschiedt synchroon [SWS_EcuM_02918].
  • Foutafhandeling: Binnen de specificatieomvang van de interface zijn geen specifieke DET- of DEM-foutmeldingen gedefinieerd [SWS_EcuM_02918].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de AUTOSAR-specificatieversie R20-11.

functie EcuM_GenerateRamHash [SWS_EcuM_02919] 📄 PDF

void EcuM_GenerateRamHash (void);

see EcuM_CheckRamHash

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: ce82c127dbe0 Herkomst Open vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De functie EcuM_GenerateRamHash dient voor het genereren van een RAM-controlewaarde in de context van de ECU State Manager, waarbij de specificatie wat betreft de werking verwijst naar EcuM_CheckRamHash [SWS_EcuM_02919]. De gegenereerde controlewaarde dient vermoedelijk voor de latere integriteitscontrole van het werkgeheugen in samenhang met slaap- of rusttoestanden. Vraag Q-7f316b389e1609c0 (open)

Gebruik en interface

De service heeft het service-ID 0x40 en de signatuur void EcuM_GenerateRamHash(void) [SWS_EcuM_02919]. De functie bezit noch invoer-, uitvoer-, noch invoer-/uitvoerparameters en levert geen retourwaarde op. De uitvoering geschiedt synchroon.

Gelijktijdigheid en beperkingen

De functie is gespecificeerd als niet-re-entrant (Non Reentrant) [SWS_EcuM_02919]. Ze mag bijgevolg niet onderbrekend of parallel vanuit meerdere contexten worden aangeroepen. De declaratie wordt beschikbaar gesteld via het headerbestand EcuM_Externals.h [SWS_EcuM_02919]. Interpretatie: Door de definitie in EcuM_Externals.h zal het vermoedelijk gaan om een gebruikersspecifiek te implementeren callout, die door de ECU State Manager op een geschikt tijdstip in het toestandsverloop wordt aangeroepen. Vraag Q-2f53f1a19cee079c (open)

Foutafhandeling

Voor EcuM_GenerateRamHash zijn in [SWS_EcuM_02919] geen specifieke foutcodes en noch DET- noch DEM-meldingen gedefinieerd.

Deze gebruiksinstructie is geautomatiseerd opgesteld op basis van de specificatie van de module EcuM.

functie EcuM_SleepActivity [SWS_EcuM_02928] 📄 PDF

void EcuM_SleepActivity (void);

This callout is invoked periodically in all reduced clock sleep modes. It is explicitely allowed to poll wakeup sources from this callout and to call wakeup notification functions to indicate the end of the sleep state to the ECU State Manager.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 331d24f7a327 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepcontext

De functie EcuM_SleepActivity vormt een callout van de ECU State Manager die in het headerbestand EcuM_Externals.h met de service-ID 0x41 beschikbaar wordt gesteld [SWS_EcuM_02928]. De aanroep vindt periodiek plaats in alle slaapmodi met gereduceerde processorklok (reduced clock sleep modes) [SWS_EcuM_02928]. De functie heeft de signatuur void EcuM_SleepActivity(void), werkt synchroon en accepteert invoer-, uitvoer- noch in-/uitvoerparameters [SWS_EcuM_02928].

Functionele taken en wisselwerking

Het doel van deze callout is het uitvoeren van activiteiten tijdens de slaaptoestand: het is expliciet voorzien en toegestaan om binnen EcuM_SleepActivity wekbronnen cyclisch te pollen (polling) [SWS_EcuM_02928]. Bovendien mogen direct vanuit de callout wek-notificatiefuncties worden aangeroepen om aan de ECU State Manager het beëindigen van de slaaptoestand te melden [SWS_EcuM_02928].

Gelijktijdigheid en beperkingen

De interface is gespecificeerd als niet-re-entrant (Non Reentrant) [SWS_EcuM_02928]. Aangezien de callout geen retourwaarde oplevert en er geen foutparameters zijn gedefinieerd, vindt via de functieschnittstelle geen directe foutafhandeling plaats via foutcodes of foutmelders zoals DET of DEM [SWS_EcuM_02928].

Deze tekst is door een AI gegenereerd op basis van de AUTOSAR-specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_StartCheckWakeup [SWS_EcuM_04096] 📄 PDF

void EcuM_StartCheckWakeup (EcuM_WakeupSourceType WakeupSource);

This API is called by the ECU Firmware to start the CheckWakeupTimer for the corresponding WakeupSource. If EcuMCheckWakeupTimeout > 0 the CheckWakeupTimer for the Wakeup Source is started. If EcuMCheckWakeupTimeout <= 0 the API call is ignored by the EcuM.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: adada8898a5f Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepcontext

De synchrone interface EcuM_StartCheckWakeup wordt volgens [SWS_EcuM_04096] aangeroepen door de ECU-firmware om de timer CheckWakeupTimer voor een specifieke wekbron te starten. Hiervoor wordt aan de functie de parameter WakeupSource van het type EcuM_WakeupSourceType doorgegeven. Deze heeft geen retourwaarde (void) en wordt via het headerbestand EcuM_Externals.h beschikbaar gesteld.

Verloop en voorwaarden

De uitvoering van de functie hangt af van de configuratie van de wekbron [SWS_EcuM_04096]:

  • Als voor de betreffende wekbron EcuMCheckWakeupTimeout > 0 is geconfigureerd, wordt de bijbehorende CheckWakeupTimer gestart.
  • Geldt EcuMCheckWakeupTimeout <= 0, dan wordt de functieaanroep door de EcuM volledig genegeerd.

Gelijktijdigheid en foutafhandeling

De functie is gespecificeerd als niet-reentrant (Non Reentrant) [SWS_EcuM_04096]. De aanroeper moet er derhalve voor zorgen dat aanroepen voor dezelfde of andere wekbronnen niet gelijktijdig plaatsvinden. Specifieke foutcodes en meldingen aan DET of DEM zijn voor deze aanroep niet gespecificeerd; een aanroep bij een niet-positieve time-out blijft volgens de specificatie zonder gevolgen, wat vermoedelijk mag worden geïnterpreteerd als het tolerant opvangen van irrelevante timercontroles [SWS_EcuM_04096]. Vraag Q-19d98b03d3ee7504 (open)

Deze gebruiksinstructie is gegenereerd door een AI op basis van de specificatie AUTOSAR R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_CheckWakeup [SWS_EcuM_02929] 📄 PDF

void EcuM_CheckWakeup (EcuM_WakeupSourceType wakeupSource);

This callout is called by the EcuM to poll a wakeup source. It shall also be called by the ISR of a wakeup source to set up the PLL and check other wakeup sources that may be connected to the same interrupt.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 9c2d9feb4e41 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De callout EcuM_CheckWakeup dient voor de controle en polling van wekbronnen alsmede voor de configuratie van de PLL na een wekgebeurtenis [SWS_EcuM_02929]. De functie wordt via het headerbestand EcuM_Externals.h beschikbaar gesteld en heeft service-ID 0x42 [SWS_EcuM_02929].

Aanroepcontext en semantiek

  • Signatuur en parameters: De functie wordt synchroon uitgevoerd (Synchronous), heeft geen retourwaarde en verwacht als ingangsparameter wakeupSource van het type EcuM_WakeupSourceType [SWS_EcuM_02929].
  • Aanroeper: De callout wordt aangeroepen door de EcuM om een wekbron cyclisch te pollen. Bovendien moet deze verplicht worden aangeroepen vanuit de interrupt-service-routine (ISR) van een wekbron om de PLL in te stellen en verdere wekbronnen te controleren die aan dezelfde interrupt zijn gekoppeld [SWS_EcuM_02929].
  • Polling-lus: In de polling-sequentie roept de EcuM de callouts EcuM_SleepActivity en EcuM_CheckWakeup herhaaldelijk aan in een blokkerende lus, totdat een wekgebeurtenis als actief of gevalideerd wordt gemeld [SWS_EcuM_03020].

Beperkingen en foutafhandeling

De functie is gespecificeerd als niet-reentrant (Non Reentrant) [SWS_EcuM_02929]. Aangezien aanroepen zowel vanuit het blokkerende verloop van de polling-sequentie als vanuit ISR-contexten plaatsvinden, zal de integratie vermoedelijk moeten waarborgen dat er geen ongecoördineerde gelijktijdige aanroepen plaatsvinden. Vraag Q-8bc8f164670a0911 (open) Specifieke foutcodes of foutmeldingen aan DET of DEM zijn voor deze callout niet gedefinieerd.

Deze gebruiksinstructie is automatisch gegenereerd op basis van de AUTOSAR-specificatie.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_EndCheckWakeup [SWS_EcuM_02927] 📄 PDF

void EcuM_EndCheckWakeup (EcuM_WakeupSourceType WakeupSource);

This API is called by any SW Module whose wakeup source is checked asynchronously (e.g. asynchronous Can Trcv Driver) and the Check of the Wakeup returns a negative Result (no Wakeup by this Source). The API cancels the CheckWakeupTimer for the WakeupSource. If the correponding CheckWakeupTimer is canceled the check of this wakeup source is finished.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 22fef1b09b30 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone functie EcuM_EndCheckWakeup wordt aangeroepen door softwaremodules wanneer de asynchrone controle van een wekbron (zoals bij een asynchrone CAN-transceiverdriver) een negatief resultaat oplevert, oftewel wanneer er geen wekgebeurtenis door deze bron aanwezig is [SWS_EcuM_02927].

Gebruik en parameters

Via de invoerparameter WakeupSource van het type EcuM_WakeupSourceType wordt de wekbron overgedragen waarvoor de bijbehorende bewakingstimer moet worden afgebroken [SWS_EcuM_02927]. De functie levert geen retourwaarde (void) op en beschikt niet over in-/uitgangs- of uitgangsparameters [SWS_EcuM_02927].

Werking en concurrency

  • De functie breekt de timer CheckWakeupTimer voor de gespecificeerde wekbron af; met het afbreken van deze timer geldt de controle van de wekbron als voltooid [SWS_EcuM_02927].
  • De interface is gedefinieerd als synchroon en niet-re-entrant (Non Reentrant) [SWS_EcuM_02927].
  • De declaratie wordt ter beschikking gesteld via het headerbestand EcuM_Externals.h [SWS_EcuM_02927].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie van AUTOSAR R20-11.

functie EcuM_CheckRamHash [SWS_EcuM_02921] 📄 PDF

uint8 EcuM_CheckRamHash (void);

This callout is intended to provide a RAM integrity test. The goal of this test is to ensure that after a long SLEEP duration, RAM contents is still consistent. The check does not need to be exhaustive since this would consume quite some processing time during wakeups. A well designed check will execute quickly and detect RAM integrity defects with a sufficient probability. This specification does not make any assumption about the algorithm chosen for a particular ECU. The areas of RAM which will be checked have to be chosen carefully. It depends on the check algorithm itself and the task structure. Stack contents of the task executing the RAM check e.g. very likely cannot be checked. It is good practice to have the hash generation and checking in the same task and that this task is not preemptible and that there is only little activity between hash generation and hash check. The RAM check itself is provided by the system designer. In case of applied multi core and existence of Satellite-Ecu M(s): this API will be called by the Master-EcuM only.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: d1c6f593ca9f Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De functie EcuM_CheckRamHash is een synchrone, niet-reentrante callout (gedeclareerd in EcuM_Externals.h) die een integriteitstest van het RAM-geheugen biedt [SWS_EcuM_02921]. De functie heeft geen parameters en retourneert een statuswaarde van het type uint8: de waarde 0 signaleert het mislukken van de test, terwijl elke andere waarde een succesvol resultaat aangeeft [SWS_EcuM_02921].

Volgens [SWS_EcuM_02863] roept de module EcuM voorafgaand aan het stoppen van de microcontroller eerst [SWS_EcuM_02919] aan en voert deze na terugkeer uit de halt-toestand EcuM_CheckRamHash uit. Doel is de verificatie dat de RAM-inhoud ook na een lange SLEEP-fase consistent is gebleven [SWS_EcuM_02921].

Voor de implementatie en het verloop gelden de volgende randvoorwaarden:

  • Algoritme en controlegebied: De controlefunctie wordt door de systeemontwerper geleverd; deze hoeft niet uitputtend te zijn, maar moet snel worden uitgevoerd en fouten met voldoende zekerheid detecteren [SWS_EcuM_02921]. De te controleren gebieden moeten zorgvuldig worden gekozen; stack-inhoud van de uitvoerende task kan over het algemeen niet worden gecontroleerd [SWS_EcuM_02921].
  • Task-structuur: Als best practice geldt het uitvoeren van hash-generatie en -controle binnen dezelfde, niet-onderbreekbare task met minimale tussenliggende activiteit [SWS_EcuM_02921].
  • Multi-core: Bij meerdere processorkernen met satelliet-EcuM's wordt de callout uitsluitend door de master-EcuM aangeroepen en controleert deze alleen gegevens binnen diens bereik [SWS_EcuM_02863], [SWS_EcuM_02921].

Specifieke DET- of DEM-meldingen zijn voor deze callout niet gedefinieerd; de foutreactie bij retourwaarde 0 ligt vermoedelijk ter beoordeling van het overkoepelende systeemontwerp [SWS_EcuM_02921]. Vraag Q-473ef8617db29fe3 (open)

Deze tekst is opgesteld door een AI en is gebaseerd op de specificatie AUTOSAR Classic R20-11.

functie EcuM_DisableWakeupSources [SWS_EcuM_02922] 📄 PDF

void EcuM_DisableWakeupSources (EcuM_WakeupSourceType wakeupSource);

The ECU Manager Module calls EcuM_DisableWakeupSources to set the wakeup source(s) defined in the wakeupSource bitfield so that they are not able to wake the ECU up.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 474e253af285 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone interface EcuM_DisableWakeupSources met de service-ID 0x44 dient ertoe de in de bitveldparameter wakeupSource van het type EcuM_WakeupSourceType gedefinieerde wekbronnen zo te configureren dat deze de ECU niet meer kunnen wekken [SWS_EcuM_02922]. De functiesignatuur luidt void EcuM_DisableWakeupSources (EcuM_WakeupSourceType wakeupSource) [SWS_EcuM_02922].

Voor de aanroepcontext en de integratie gelden volgens de specificatie de volgende eigenschappen:

  • Aanroeper en header: De functie wordt aangeroepen door de module ECU Manager en beschikbaar gesteld via het headerbestand EcuM_Externals.h [SWS_EcuM_02922].
  • Parameters en retourwaarden: Als enige invoerparameter wordt het bitveld wakeupSource overgedragen. De functie heeft noch in-/uitgangs- noch uitgangsparameters en levert geen retourwaarde (void) terug [SWS_EcuM_02922].
  • Uitvoeringssemantiek en concurrency: De verwerking vindt synchroon plaats. Bovendien is de functie gespecificeerd als niet-re-entrant (Non Reentrant), zodat gelijktijdige of geneste aanroepen moeten worden vermeden [SWS_EcuM_02922].

Wat betreft de foutafhandeling bevat de specificatie voor deze functieaanroep noch specifieke foutcodes noch notificaties aan de DET of DEM [SWS_EcuM_02922].

Deze tekst is gegenereerd door een AI op basis van de specificatie AUTOSAR CP R20-11.

functie EcuM_AL_DriverRestart [SWS_EcuM_02923] 📄 PDF

void EcuM_AL_DriverRestart (void);

This callout shall provide driver initialization and other hardware-related startup activities in the wakeup case.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: f02a8bab5708 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De callout EcuM_AL_DriverRestart wordt via het headerbestand EcuM_Externals.h gedeclareerd en heeft service-ID 0x45 [SWS_EcuM_02923]. De functie heeft de signatuur void EcuM_AL_DriverRestart (void), vereist geen overdrachtsparameters en levert geen retourwaarde op [SWS_EcuM_02923]. Het doel van deze interface is om bij het ontwaken (wake-up case) de driverinitialisatie en verdere hardwaregerelateerde activiteiten tijdens de opstartfase te verzorgen [SWS_EcuM_02923].

Voor de integratie en het samenspel met de module EcuM gelden bindende voorschriften:

  • Voor de herinitialisatie tijdens fase WakeupRestart moet de integrator een restart-blok in de integratiecode voor EcuM_AL_DriverRestart opnemen, die de geconfigureerde lijst EcuMDriverRestartList gebruikt [SWS_EcuM_02947] [SWS_EcuM_02923].
  • De lijst EcuMDriverRestartList kan drivers bevatten die fungeren als wekbronnen (wakeup sources) [SWS_EcuM_02562]. In dat geval moet EcuM_AL_DriverRestart het activeringsmechanisme van de callback voor wekdetectie (“wakeup detected”) van deze drivers weer op scherp zetten (re-arm) [SWS_EcuM_02562].

Wat betreft het runtime-gedrag is de functie gedefinieerd als synchroon en niet-reentrant [SWS_EcuM_02923]. Omdat het om toepassingsspecifieke integratiecode gaat, definieert de specificatie op deze interface geen eigen foutcodes en geen gestandaardiseerde meldingen aan DET of DEM.

Deze tekst is gegenereerd door een AI. Gegevens kunnen onvolledig zijn en vervangen de officiële AUTOSAR-specificatie niet.

Implementer's Guide volgt (complexiteit I2)

functie EcuM_StartWakeupSources [SWS_EcuM_02924] 📄 PDF

void EcuM_StartWakeupSources (EcuM_WakeupSourceType wakeupSource);

The callout shall start the given wakeup source(s) so that they are ready to perform wakeup validation.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 72a2492ac382 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De callout-functie EcuM_StartWakeupSources dient ertoe de doorgegeven wekbron(nen) zodanig te starten en in bedrijf te nemen dat deze zijn voorbereid op de daaropvolgende uitvoering van de wekvalidatie (wakeup validation) [SWS_EcuM_02924].

Gebruik en aanroepcontext

De functie is gespecificeerd als een synchrone aanroep met service-ID 0x46, heeft geen retourwaarde (void) en wordt via het headerbestand EcuM_Externals.h beschikbaar gesteld [SWS_EcuM_02924].

  • Parameter wakeupSource (in): Geeft de te starten wekbron of een bitmasker van meerdere wekbronnen van het type EcuM_WakeupSourceType door aan de callout-functie [SWS_EcuM_02924]. Aanvullende in- of uitgangsparameters (inout/out) bestaan niet [SWS_EcuM_02924].

Gelijktijdigheid en beperkingen

Wat betreft de uitvoeringsomgeving is EcuM_StartWakeupSources geclassificeerd als niet-reentrant (Non Reentrant) [SWS_EcuM_02924]. Aanroepers moeten er daarom voor zorgen dat de functie niet gelijktijdig vanuit onderbrekende interrupt-service-routines of parallelle tasks wordt uitgevoerd.

Samenspel en foutafhandeling

Aangezien EcuM_StartWakeupSources als callout is gedeclareerd, is de hardwarematige activering van de betreffende bronnen de verantwoordelijkheid van de toepassingsspecifieke implementatie door de systeemintegrator [SWS_EcuM_02924]. De specificatie voorziet voor deze interface noch in foutmeldingen aan DET of DEM, noch in specifieke foutretourwaarden [SWS_EcuM_02924]; eventuele fouttoestanden bij het starten van de bronnen worden daarom vermoedelijk integratiespecifiek binnen de callout opgevangen. Vraag Q-b595e7175c34a831 (open)

Deze tekst is gegenereerd door een AI en is gebaseerd op de specificatie van AUTOSAR R20-11.

Implementer's Guide volgt (complexiteit I2)

functie EcuM_CheckValidation [SWS_EcuM_02925] 📄 PDF

void EcuM_CheckValidation (EcuM_WakeupSourceType wakeupSource);

This callout is called by the EcuM to validate a wakeup source. If a valid wakeup has been detected, it shall be reported to EcuM via EcuM_ValidateWakeupEvent().

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: c36dd6936c23 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De functie EcuM_CheckValidation dient als callout-interface van de ECU State Manager voor het controleren van een wekbron [SWS_EcuM_02925]. De EcuM roept deze functie aan om vast te stellen of een gedetecteerd wekevenement geldig is [SWS_EcuM_02925].

Gebruik

De callout heeft het service-ID 0x47 en wordt via het headerbestand EcuM_Externals.h ter beschikking gesteld [SWS_EcuM_02925]. Als overdrachtsparameter dient wakeupSource van het type EcuM_WakeupSourceType, waarmee de te valideren wekbron wordt geïdentificeerd [SWS_EcuM_02925]. De functie levert geen retourwaarde op (void) en heeft geen uitgangs- of in-/uitgangsparameters [SWS_EcuM_02925]. De uitvoering verloopt synchroon [SWS_EcuM_02925].

Foutafhandeling

Specifieke foutcodes, retourwaarden bij fouten of meldingen aan de DET of DEM zijn voor deze callout niet gedefinieerd in de specificatie.

Gelijktijdigheid en beperkingen

Met betrekking tot concurrency is EcuM_CheckValidation vastgelegd als niet-re-entrant (Non Reentrant) [SWS_EcuM_02925]. De aanroepende context van de EcuM moet waarborgen dat er geen parallelle of geneste aanroepen voor dezelfde of verschillende wekbronnen plaatsvinden.

Samenspel

Als bij de uitvoering een geldig wekevenement is gedetecteerd, moet dit verplicht via de functieaanroep EcuM_ValidateWakeupEvent() aan de EcuM worden teruggemeld [SWS_EcuM_02925]. Interpretatie: De apparaatspecifieke logica voor het controleren van de hardware en de beslissing over de geldigheid wordt vermoedelijk volledig in de integratiecode geïmplementeerd. Vraag Q-08061e09b474728d (open)

Deze gebruiksinstructie is automatisch gegenereerd op basis van de specificatie AUTOSAR CP R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_StopWakeupSources [SWS_EcuM_02926] 📄 PDF

void EcuM_StopWakeupSources (EcuM_WakeupSourceType wakeupSource);

The callout shall stop the given wakeup source(s) after unsuccessful wakeup validation.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 63994628bd66 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De callout-functie EcuM_StopWakeupSources van de module EcuM (Classic Platform) dient ertoe de overgedragen wekbron(nen) na een niet-succesvolle wekvalidatie gericht te stoppen [SWS_EcuM_02926]. De declaratie van deze synchrone interface is beschikbaar via het headerbestand EcuM_Externals.h en heeft service-ID 0x48 [SWS_EcuM_02926].

Gebruik en interfaceparameters:

  • Ingangsparameter: Als enige parameter wordt wakeupSource van het type EcuM_WakeupSourceType doorgegeven, die de te stoppen wekbron(nen) specificeert [SWS_EcuM_02926].
  • Retourwaarde en in-/uitgangen: Er bestaan noch in-/uitgangsparameters (inout) noch uitgangsparameters (out) [SWS_EcuM_02926]. De functie levert geen retourwaarde (void) terug aan de aanroeper [SWS_EcuM_02926].
  • Uitvoeringsgedrag: De functieafhandeling is vastgelegd als synchroon (Synchronous) [SWS_EcuM_02926].

Concurrency en foutafhandeling:

De interface is gespecificeerd als niet-reentrant (Non Reentrant) [SWS_EcuM_02926]. Parallelle aanroepen zijn daarom niet toegestaan en moeten door de aanroeper worden vermeden. De specificatie definieert voor deze callout noch specifieke foutcodes, noch retourwaarden of notificaties aan de Default Error Tracer (DET)- of de Diagnostic Event Manager (DEM)-module [SWS_EcuM_02926]. Interpretatie: Aangezien de functie als externe callout via EcuM_Externals.h beschikbaar wordt gesteld, berusten de hardwaregerelateerde deactivering van de betreffende wekhardware en de interne foutafhandeling bij de gebruikersspecifieke implementatie. Vraag Q-b537c805bed751ab (open)

Deze tekst is gegenereerd door een AI op basis van de specificatie R20-11.

Implementer's Guide volgt (complexiteit I1)

functie EcuM_MainFunction [SWS_EcuM_02837] 📄 PDF

void EcuM_MainFunction (void);

The purpose of this service is to implement all activities of the ECU State Manager while the OS is up and running.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 9ac46d3f83ab Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepcontext

De functie EcuM_MainFunction heeft de signatuur void EcuM_MainFunction(void) met de service-ID 0x18 en wordt beschikbaar gesteld via het headerbestand SchM_EcuM.h [SWS_EcuM_02837]. Zij accepteert geen parameters en levert geen retourwaarde op [SWS_EcuM_02837]. Haar taak bestaat erin alle activiteiten van de ECU State Manager af te handelen terwijl het besturingssysteem draait („OS is up and running”) [SWS_EcuM_02837]. De functie wordt daarbij vermoedelijk typisch periodiek aangeroepen door de scheduler (interpretatie: integratie via SchM_EcuM.h). Vraag Q-ca471f22bdb1f11d (open)

Samenspel en taken

Tijdens bedrijf neemt EcuM_MainFunction centrale coördinatietaken op zich:

  • Validatie van wakeup-bronnen: Voor zover na afronding van de WakeupRestart-sequentie een lijst van wakeup-source-kandidaten voorliegt, valideert de EcuM-module deze kandidaten binnen de EcuM_MainFunction [SWS_EcuM_02539].
  • Verstrijken van de validatietime-out: Verstrijkt de validatietime-out voor een openstaande wakeup-gebeurtenis, dan stelt de functie via een OR-koppeling het bijbehorende bit in de interne variabele voor verstreken wakeup-gebeurtenissen in [SWS_EcuM_04081]. Bovendien stelt zij het BSW-management op de hoogte via BswM_EcuM_Current_Wakeup met een EcuM_WakeupSourceType-bitmasker van de gebeurtenis en de status ECUM_WKSTATUS_EXPIRED [SWS_EcuM_04082].
  • Alarm Clock Service: Is de dienst via EcuMAlarmClockPresent aanwezig, dan actualiseert de EcuM_MainFunction de Alarm Clock Timer [SWS_EcuM_04002].

Beperkingen en instanties

Als wezenlijke randvoorwaarde voor multicore- resp. multi-instantie-architecturen geldt dat EcuM_MainFunction in alle instanties van de EcuM moet worden uitgevoerd [SWS_EcuM_04011].

Deze gebruiksinstructie is automatisch gegenereerd op basis van de specificatie R20-11.

Implementer's Guide volgt (complexiteit I2)

type EcuM_ConfigType [SWS_EcuM_04038] 📄 PDF

A pointer to such a structure shall be provided to the ECU State Manager initialization routine for configuration.

type EcuM_RunStatusType [SWS_EcuM_04120] 📄 PDF

Result of the Run Request Protocol sent to BswM

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 94aa8a70183e Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Het gegevenstype EcuM_RunStatusType is gedefinieerd als uint8 en wordt beschikbaar gesteld via de header EcuM.h ([SWS_EcuM_04120]). Het dient voor de formele representatie van de actuele status van het run-request-protocol in de ECU-Manager en wordt als resultaat verzonden naar de Basic Software Mode Manager (BswM) ([SWS_EcuM_04120]).

Het toegestane waardebereik omvat drie discrete toestanden ([SWS_EcuM_04120]):

  • ECUM_RUNSTATUS_UNKNOWN (waarde 0): Representeert een onbekende status en dient tegelijkertijd als gedefinieerde initialisatiewaarde (Init Value).
  • ECUM_RUNSTATUS_REQUESTED (waarde 1): Markeert de toestand dat de RUN-status actief is aangevraagd door de ECU-Manager.
  • ECUM_RUNSTATUS_RELEASED (waarde 2): Signaleert dat de RUN-status door de ECU-Manager weer is vrijgegeven.

Wat betreft de wisselwerking verplicht eis [SWS_EcuM_04121] de ECU-Manager-module ertoe om de BswM bindend te informeren over de actuele toestand van het run-request-protocol aan de hand van de in EcuM_RunStatusType vermelde statuswaarden. Interpretatie: Aangezien de eis geen specifieke functiesignatuur of aanroepconventie voor de berichtenstroom noemt, zal de statusinformatie doorgaans via een interne notificatiefunctie of callback-interface aan de BswM-module worden doorgegeven. Vraag Q-e136b90c2edbc29c (open) Specifieke foutcodes, DET- of DEM-meldingen en bijzondere re-entrancy-voorwaarden zijn voor dit elementaire gegevenstype in de voorliggende eisen niet voorzien.

Deze gebruiksinstructie is geautomatiseerd opgesteld op basis van de specificatie van AUTOSAR Classic R20-11.

Implementer's Guide volgt (complexiteit I1)

type EcuM_WakeupSourceType [SWS_EcuM_04040] 📄 PDF

EcuM_WakeupSourceType defines a bitfield with 5 pre-defined positions (see Range). The bitfield provides one bit for each wakeup source. In WAKEUP, all bits cleared indicates that no wakeup source is known. In STARTUP, all bits cleared indicates that no reason for restart or reset is known. In this case, ECUM_WKSOURCE_RESET shall be assumed.

type EcuM_WakeupStatusType [SWS_EcuM_04041] 📄 PDF

The type describes the possible states of a wakeup source.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 99623532d1ab Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Het datatype EcuM_WakeupStatusType beschrijft volgens [SWS_EcuM_04041] de mogelijke toestanden van een wekbron (wakeup source) in de ECU State Manager. Het type is afgeleid van het basistype uint8 en wordt via de header EcuM.h beschikbaar gesteld [SWS_EcuM_04041].

Het waardebereik geeft de levenscyclus van een wekgebeurtenis weer via vier toestanden [SWS_EcuM_04041]:

  • ECUM_WKSTATUS_NONE (waarde 0): Er is geen actieve wekgebeurtenis gedetecteerd [SWS_EcuM_04041].
  • ECUM_WKSTATUS_PENDING (waarde 1): Er is een wekgebeurtenis gedetecteerd, maar deze is nog niet gevalideerd [SWS_EcuM_04041].
  • ECUM_WKSTATUS_VALIDATED (waarde 2): De wekgebeurtenis is geldig en met succes bevestigd [SWS_EcuM_04041].
  • ECUM_WKSTATUS_EXPIRED (waarde 3): De wekgebeurtenis is niet tijdig gevalideerd en is bijgevolg verlopen [SWS_EcuM_04041].

Gebruik en samenspel: Het type dient als centrale statusrepresentatie voor wekbronnen. Interpretatie: Aanroepers zullen deze status vermoedelijk evalueren in het kader van statusopvragingen om te bepalen of een wekbron actief wordt gevalideerd, reeds een geldig ontwaken heeft gesignaleerd of het validatietijdsvenster heeft overschreden. Vraag Q-a3f721e8f1753eb1 (open)

Deze tekst is automatisch gegenereerd. Alle vermeldingen zijn uitsluitend gebaseerd op de specificatie-eisen van de desbetreffende release.

Implementer's Guide volgt (complexiteit I1)

type EcuM_ResetType [SWS_EcuM_04044] 📄 PDF

This type describes the reset mechanisms supported by the ECU State Manager. It can be extended by configuration.

type EcuM_StateType [SWS_EcuM_91005] 📄 PDF

ECU State Manager states.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 04e4b37b6e32 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Het type EcuM_StateType is een van uint8 afgeleid datatype dat via het headerbestand EcuM.h beschikbaar wordt gesteld en de bedrijfstoestanden van de ECU State Manager representeert [SWS_EcuM_91005]. De module EcuM is verplicht om alle in EcuM_StateType vermelde toestanden te definiëren [SWS_EcuM_02664]. Het waardebereik omvat het deeltoestandsmasker ECUM_SUBSTATE_MASK (0x0f) en de hoofdtoestanden ECUM_STATE_STARTUP (0x10), ECUM_STATE_RUN (0x32), ECUM_STATE_POST_RUN (0x33), ECUM_STATE_SHUTDOWN (0x40) en ECUM_STATE_SLEEP (0x50) [SWS_EcuM_91005].

Gebruik en samenspel

Het datatype fungeert als centrale parameter voor de toestandcommunicatie tussen de BswM en de EcuM:

  • Toestandswissel naar EcuM: Via de synchrone en reentrante functieaanroep EcuM_SetState(EcuM_StateType state) met het service-ID 0x2b informeert de BswM de EcuM-module over een toestandswissel [SWS_EcuM_04122].
  • Toestandsmelding aan BswM: De EcuM meldt de actuele toestand aan de BswM door de interface BswM_EcuM_CurrentState(EcuM_StateType State) aan te roepen [SWS_EcuM_04143].

Gelijktijdigheid, volgorde en foutafhandeling

Wat betreft de chronologische volgorde geldt het voorschrift dat een nieuwe toestand pas door de EcuM mag worden ingesteld nadat de RTE haar terugkoppeling via de bijbehorende acknowledgement-poort heeft gegeven [SWS_EcuM_04143]. Specifieke foutcodes, retourwaarden of DET-/DEM-meldingen zijn voor dit datatype in de beschikbare bronnen niet voorzien.

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie-eisen.

Implementer's Guide volgt (complexiteit I1)

type EcuM_Mode [SWS_EcuM_04107] 📄 PDF

–

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 930c9709cbac Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Het type EcuM_Mode is gedefinieerd als ModeDeclarationGroup conform [SWS_EcuM_04107] en vertegenwoordigt de centrale toestanden van de ECU State Manager. Als initiële modus is STARTUP vastgelegd. Daarnaast omvat de groep de gedefinieerde modi POST_RUN, RUN, SHUTDOWN en SLEEP [SWS_EcuM_04107].

In het systeem fungeert EcuM_Mode als typebasis voor de modusgroep currentMode binnen de service-interface EcuM_CurrentMode [SWS_EcuM_04108]. Via deze interface kan de actuele ECU-modus worden opgevraagd of via het RTE-modusmechanisme aan andere softwarecomponenten worden gesignaleerd.

Wat betreft de aanroepcontext en de concurrency bevat de specificatie van het type zelf geen expliciete beperkingen ten aanzien van reentrantie of foutcodes; het beheer van de toestandsovergangen geschiedt via de bijbehorende service-interfaces van de EcuM.

Deze opmerking is automatisch gegenereerd en is gebaseerd op AUTOSAR R20-11 specificatiegegevens.

Implementer's Guide volgt (complexiteit I1)

type currentMode [SWS_EcuM_04112] 📄 PDF

–

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: b0199fd54780 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Het element currentMode is gedefinieerd als provided-poort van de module EcuM en stelt de service-interface EcuM_CurrentMode beschikbaar voor de softwarearchitectuur [SWS_EcuM_04112]. Deze service-interface dient voor het uitlezen van de actuele ECU-modus en kapselt de modusgroep currentMode in op basis van het gegevenstype EcuM_Mode [SWS_EcuM_04108].

Tijdens het lopende systeembedrijf vindt het gebruik plaats voor het signaleren van toestandswijzigingen:

  • Aanroep en gebruik: Zodra een moduswissel optreedt, meldt de EcuM dit via RTE-moduspoorten aan softwarecomponenten (SW-C's) [SWS_EcuM_04133]. Onder de specificatie-aanname van de poortnaam currentMode en bij gebruik van de directe RTE-API wordt hiervoor de functie Rte_Switch_currentMode_currentMode( Rte_ModeType_EcuM_Mode mode) aangeroepen [SWS_EcuM_04133].
  • Parameters en retourwaarde: De parameter mode geeft de nieuw aan te nemen modus door aan de RTE [SWS_EcuM_04133]. De door de switch-API geleverde retourwaarde van het type Rte_StatusType wordt niet geëvalueerd, maar moet volgens de specificatie dwingend worden genegeerd [SWS_EcuM_04133].
  • Wisselwerking: Een softwarecomponent die over moduswijzigingen moet worden geïnformeerd, moet de modus-switch-interface EcuM_CurrentMode als required-poort opvragen [SWS_EcuM_04133].

Deze gebruiksinstructie is automatisch gegenereerd en is uitsluitend gebaseerd op de specificatie-eisen van release R20-11.

Implementer's Guide volgt (complexiteit I1)

type EcuM_ShutdownCauseType [SWS_EcuM_04045] 📄 PDF

This type describes the cause for a shutdown by the ECU State Manager. It can be extended by configuration.

type EcuM_ShutdownModeType [SWS_EcuM_04101] 📄 PDF

This data type represents the modes of the ECU Manager module.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 799a0b090179 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en waardebereik

Het gegevenstype EcuM_ShutdownModeType is gebaseerd op uint16 en wordt via het headerbestand Rte_EcuM_Type.h beschikbaar gesteld [SWS_EcuM_04101]. Het beeldt de in de ECU State Manager geconfigureerde modi af. Het waardebereik omvat:

  • de geconfigureerde sleep-modi conform EcuMSleepModeId [SWS_EcuM_04101] evenals
  • de geconfigureerde resetmodi, berekend uit de offset 256 + EcuMResetModeId [SWS_EcuM_04101].

Interactie en aanroepcontext

Het type wordt gebruikt in synchrone en re-entrante services van de ECU Manager:

  • EcuM_SelectShutdownTarget accepteert shutdownMode als invoerparameter om de concrete sleep-modus (bij doel ECUM_SHUTDOWN_TARGET_SLEEP) of het concrete resetmechanisme (bij doel ECUM_SHUTDOWN_TARGET_RESET) vast te leggen [SWS_EcuM_02822].
  • EcuM_GetShutdownTarget retourneert via een pointerparameter naar EcuM_ShutdownModeType welke geconfigureerde sleep- of resetmodus voor het actuele shutdown-doel is geselecteerd [SWS_EcuM_02824].
  • EcuM_GetLastShutdownTarget levert de shutdown-modus van de voorafgaande shutdown-procedure op via een uitvoerparameter [SWS_EcuM_02825]. Via de service-interface EcuM_ShutdownTarget staat deze functionaliteit ook ter beschikking van softwarecomponenten (SW-C's) [SWS_EcuM_03011].

Foutafhandeling en randvoorwaarden

De functies retourneren Std_ReturnType. Wordt bijvoorbeeld een NULL-pointer aan EcuM_GetShutdownTarget of EcuM_GetLastShutdownTarget doorgegeven, dan mislukt de aanroep met E_NOT_OK [SWS_EcuM_02824], [SWS_EcuM_02825]. Bij een succesvolle uitvoering melden de services E_OK [SWS_EcuM_02822], [SWS_EcuM_03011].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie-eisen.

Implementer's Guide volgt (complexiteit I1)

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/CP_MOD_EcuM
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_EcuM@rel:R20-11#a88d8325
Content hash
a88d8325
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_ECUStateManager.pdf#nameddest=SWS_EcuM_02813

Themakaart

Detailweergave

Kies een item in de inhoudsopgave.

Initialisatie en status

Returns the version information of this module.

void EcuM_GetVersionInfo (Std_VersionInfoType* versioninfo);
EcuM_Init functie

Initializes the ECU state manager and carries out the startup procedure. The function will never return (it calls StartOS)

void EcuM_Init (void);

Diensten · Get…

EcuM_GetBootTarget returns the current boot target - see EcuM_SelectBootTarget. EcuM_Get BootTarget is part of the ECU Manager Module port interface.

Std_ReturnType EcuM_GetBootTarget (EcuM_BootTargetType* target);

EcuM_GetCurrentTime returns the current value of the EcuM clock (i.e. the time since battery connect). EcuM_GetCurrentTime is part of the ECU Manager Module port interface.

Std_ReturnType EcuM_GetCurrentTime (EcuM_TimeType* time);

Gets expired wakeup events.

EcuM_WakeupSourceType EcuM_GetExpiredWakeupEvents (void);

EcuM_GetLastShutdownTarget returns the shutdown target of the previous shutdown process. EcuM_GetLastShutdownTarget is part of the ECU Manager Module port interface.

Std_ReturnType EcuM_GetLastShutdownTarget (EcuM_ShutdownTargetType* shutdownTarget, EcuM_ShutdownModeType* shutdownMode);

Gets pending wakeup events.

EcuM_WakeupSourceType EcuM_GetPendingWakeupEvents (void);

EcuM_GetShutdownCause returns the selected shutdown cause as set by EcuM_Select ShutdownCause. EcuM_GetShutdownCause is part of the ECU Manager Module port interface.

Std_ReturnType EcuM_GetShutdownCause (EcuM_ShutdownCauseType* shutdownCause);

EcuM_GetShutdownTarget returns the currently selected shutdown target as set by EcuM_ SelectShutdownTarget. EcuM_GetShutdownTarget is part of the ECU Manager Module port interface.

Std_ReturnType EcuM_GetShutdownTarget (EcuM_ShutdownTargetType* shutdownTarget, EcuM_ShutdownModeType* shutdownMode);

Gets validated wakeup events.

EcuM_WakeupSourceType EcuM_GetValidatedWakeupEvents (void);

EcuM_GetWakeupTime returns the current value of the master alarm clock (the minimum absolute time of all user alarm clocks). EcuM_GetWakeupTime is part of the ECU Manager Module port interface.

Std_ReturnType EcuM_GetWakeupTime (EcuM_TimeType* time);

Diensten · A…

This callout shall provide driver initialization and other hardware-related startup activities in case of a power on reset.

void EcuM_AL_DriverInitOne (void);

This callout shall provide driver initialization and other hardware-related startup activities for loading the post-build configuration data. Beware: Here only pre-compile and link-time configurable modules may be used.

void EcuM_AL_DriverInitZero (void);

This callout shall provide driver initialization and other hardware-related startup activities in the wakeup case.

void EcuM_AL_DriverRestart (void);

This callout shall take the code for resetting the ECU.

void EcuM_AL_Reset (EcuM_ResetType reset);

If the configuration parameter EcuMSetProgrammableInterrupts is set to true, this callout Ecu M_AL_SetProgrammableInterrupts is executed and shall set the interrupts on ECUs with programmable interrupts.

void EcuM_AL_SetProgrammableInterrupts (void);

This callout shall take the code for shutting off the power supply of the ECU. If the ECU cannot unpower itself, a reset may be an adequate reaction.

void EcuM_AL_SwitchOff (void);

Diensten · Set…

EcuM_SetAbsWakeupAlarm sets the user's wakeup alarm to an absolute point in time. EcuM_ SetAbsWakeupAlarm is part of the ECU Manager Module port interface.

Std_ReturnType EcuM_SetAbsWakeupAlarm (EcuM_UserType user, EcuM_TimeType time);

EcuM_SetClock sets the EcuM clock time to the provided value. This API is useful for testing the alarm services; Alarms that take days to expire can be tested. EcuM_SetClock is part of the ECU Manager Module port interface.

Std_ReturnType EcuM_SetClock (EcuM_UserType user, EcuM_TimeType time);

EcuM_SetRelWakeupAlarm sets a user's wakeup alarm relative to the current point in time. EcuM_SetRelWakeupAlarm is part of the ECU Manager Module port interface.

Std_ReturnType EcuM_SetRelWakeupAlarm (EcuM_UserType user, EcuM_TimeType time);

Function called by BswM to notify about State Switch.

void EcuM_SetState (EcuM_StateType state);

Sets the wakeup event.

void EcuM_SetWakeupEvent (EcuM_WakeupSourceType sources);

Diensten · Check…

This callout is intended to provide a RAM integrity test. The goal of this test is to ensure that after a long SLEEP duration, RAM contents is still consistent. The check does not need to be exhaustive since this would consume quite some processing time during wakeups. A well designed check will execute quickly and detect RAM integrity defects with a sufficient probability. This specification does not make any assumption about the algorithm chosen for a particular ECU. The areas of RAM which will be checked have to be chosen carefully. It depends on the check algorithm itself and the task structure. Stack contents of the task executing the RAM check e.g. very likely cannot be checked. It is good practice to have the hash generation and checking in the same task and that this task is not preemptible and that there is only little activity between hash generation and hash check. The RAM check itself is provided by the system designer. In case of applied multi core and existence of Satellite-Ecu M(s): this API will be called by the Master-EcuM only.

uint8 EcuM_CheckRamHash (void);

This callout is called by the EcuM to validate a wakeup source. If a valid wakeup has been detected, it shall be reported to EcuM via EcuM_ValidateWakeupEvent().

void EcuM_CheckValidation (EcuM_WakeupSourceType wakeupSource);

This callout is called by the EcuM to poll a wakeup source. It shall also be called by the ISR of a wakeup source to set up the PLL and check other wakeup sources that may be connected to the same interrupt.

void EcuM_CheckWakeup (EcuM_WakeupSourceType wakeupSource);

Diensten · Select…

EcuM_SelectBootTarget selects a boot target. EcuM_SelectBootTarget is part of the ECU Manager Module port interface.

Std_ReturnType EcuM_SelectBootTarget (EcuM_BootTargetType target);

EcuM_SelectShutdownCause elects the cause for a shutdown. EcuM_SelectShutdownCause is part of the ECU Manager Module port interface.

Std_ReturnType EcuM_SelectShutdownCause (EcuM_ShutdownCauseType target);

EcuM_SelectShutdownTarget selects the shutdown target. EcuM_SelectShutdownTarget is part of the ECU Manager Module port interface.

Std_ReturnType EcuM_SelectShutdownTarget (EcuM_ShutdownTargetType shutdownTarget, EcuM_ShutdownModeType shutdownMode);

Diensten · On…

This call allows the system designer to notify that the GO OFF I state is about to be entered.

void EcuM_OnGoOffOne (void);

This call allows the system designer to notify that the GO OFF II state is about to be entered.

void EcuM_OnGoOffTwo (void);

Diensten · Release…

Releases a POST RUN request previously done with a call to EcuM_RequestPOST_RUN. The service is intended for implementing AUTOSAR ports.

Std_ReturnType EcuM_ReleasePOST_RUN (EcuM_UserType user);

Releases a RUN request previously done with a call to EcuM_RequestRUN. The service is intended for implementing AUTOSAR ports.

Std_ReturnType EcuM_ReleaseRUN (EcuM_UserType user);

Diensten · Request…

Places a request for the POST RUN state. Requests can be placed by every user made known to the state manager at configuration time. Requests for RUN and POST RUN must be tracked independently (in other words: two independent variables). The service is intended for implementing AUTOSAR ports.

Std_ReturnType EcuM_RequestPOST_RUN (EcuM_UserType user);

Places a request for the RUN state. Requests can be placed by every user made known to the state manager at configuration time.

Std_ReturnType EcuM_RequestRUN (EcuM_UserType user);

Diensten · Start…

This API is called by the ECU Firmware to start the CheckWakeupTimer for the corresponding WakeupSource. If EcuMCheckWakeupTimeout > 0 the CheckWakeupTimer for the Wakeup Source is started. If EcuMCheckWakeupTimeout <= 0 the API call is ignored by the EcuM.

void EcuM_StartCheckWakeup (EcuM_WakeupSourceType WakeupSource);

The callout shall start the given wakeup source(s) so that they are ready to perform wakeup validation.

void EcuM_StartWakeupSources (EcuM_WakeupSourceType wakeupSource);

Diensten · Overige

Ecum_AbortWakeupAlarm aborts the wakeup alarm previously set by this user. EcuM_Abort WakeupAlarm is part of the ECU Manager Module port interface.

Std_ReturnType EcuM_AbortWakeupAlarm (EcuM_UserType user);

Clears wakeup events.

void EcuM_ClearWakeupEvent (EcuM_WakeupSourceType sources);

This callout should evaluate some condition, like port pin or NVRAM value, to determine which post-build configuration shall be used in the remainder of the startup process. It shall load this configuration data into a piece of memory that is accessible by all BSW modules and shall return a pointer to the EcuM post-build configuration as a base for all BSW module post-build configrations.

const EcuM_ConfigType* EcuM_DeterminePbConfiguration (void);

The ECU Manager Module calls EcuM_DisableWakeupSources to set the wakeup source(s) defined in the wakeupSource bitfield so that they are not able to wake the ECU up.

void EcuM_DisableWakeupSources (EcuM_WakeupSourceType wakeupSource);

The ECU Manager Module calls EcuM_EnableWakeupSource to allow the system designer to notify wakeup sources defined in the wakeupSource bitfield that SLEEP will be entered and to adjust their source accordingly.

void EcuM_EnableWakeupSources (EcuM_WakeupSourceType wakeupSource);

This API is called by any SW Module whose wakeup source is checked asynchronously (e.g. asynchronous Can Trcv Driver) and the Check of the Wakeup returns a negative Result (no Wakeup by this Source). The API cancels the CheckWakeupTimer for the WakeupSource. If the correponding CheckWakeupTimer is canceled the check of this wakeup source is finished.

void EcuM_EndCheckWakeup (EcuM_WakeupSourceType WakeupSource);

The ECU State Manager will call the error hook if the error codes "ECUM_E_RAM_CHECK_ FAILED" or "ECUM_E_CONFIGURATION_DATA_INCONSISTENT" occur. In this situation it is not possible to continue processing and the ECU must be stopped. The integrator may choose the modality how the ECU is stopped, i.e. reset, halt, restart, safe state etc.

void EcuM_ErrorHook (uint16 reason);

see EcuM_CheckRamHash

void EcuM_GenerateRamHash (void);

Instructs the ECU State Manager module to go into a sleep mode, Reset or OFF depending on the previously selected shutdown target.

Std_ReturnType EcuM_GoDownHaltPoll (EcuM_UserType UserID);

If the configuration parameter EcuMResetLoopDetection is set to true, this callout EcuM_Loop Detection is called on every startup.

void EcuM_LoopDetection (void);

Typically called from the shutdown hook, this function takes over execution control and will carry out GO OFF II activities.

void EcuM_Shutdown (void);

This callout is invoked periodically in all reduced clock sleep modes. It is explicitely allowed to poll wakeup sources from this callout and to call wakeup notification functions to indicate the end of the sleep state to the ECU State Manager.

void EcuM_SleepActivity (void);

This function implements the STARTUP II state.

void EcuM_StartupTwo (void);

The callout shall stop the given wakeup source(s) after unsuccessful wakeup validation.

void EcuM_StopWakeupSources (EcuM_WakeupSourceType wakeupSource);

After wakeup, the ECU State Manager will stop the process during the WAKEUP VALIDATION state/sequence to wait for validation of the wakeup event.This API service is used to indicate to the ECU Manager module that the wakeup events indicated in the sources parameter have been validated.

void EcuM_ValidateWakeupEvent (EcuM_WakeupSourceType sources);

Cyclisch

The purpose of this service is to implement all activities of the ECU State Manager while the OS is up and running.

void EcuM_MainFunction (void);

Typen

A pointer to such a structure shall be provided to the ECU State Manager initialization routine for configuration.

–

This type describes the reset mechanisms supported by the ECU State Manager. It can be extended by configuration.

Result of the Run Request Protocol sent to BswM

This type describes the cause for a shutdown by the ECU State Manager. It can be extended by configuration.

This data type represents the modes of the ECU Manager module.

ECU State Manager states.

This data type represents the time of the ECU Manager module.

Unique value for each user.

EcuM_WakeupSourceType defines a bitfield with 5 pre-defined positions (see Range). The bitfield provides one bit for each wakeup source. In WAKEUP, all bits cleared indicates that no wakeup source is known. In STARTUP, all bits cleared indicates that no reason for restart or reset is known. In this case, ECUM_WKSOURCE_RESET shall be assumed.

The type describes the possible states of a wakeup source.