DEENESPTFRRUARHIKOZHNL

ECU State Manager (EcuM)

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

मॉड्यूल गाइडएआई जनित

BswM के साथ मिलकर ECU के स्टार्टअप, शटडाउन, स्लीप फेज़ और वेकअप स्रोतों को नियंत्रित करता है।
एआई-जनित असत्यापित मॉडल: claude-opus-5-5 · प्रयास: high · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: c4073030eea4 उद्गम खुले प्रश्न (1)
कारणात्मक एंकर: R20-11 R20-11 से मान्य इस विनिर्देश संस्करण के लिए नए सिरे से संश्लेषित।
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

BswM के साथ मिलकर ECU के स्टार्टअप, शटडाउन, स्लीप फेज़ और वेकअप स्रोतों को नियंत्रित करता है।

ECU State Manager एक Classic नियंत्रण इकाई (ECU) के जीवनचक्र को नियंत्रित करता है। वह OS प्रारंभ होने तक बेसिक सॉफ़्टवेयर को इनिशियलाइज़ करता है, ECU को शटडाउन लक्ष्यों SLEEP, RESET या OFF में ले जाता है और सत्यापन सहित वेकअप स्रोतों का प्रबंधन करता है [SWS_EcuM_04136]। हार्डवेयर-समीप चरणों को इंटीग्रेशन कोड कॉलबैक के माध्यम से संभालता है। उपयोगकर्ताओं की RUN और POST_RUN आवश्यकताओं की मध्यस्थता EcuM करता है, लेकिन स्थिति परिवर्तनों पर निर्णय BswM लेता है और उन्हें EcuM_SetState के माध्यम से रिपोर्ट करता है [SWS_EcuM_04116]। सबसे महत्वपूर्ण सीमा शर्त यह है कि SLEEP फेज़ में कोई भी वेकअप इवेंट खोना नहीं चाहिए।

ECU State Manager (EcuM) Classic Platform में नियंत्रण इकाई के स्टार्टअप, शटडाउन और स्लीप फेज़ के लिए जिम्मेदार है। EcuM_Init इनिट ब्लॉक्स 0 और 1 के साथ StartPreOS अनुक्रम निष्पादित करता है। इस प्रक्रिया में EcuM पोस्ट-बिल्ड कॉन्फ़िगरेशन का चयन और सत्यापन करता है और अंततः StartOS को कॉल करता है। इसके बाद EcuM_StartupTwo SchM और BswM को प्रारंभ करता है [SWS_EcuM_02684] [SWS_EcuM_02906] [SWS_EcuM_02932]। हार्डवेयर-समीप चरणों को इंटीग्रेशन कोड कॉलबैक के रूप में प्रदान करता है, उदाहरण के लिए 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 नियंत्रण लेता है SHUTDOWN SHUTDOWN (OffPreOS, OffPostOS) UP->SHUTDOWN लक्ष्य RESET या OFF SLEEP SLEEP (GoSleep, Halt या 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

स्थिति आरेख: ECU STARTUP, UP, SHUTDOWN और SLEEP से होकर गुजरती है। SLEEP से वह WakeupRestart के माध्यम से UP में वापस लौटती है। स्रोत: RS ModeManagement पृ. 15, [SWS_EcuM_91005], [SWS_EcuM_02963]

स्थिति परिवर्तनों पर EcuM स्वयं निर्णय नहीं लेता है। वह कॉन्फ़िगर किए गए उपयोगकर्ताओं की RUN और POST_RUN आवश्यकताओं को एकत्र करता है और परिणाम की रिपोर्ट BswM को देता है। उसके स्थिति परिवर्तनों को वह EcuM_SetState के माध्यम से स्वीकार करता है और उन्हें RTE को अग्रेषित करता है [SWS_EcuM_04144] [SWS_EcuM_04117] [SWS_EcuM_04116] SWS EcuM पृ. 103। EcuM_SelectShutdownTarget लक्ष्य SLEEP, RESET या OFF को केवल बाद के लिए संग्रहीत करता है [SWS_EcuM_02585]। शटडाउन के समय OffPreOS BswM और SchM को डी-इनिशियलाइज़ करता है, वेकअप इवेंट्स की जांच करता है और OS को समाप्त करता है। शटडाउन-हुक फिर EcuM_Shutdown को कॉल करता है, जो EcuM_AL_Reset या EcuM_AL_SwitchOff के साथ समाप्त होता है [SWS_EcuM_03021] [SWS_EcuM_04074] [SWS_EcuM_04075]।

SLEEP फेज़ EcuM_GoDownHaltPoll से शुरू होता है। सबसे पहले GoSleep स्लीप मोड के वेकअप स्रोतों को सक्रिय करता है। इसके बाद या तो RAM-हैश सत्यापन के साथ Halt या EcuM_SleepActivity और EcuM_CheckWakeup पर एक लूप के साथ Poll आता है। इसका समापन EcuM_AL_DriverRestart [SWS_EcuM_91002] [SWS_EcuM_02389] [SWS_EcuM_02863] [SWS_EcuM_03020] [SWS_EcuM_02963] के साथ WakeupRestart द्वारा होता है। इस फेज़ में कोई भी वेकअप इवेंट खोना नहीं चाहिए [SWS_EcuM_02188]।

वेकअप स्रोत EcuM_WakeupSourceType में अलग-अलग बिट्स होते हैं और प्रत्येक की स्थिति NONE, PENDING, VALIDATED या EXPIRED में से एक होती है [SWS_EcuM_04040] [SWS_EcuM_04091]। ड्राइवर EcuM_SetWakeupEvent के साथ घटनाओं की रिपोर्ट करते हैं। यदि कोई सत्यापन कॉन्फ़िगर किया गया है, तो EcuM एक टाइमआउट प्रारंभ करता है। इसके समाप्त होने से पहले केवल एक EcuM_ValidateWakeupEvent ही VALIDATED की ओर ले जाता है; कॉन्फ़िगर किए गए चैनल संदर्भ के मामले में तब ComM को भी सूचित किया जाता है। अन्यथा स्रोत EXPIRED हो जाता है [SWS_EcuM_02709] [SWS_EcuM_02645] [SWS_EcuM_04082]।

validierung a Treiber erkennt Weckereignis: EcuM_SetWakeupEvent(sources) b क्या स्रोत चयनित स्लीप मोड से संबंधित है? a->b x Ereignis ignorieren b->x नहीं c Validierung konfiguriert? (EcuMValidationTimeout) b->c हाँ e Bits in Pending-Variable setzen, quellenspezifischen Timeout starten c->e हाँ 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 हाँ i Timeout abgelaufen? g->i नहीं i->f नहीं j Expired-Bit setzen, BswM_EcuM_CurrentWakeup(EXPIRED), EcuM_StopWakeupSources() i->j हाँ

गतिविधि आरेख: एक वेकअप इवेंट तुरंत सत्यापित हो जाता है या तब तक PENDING रहता है जब तक कि कोई पुष्टि नहीं मिल जाती या टाइमआउट समाप्त नहीं हो जाता। स्रोत: SWS EcuM पृ. 63, [SWS_EcuM_02566], [SWS_EcuM_04082]

त्रुटि की स्थिति में EcuM कॉलबैक EcuM_ErrorHook को कॉल करता है यदि कॉन्फ़िगरेशन असंगत है या RAM सत्यापन विफल हो जाता है [SWS_EcuM_04033] [SWS_EcuM_91003]। विकास संबंधी त्रुटियों जैसे एकाधिक अनुरोध या अज्ञात वेकअप स्रोतों की रिपोर्ट वह DET को देता है [SWS_EcuM_03024] [SWS_EcuM_02867]।

ECU State Manager की भूमिका और सिस्टम सीमा

ECU State Manager (EcuM) Classic Platform में ECU के जीवनचक्र के लिए रूपरेखा निर्धारित करता है। वह ऑपरेटिंग सिस्टम के प्रारंभ होने तक बेसिक सॉफ़्टवेयर को इनिशियलाइज़ करता है। उसके बाद वह ECU को नियंत्रित तरीके से शटडाउन लक्ष्यों SLEEP, RESET या OFF में से किसी एक में ले जाता है [SWS_EcuM_04136]। उसकी स्थितियां EcuM_StateType द्वारा निर्धारित की जाती हैं: STARTUP, RUN, POST_RUN, SHUTDOWN और SLEEP [SWS_EcuM_91005]। SW-Cs को वह Mode-Declaration-Group EcuM_Mode के माध्यम से इनकी रिपोर्ट करता है, जिसका प्रारंभिक मोड STARTUP है [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 नियंत्रण लेता है SHUTDOWN SHUTDOWN (OffPreOS, OffPostOS) UP->SHUTDOWN लक्ष्य RESET या OFF SLEEP SLEEP (GoSleep, Halt या 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

स्थिति आरेख: ECU STARTUP, UP, SHUTDOWN और SLEEP से होकर गुजरती है। SLEEP से वह WakeupRestart के माध्यम से UP में वापस आती है, हार्डवेयर रीसेट या पावर साइकिल के बाद वह STARTUP में पुनः प्रारंभ होती है। स्रोत: RS ModeManagement पृ. 15, [SWS_EcuM_91005], [SWS_EcuM_02963], [SWS_EcuM_04001]

स्थिति परिवर्तनों पर EcuM स्वयं निर्णय नहीं लेता है। उसके पास अपना कोई स्टेट मशीन नहीं होता है, वह केवल अनुरोधों की मध्यस्थता करता है और बदलावों को BSW Mode Manager (BswM) पर छोड़ देता है SWS EcuM पृ. 103। हार्डवेयर-समीप और प्रोजेक्ट-विशिष्ट चरणों को वह इंटीग्रेशन कोड के कॉलबैक में स्थानांतरित करता है, जो EcuM_Externals.h के माध्यम से उपलब्ध होते हैं। उदाहरण EcuM_AL_DriverInitZero और EcuM_AL_SwitchOff [SWS_EcuM_02905] [SWS_EcuM_02920] हैं। पड़ोसी मॉड्यूल के इंटरफेस आयातित फ़ंक्शनों की तालिकाओं में सूचीबद्ध हैं, जैसे BswM_EcuM_CurrentWakeup, Can_Init और Det_ReportError [SWS_EcuM_02858] [SWS_EcuM_02859]।

kontext EcuM EcuM SWC SW-Cs (RTE पोर्ट्स के माध्यम से) 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 वेकअप स्रोतों वाले ड्राइवर (उदा. CanTrcv, Icu, Gpt) Drv->EcuM EcuM_SetWakeupEvent, EcuM_ValidateWakeupEvent

संदर्भ आरेख: EcuM SW-Cs, BswM, इंटीग्रेशन कोड, OS, MCAL ड्राइवरों और ComM के बीच स्थित होता है। बदलावों पर BswM निर्णय लेता है, हार्डवेयर चरणों को इंटीग्रेशन कोड निष्पादित करता है। स्रोत: SWS EcuM पृ. 34, [SWS_EcuM_02858], [SWS_EcuM_04135]

स्टार्टअप: StartPreOS, StartPostOS और कॉन्फ़िगरेशन डेटा

EcuM_Init से पहले EcuM केवल एक न्यूनतम MCU इनिशियलाइज़ेशन की अपेक्षा करता है: एक स्टैक स्थापित होता है और C-वेरिएबल्स इनिशियलाइज़ होते हैं SWS EcuM पृ. 39। EcuM_Init StartPreOS अनुक्रम निष्पादित करता है और वापस नहीं लौटता है, क्योंकि वह StartOS को कॉल करता है [SWS_EcuM_02811] [SWS_EcuM_02684]। इसमें वे सभी मॉड्यूल इनिशियलाइज़ किए जाते हैं जो OS प्रारंभ करने के लिए आवश्यक हैं [SWS_EcuM_02603]।

Init Block 0 (EcuM_AL_DriverInitZero) पोस्ट-बिल्ड डेटा लोड करने की तैयारी करता है। इसलिए उसे केवल उन्हीं मॉड्यूल का उपयोग करने की अनुमति है जो प्री-कंपाइल या लिंक समय पर कॉन्फ़िगर किए गए हैं [SWS_EcuM_02905]। इसके बाद EcuM_DeterminePbConfiguration EcuM_ConfigType का एक पॉइंटर प्रदान करता है। यह संरचना अन्य सभी BSW मॉड्यूल के कॉन्फ़िगरेशन को संदर्भित करती है [SWS_EcuM_02906] [SWS_EcuM_02801]। इसमें एक वेरिएंट पहचानकर्ता और एक हैश होता है। EcuM इस हैश को ECUM_CONFIGCONSISTENCY_HASH के विरुद्ध जांचता है, और वह भी सभी पोस्ट-बिल्ड-कॉन्फ़िगर करने योग्य मॉड्यूल के लिए, इससे पहले कि उनमें से पहला इनिशियलाइज़ किया जाए [SWS_EcuM_02794] [SWS_EcuM_02798] [SWS_EcuM_02796]।

Init Block 1 (EcuM_AL_DriverInitOne) पावर-ऑन रीसेट के बाद ड्राइवरों को इनिशियलाइज़ करता है, जिसमें MCU भी शामिल है [SWS_EcuM_02907] SWS EcuM पृ. 146। दोनों ब्लॉकों में क्रम EcuMDriverInitListZero और EcuMDriverInitListOne द्वारा निर्धारित किया जाता है। प्रत्येक इनिट फ़ंक्शन अपने पैरामीटर संबंधित EcuMModuleService कंटेनर से प्राप्त करता है [SWS_EcuM_02559] [SWS_EcuM_02730]। Mcu ड्राइवर के रीसेट कारण को EcuM एक वेकअप स्रोत में अनुवादित करता है और उसे याद रखता है। यदि कारण निर्धारित नहीं किया जा सकता है, तो वह ECUM_WKSOURCE_RESET [SWS_EcuM_02623] [SWS_EcuM_02601] सेट करता है। यदि EcuMResetLoopDetection सेट है, तो EcuM प्रत्येक स्टार्ट पर कॉलबैक EcuM_LoopDetection को कॉल करता है [SWS_EcuM_04137]।

स्टार्टअप: StartPreOS और StartPostOSBootloaderEcuMIntegration CodeMcuOsSchMBswMUse Case: StartPreOS (EcuM_Init)EcuM_Init()EcuM_AL_DriverInitZero()EcuM_DeterminePbConfiguration()const EcuM_ConfigType*कॉन्फ़िगरेशन डेटा की सुसंगतता जांचेंoptKonfigurationsdaten inkonsistentEcuM_ErrorHook(ECUM_E_CONFIGURATION_DATA_INCONSISTENT)EcuM_AL_DriverInitOne()Mcu_GetResetReason()रीसेट कारण को वेकअप स्रोत पर मैप करेंStartOS(ECUM_DEFAULT_APP_MODE)Use Case: StartPostOS (EcuM_StartupTwo)EcuM_StartupTwo()(StartOS के बाद टास्क से)SchM_Init / SchM_Start / SchM_StartTimingBswM_Init()

अनुक्रम आरेख: EcuM_Init Init Block 0, कॉन्फ़िगरेशन के चयन और सत्यापन, Init Block 1 और StartOS तक रीसेट मूल्यांकन से गुजरता है। उसके बाद EcuM_StartupTwo SchM और BswM को प्रारंभ करता है। स्रोत: SWS EcuM पृ. 38, SWS EcuM पृ. 78, [SWS_EcuM_02684], [SWS_EcuM_02932]

OS-स्टार्ट के बाद, एक Task EcuM_StartupTwo को कॉल करता है, जो सीधे StartOS के परिणामस्वरूप शुरू हुआ था [SWS_EcuM_02806]। यह फ़ंक्शन StartPostOS निष्पादित करता है: यह SchM को इनिशियलाइज़ और स्टार्ट करता है तथा BswM_Init को कॉल करता है [SWS_EcuM_02932] SWS EcuM पृ. 42। आगे के इनिशियलाइज़ेशन BswM जनरेट किए गए फ़ंक्शन्स EcuM_AL_DriverInitBswM_<x> [SWS_EcuM_04114] के माध्यम से संभालता है।

मल्टी-कोर ECUs पर प्रति कोर एक EcuM इंस्टेंस चलता है, और मास्टर-EcuM शेष कोरों को स्टार्ट करता है। Init Block 0 और 1 प्रत्येक कोर पर चलते हैं, लेकिन वहाँ केवल उसके MCAL-मॉड्यूल्स को इनिशियलाइज़ करते हैं। SchM, OS और सभी कोर-लोकल BswM प्रत्येक कोर पर शुरू किए जाते हैं [SWS_EcuM_04145] [SWS_EcuM_04093] [SWS_EcuM_04014] SWS EcuM पृ. 71।

RUN और POST_RUN: उपयोगकर्ता अनुरोध और BswM के साथ आर्बिट्रेशन

यदि EcuMModeHandling सक्रिय है, तो उपयोगकर्ता RUN और POST_RUN का अनुरोध कर सकते हैं और उन्हें फिर से रिलीज़ कर सकते हैं [SWS_EcuM_04115] [SWS_EcuM_04130]। इसके लिए EcuM_RequestRUN, EcuM_ReleaseRUN, EcuM_RequestPOST_RUN और EcuM_ReleasePOST_RUN काम आते हैं। ये चारों EcuM_UserType प्रकार के कॉन्फ़िगर किए गए उपयोगकर्ता आइडेंटिफ़ायर की अपेक्षा करते हैं [SWS_EcuM_04124] [SWS_EcuM_04127] [SWS_EcuM_04128] [SWS_EcuM_04129]। EcuM प्रति उपयोगकर्ता अनुरोधों को ट्रैक करता है, और कोई उपयोगकर्ता उन्हें नेस्ट नहीं कर सकता। RUN और POST_RUN अनुरोधों को वह अलग-अलग वेरिएबल्स में बनाए रखता है [SWS_EcuM_04126] [SWS_EcuM_04125] SWS EcuM पृ. 116। SW-Cs इन सेवाओं तक पोर्ट StateRequest_{UserName} के माध्यम से पहुँचते हैं [SWS_EcuM_04135]।

पहला RUN या POST_RUN अनुरोध EcuM BswM को BswM_EcuM_RequestedState(ECUM_STATE_APP_RUN, ECUM_RUNSTATUS_REQUESTED) के साथ रिपोर्ट करता है। RUN या POST_RUN का अंतिम रिलीज़ वह संबंधित स्टेट और ECUM_RUNSTATUS_RELEASED के साथ रिपोर्ट करता है [SWS_EcuM_04144] [SWS_EcuM_04117] [SWS_EcuM_04119]। BswM अपने नियमों का मूल्यांकन करता है और EcuM_SetState के साथ नई स्टेट सेट करता है। इसके बाद EcuM RTE को उपयुक्त मोड इंगित करता है और उसकी प्रतिक्रिया मिलने के बाद BswM_EcuM_CurrentState [SWS_EcuM_04122] [SWS_EcuM_04116] [SWS_EcuM_04143] की रिपोर्ट करता है। मोड-मैनेजमेंट गाइड उपयुक्त BswM नियम दिखाता है, उदाहरण के लिए जैसे ही RUN रिलीज़ हो, POST_RUN में ट्रांज़िशन Mode-Management-Guide पृ. 34।

EcuM और BswM के बीच RUN-/POST_RUN आर्बिट्रेशनSW-C (EcuM-Nutzer)RTEEcuMBswMUse Case: AnforderungEcuM_RequestRUN(user)पोर्ट StateRequest_{UserName} के माध्यम सेE_OKपहला RUN या POST_RUN अनुरोधBswM_EcuM_RequestedState(ECUM_STATE_APP_RUN, ECUM_RUNSTATUS_REQUESTED)नियम मूल्यांकन संक्रमण तय करता हैEcuM_SetState(state)Rte_Switch_currentMode_currentMode(mode)Acknowledgement पोर्ट के माध्यम से फ़ीडबैकBswM_EcuM_CurrentState(state)Use Case: मुक्त करनाEcuM_ReleaseRUN(user)letzte RUN-Anforderung freigegebenBswM_EcuM_RequestedState(ECUM_STATE_APP_RUN, ECUM_RUNSTATUS_RELEASED)EcuM_SetState(state)उदा. POST_RUN में परिवर्तन

अनुक्रम आरेख (Sequence diagram): EcuM उपयोगकर्ताओं के अनुरोधों का आर्बिट्रेशन करता है और परिणाम की रिपोर्ट BswM को देता है। BswM EcuM_SetState के माध्यम से स्टेट लौटाता है, और EcuM इसे RTE को अग्रेषित करता है। स्रोत: [SWS_EcuM_04144], [SWS_EcuM_04117], [SWS_EcuM_04116], [SWS_EcuM_04143]

शटडाउन लक्ष्य और OffPreOS एवं OffPostOS के माध्यम से बंद करना

EcuM_SelectShutdownTarget लक्ष्य और मोड को केवल बाद के SHUTDOWN या SLEEP चरण के लिए सहेजता है और स्वयं कुछ भी ट्रिगर नहीं करता है [SWS_EcuM_02822] [SWS_EcuM_00624] [SWS_EcuM_02585]। मोड पैरामीटर SLEEP लक्ष्य के मामले में एक कॉन्फ़िगर किए गए स्लीप मोड का चयन करता है और RESET लक्ष्य के मामले में एक रीसेट मोड का। OFF के मामले में इसे अनदेखा कर दिया जाता है [SWS_EcuM_02979] [SWS_EcuM_02185]। रीसेट मोड्स में कम से कम Mcu_PerformReset, WdgM_PerformReset और एक I/O पिन को टॉगल करना शामिल है [SWS_EcuM_04005] [SWS_EcuM_04044]। शटडाउन का कारण EcuM_SelectShutdownCause के साथ रिकॉर्ड किया जाता है [SWS_EcuM_04007] [SWS_EcuM_04050]। EcuM_GetLastShutdownTarget वह लक्ष्य प्रदान करता है जिससे अंतिम बार वेक-अप या स्टार्टअप हुआ था। यह मान अगले शटडाउन तक अपरिवर्तित रहता है [SWS_EcuM_02156]।

SHUTDOWN चरण या तो OFF में या RESET में समाप्त होता है [SWS_EcuM_03022]। लक्ष्य कब सेट किया जाता है, यह आमतौर पर BswM तय करता है SWS EcuM पृ. 66। OffPreOS में BswM और SchM को डी-इनिशियलाइज़ किया जाता है और वेक-अप इवेंट्स की जाँच की जाती है। यदि इवेंट्स लंबित हैं, तो RESET को लक्ष्य के रूप में सेट किया जाता है। अंतिम क्रिया ShutdownOS है [SWS_EcuM_03021] [SWS_EcuM_02952] SWS EcuM पृ. 49।

इसके बाद शटडाउन हुक EcuM_Shutdown को कॉल करता है, जो वापस नहीं लौटता। EcuM_OnGoOffTwo के बाद, RESET लक्ष्य के लिए EcuM_AL_Reset और OFF लक्ष्य के लिए EcuM_AL_SwitchOff आता है [SWS_EcuM_02953] [SWS_EcuM_02917] [SWS_EcuM_04074] [SWS_EcuM_04075]। व्याख्या: RESET और OFF के मामले में भी BswM द्वारा EcuM_GoDownHaltPoll के माध्यम से चरण को ट्रिगर करने की संभावना है, क्योंकि इसका रिटर्न विवरण शटडाउन लक्ष्य के अनुसार अंतर करता है [SWS_EcuM_91002]। प्रश्न Q-29bca5a7c6e82c98 (खुला)

OffPreOS और OffPostOS के माध्यम से शट डाउनBswMEcuMSchMOsIntegration CodeEcuM_SelectShutdownTarget(target, mode)E_OKEcuM_GoDownHaltPoll(UserID)व्याख्या: ट्रिगर RESET/OFF पर भीUse Case: OffPreOSBswM_Deinit()SchM_Deinit()वेकअप ईवेंट्स जांचें (लंबित या मान्य,EcuMIgnoreWakeupEvValOffPreOS के आधार पर)optWeckereignisse anstehendShutdown-Ziel RESET setzen(EcuMDefaultResetModeRef)ShutdownOS()Use Case: OffPostOSEcuM_Shutdown()शटडाउन हुक सेEcuM_OnGoOffTwo()altShutdown-Ziel RESETEcuM_AL_Reset(EcuM_ResetType)Shutdown-Ziel OFFEcuM_AL_SwitchOff()

अनुक्रम आरेख (Sequence diagram): OffPreOS BswM और SchM को डी-इनिशियलाइज़ करता है, वेक-अप इवेंट्स की जाँच करता है और OS को समाप्त करता है। OffPostOS फिर शटडाउन लक्ष्य के आधार पर रीसेट या शट-ऑफ में ब्रांच करता है। स्रोत: SWS EcuM पृ. 49, SWS EcuM पृ. 49, [SWS_EcuM_02953], [SWS_EcuM_91002]

SLEEP चरण: GoSleep, Halt या Poll और WakeupRestart

यदि SLEEP को लक्ष्य के रूप में चुना गया है, तो EcuM_GoDownHaltPoll SLEEP चरण की शुरुआत करता है। कॉलर को उपयुक्त लक्ष्य पहले से सेट करना होगा [SWS_EcuM_91002] SWS EcuM पृ. 54। GoSleep में, EcuM लक्ष्य स्लीप मोड के EcuMWakeupSourceMask से सभी वेक-अप स्रोतों को EcuM_EnableWakeupSources के माध्यम से सक्रिय करता है। मल्टी-कोर ECUs पर, यह अतिरिक्त रूप से कोर-विशिष्ट संसाधन RES_AUTOSAR_ECUM को अधिग्रहित करता है। शटडाउन के विपरीत, OS सक्रिय रहता है [SWS_EcuM_02389] [SWS_EcuM_03010] [SWS_EcuM_02951]। कोई भी वेक-अप इवेंट खोना नहीं चाहिए। यदि GoSleep के दौरान ही कोई इवेंट घटित हो जाता है, तो Halt और Poll छोड़ दिए जाते हैं [SWS_EcuM_02188]।

माइक्रोकंट्रोलर को रोकने वाले स्लीप मोड्स Halt अनुक्रम से गुजरते हैं। इससे पहले EcuM EcuM_GenerateRamHash को कॉल करता है, इसके बाद EcuM_CheckRamHash [SWS_EcuM_02960] [SWS_EcuM_02863]। कम क्लॉक वाले स्लीप मोड्स इसके विपरीत Poll अनुक्रम का उपयोग करते हैं। यह EcuM_SleepActivity और EcuM_CheckWakeup को एक ब्लॉकिंग लूप में तब तक कॉल करता है, जब तक कि किसी इवेंट के पेंडिंग या वैलिडेटेड होने की सूचना नहीं मिल जाती [SWS_EcuM_02962] [SWS_EcuM_03020]। R20-11 में EcuM_CheckWakeup अभी भी एक कॉलआउट है। केवल R21-11 से इस कॉलआउट का नाम EcuM_CheckWakeupHook है [SWS_EcuM_02929] SWS EcuM पृ. 145।

एक वेक-अप इवेंट WakeupRestart अनुक्रम की ओर ले जाता है [SWS_EcuM_02963] SWS EcuM पृ. 56:

  1. MCU सामान्य मोड में लौटता है।
  2. EcuM_DisableWakeupSources वर्तमान में लंबित वेक-अप स्रोतों को निष्क्रिय करता है; अन्य सभी सक्रिय (armed) रहते हैं [SWS_EcuM_02922]।
  3. EcuM_AL_DriverRestart प्रभावित ड्राइवरों को पुनः इनिशियलाइज़ करता है [SWS_EcuM_02923]।
  4. शेड्यूलर को फिर से रिलीज़ किया जाता है।

यदि स्लीप के दौरान कोई हार्डवेयर रीसेट या पावर-साइकिल होता है, तो ECU इसके विपरीत STARTUP में नए सिरे से शुरू होता है [SWS_EcuM_04001]।

SLEEP चरण: GoSleep, Halt या Poll, WakeupRestartBswMEcuMIntegration CodeOsMcuWeckquelle (Treiber)EcuM_SelectShutdownTarget(SLEEP, Schlafmodus)EcuM_GoDownHaltPoll(UserID)Use Case: GoSleepEcuM_EnableWakeupSources(स्लीप मोड का EcuMWakeupSourceMask)BswM_EcuM_CurrentWakeup(sources, ECUM_WKSTATUS_NONE)GetResource(RES_AUTOSAR_ECUM_<core#>)altस्लीप मोड µC को रोकता है (Halt)EcuM_GenerateRamHash()Mcu_SetMode(Schlafmodus)वेकअप इंटरप्ट तक HALTEcuM_CheckRamHash()कम क्लॉक वाला स्लीप मोड (Poll)Mcu_SetMode(Schlafmodus)loopकोई ईवेंट लंबित या मान्य नहींEcuM_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#>)

अनुक्रम आरेख (Sequence diagram): GoSleep वेक-अप स्रोतों को तैयार करता है, Halt या Poll स्लीप को लागू करते हैं, और WakeupRestart वापस UP स्थिति में ले जाता है। स्रोत: SWS EcuM पृ. 52, SWS EcuM पृ. 85, SWS EcuM पृ. 87, SWS EcuM पृ. 58

वैकल्पिक रूप से, EcuM एक क्लॉक बनाए रखता है जो बैटरी कनेक्ट होने के बाद से सेकंडों की गिनती करती है [SWS_EcuM_04069]। प्रत्येक उपयोगकर्ता अधिकतम एक वेक-अप अलार्म सेट कर सकता है। मास्टर अलार्म हमेशा सबसे शुरुआती उपयोगकर्ता अलार्म से मेल खाता है [SWS_EcuM_04070] [SWS_EcuM_04072]। EcuM_SetAbsWakeupAlarm बाद के समय को ECUM_E_EARLIER_ACTIVE के साथ और पहले से बीत चुके समय को ECUM_E_PAST के साथ अस्वीकार करता है [SWS_EcuM_04059] [SWS_EcuM_04060]। SLEEP से बाहर निकलने पर EcuM सभी अलार्म्स को निरस्त कर देता है [SWS_EcuM_04009]।

वेक-अप स्रोत: स्टेट्स, वैलिडेशन और क्वेरी

EcuM EcuM_WakeupSourceType प्रकार के बिटमास्क के रूप में 32 वेक-अप स्रोतों तक का प्रबंधन करता है। पाँच बिट्स पूर्वनिर्धारित हैं, जिनमें ECUM_WKSOURCE_POWER और ECUM_WKSOURCE_RESET शामिल हैं। अन्य स्रोतों को EcuMWakeupSourceId के माध्यम से बिट्स 5 से 31 प्राप्त होते हैं [SWS_EcuM_04040] [SWS_EcuM_02165] [SWS_EcuM_02166] SWS EcuM पृ. 63। प्रत्येक स्रोत NONE, PENDING, VALIDATED या EXPIRED में से किसी एक स्टेट में होता है [SWS_EcuM_04091] [SWS_EcuM_04041]। प्रत्येक स्टेट परिवर्तन की रिपोर्ट EcuM मोड-रिक्वेस्ट के रूप में BswM को करता है [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 [सत्यापन के साथ] VALIDATED ECUM_WKSTATUS_VALIDATED entry: BswM_EcuM_CurrentWakeup(sources, VALIDATED) entry: ComM_EcuM_WakeUpIndication() NONE->VALIDATED EcuM_SetWakeupEvent [बिना सत्यापन के] 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

स्टेट आरेख: एक वेक-अप स्रोत NONE से PENDING के माध्यम से VALIDATED या EXPIRED में जाता है। प्रत्येक स्टेट परिवर्तन की सूचना BswM को दी जाती है, और EcuM_ClearWakeupEvent स्रोत को NONE पर रीसेट करता है। स्रोत: SWS EcuM पृ. 60, [SWS_EcuM_04091], [SWS_EcuM_02683]

एक ड्राइवर पहचाने गए इवेंट को EcuM_SetWakeupEvent के साथ ठीक एक बार रिपोर्ट करता है SWS EcuM पृ. 71। फ़ंक्शन को इंटरप्ट संदर्भ और OS-मुक्त संदर्भ से भी कॉल किया जा सकता है। यह पास किए गए बिट्स को OR ऑपरेशन के माध्यम से पेंडिंग वेरिएबल में सेट करता है। चयनित स्लीप मोड से संबंधित न होने वाले स्रोतों को यह अनदेखा करता है [SWS_EcuM_02826] [SWS_EcuM_02171] [SWS_EcuM_01117] [SWS_EcuM_04138]।

यदि इवेंट को वैलिडेट किया जाना आवश्यक है, तो EcuM EcuMValidationTimeout के अनुसार एक स्रोत-विशिष्ट टाइमआउट शुरू करता है। यदि वही स्रोत फिर से रिपोर्ट किया जाता है, तो टाइमआउट पुनः आरंभ नहीं होता है [SWS_EcuM_02975] [SWS_EcuM_02565] [SWS_EcuM_02709] [SWS_EcuM_02712]। यदि किसी स्रोत के लिए कोई वैलिडेशन कॉन्फ़िगर नहीं किया गया है, तो EcuM_SetWakeupEvent एक साथ EcuM_ValidateWakeupEvent की तरह कार्य करता है। पाँच पूर्वनिर्धारित स्रोत कभी भी वैलिडेट नहीं किए जाते हैं [SWS_EcuM_02566] [SWS_EcuM_02625]।

वैलिडेशन स्वयं EcuM_MainFunction में चलता है, जो इसके लिए कॉलआउट EcuM_CheckValidation को कॉल करता है [SWS_EcuM_02539] [SWS_EcuM_02925] SWS EcuM पृ. 64। EcuM_ValidateWakeupEvent का निम्नलिखित प्रभाव होता है [SWS_EcuM_02710] [SWS_EcuM_04078] [SWS_EcuM_04079] [SWS_EcuM_02645] [SWS_EcuM_04140]:

  • यह टाइमआउट को रोकता है और Validated-वेरिएबल में बिट्स सेट करता है।
  • यह BswM को ECUM_WKSTATUS_VALIDATED रिपोर्ट करता है।
  • यदि कोई चैनल या PNC कॉन्फ़िगर किया गया है, तो यह क्रमशः ComM_EcuM_WakeUpIndication या ComM_EcuM_PNCWakeUpIndication को कॉल करता है।

यदि टाइमआउट समाप्त हो जाता है, तो मुख्य फ़ंक्शन Expired-बिट सेट करता है और ECUM_WKSTATUS_EXPIRED की रिपोर्ट करता है [SWS_EcuM_04081] [SWS_EcuM_04082]। RUN स्टेट में, वैलिडेशन केवल संचार चैनलों के लिए प्रभावी होता है [SWS_EcuM_02790] [SWS_EcuM_02791]।

validierung a Treiber erkennt Weckereignis: EcuM_SetWakeupEvent(sources) b क्या स्रोत चयनित स्लीप मोड से संबंधित है? a->b x Ereignis ignorieren b->x नहीं c Validierung konfiguriert? (EcuMValidationTimeout) b->c हाँ e Bits in Pending-Variable setzen, quellenspezifischen Timeout starten c->e हाँ 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 हाँ i Timeout abgelaufen? g->i नहीं i->f नहीं j Expired-Bit setzen, BswM_EcuM_CurrentWakeup(EXPIRED), EcuM_StopWakeupSources() i->j हाँ

गतिविधि आरेख: वैलिडेशन की आवश्यकता न होने वाले स्रोतों के मामले में, इवेंट तुरंत वैलिडेट हो जाता है। शेष के लिए, यह तब तक PENDING रहता है जब तक कि EcuM_ValidateWakeupEvent नहीं आता या टाइमआउट समाप्त नहीं हो जाता और स्रोत EXPIRED नहीं हो जाता। स्रोत: SWS EcuM पृ. 63, SWS EcuM पृ. 78, [SWS_EcuM_02566], [SWS_EcuM_04082]

EcuM_GetPendingWakeupEvents, EcuM_GetValidatedWakeupEvents और EcuM_GetExpiredWakeupEvents वर्तमान स्थिति की क्वेरी करते हैं। EcuM_ClearWakeupEvent पास किए गए बिट्स को तीनों वेरिएबल्स से हटा देता है [SWS_EcuM_01156] [SWS_EcuM_02533] [SWS_EcuM_04076] [SWS_EcuM_02683]।

कुछ वेक-अप स्रोतों में एक एकीकृत बिजली आपूर्ति होती है, जिससे उनका वेक-अप पावर-ऑन-रीसेट की तरह कार्य करता है। उनके लिए, EcuM_StartCheckWakeup एक CheckWakeupTimer शुरू करता है, जो समय से पहले शट-ऑफ को रोकता है। EcuM_SetWakeupEvent या EcuM_EndCheckWakeup टाइमर को फिर से समाप्त करता है [SWS_EcuM_04096] [SWS_EcuM_04098] [SWS_EcuM_02927] SWS EcuM पृ. 70।

त्रुटि की स्थिति में व्यवहार

EcuM अपूरणीय त्रुटियों की रिपोर्ट कॉलआउट EcuM_ErrorHook के माध्यम से संबद्ध त्रुटि कोड [SWS_EcuM_04033] के साथ करता है [SWS_EcuM_02904]। R20-11 में इसके लिए दो कोड हैं [SWS_EcuM_91003] [SWS_EcuM_02987]:

  • असंगत पोस्ट-बिल्ड डेटा के मामले में ECUM_E_CONFIGURATION_DATA_INCONSISTENT।
  • ECUM_E_RAM_CHECK_FAILED, यदि वेक-अप के बाद RAM जाँच विफल हो जाती है।

यदि कोई OS कॉल विफल हो जाती है, तो EcuM अनुरोधित स्थिति बनाए रखता है और ErrorHook को भी कॉल करता है [SWS_EcuM_04139]। एक समर्पित कोड ECUM_E_OS_CALL_FAILED और यह निर्देश कि हुक वापस नहीं लौटता, केवल विनिर्देश के बाद के संस्करण में शामिल है SWS EcuM पृ. 102। इनिशियलाइज़ेशन के दौरान त्रुटियों को EcuM अनदेखा करता है, उदाहरण के लिए Init फ़ंक्शन्स के रिटर्न मान [SWS_EcuM_02980]।

विकास त्रुटि पहचान (development error detection) सक्रिय होने पर, सभी फ़ंक्शन अपने पैरामीटर्स और निष्पादन स्थितियों की जाँच करते हैं। इसके लिए ECUM_E_UNINIT, ECUM_E_SERVICE_DISABLED, ECUM_E_PARAM_POINTER और ECUM_E_INVALID_PAR उपलब्ध हैं [SWS_EcuM_03009]। EcuM DET को अन्य मामलों की रिपोर्ट करता है:

  • ECUM_E_MULTIPLE_RUN_REQUESTS के रूप में एक ही उपयोगकर्ता के एकाधिक अनुरोध [SWS_EcuM_03024] [SWS_EcuM_03025]।
  • उपयुक्त अनुरोध के बिना रिलीज़ ECUM_E_MISMATCHED_RUN_RELEASE के रूप में [SWS_EcuM_03023] [SWS_EcuM_03026]।
  • अज्ञात वेक-अप स्रोत ECUM_E_UNKNOWN_WAKEUP_SOURCE के रूप में; आंतरिक वेरिएबल अपरिवर्तित रहता है [SWS_EcuM_02867] [SWS_EcuM_02868]।
  • EcuM_SetState पर अमान्य स्टेट्स ECUM_E_STATE_PAR_OUT_OF_RANGE के रूप में [SWS_EcuM_04123]।

यदि शटडाउन के दौरान कोई वेक-अप इवेंट होता है, तो EcuM शटडाउन को पूरा करता है और तुरंत पुनः आरंभ करता है [SWS_EcuM_02756]। यदि ECU EcuM_AL_SwitchOff में स्वयं को पावर-ऑफ नहीं कर सकता है, तो रीसेट एक उचित प्रतिक्रिया है [SWS_EcuM_02920] SWS EcuM पृ. 141।

आगे विस्तृत साक्ष्य

यह गाइड मॉड्यूल EcuM (Classic Platform, R20-11) के विनिर्देश अंशों से AI की सहायता से तैयार किया गया था। लिंक की गई आवश्यकताएँ निर्णायक हैं; व्याख्या के रूप में चिह्नित कथन मानक रूप से सिद्ध नहीं हैं।

ECU State Manager (EcuM)

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

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 71091e858c55 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

सिंक्रोनस और रीएंट्रेंट फ़ंक्शन EcuM_GoDownHaltPoll ECU State Manager मॉड्यूल को पहले से चयनित शटडाउन लक्ष्य के आधार पर स्लीप मोड, रीसेट या OFF स्थिति में जाने का निर्देश देता है [SWS_EcuM_91002]। यह हेडर फ़ाइल EcuM.h के माध्यम से उपलब्ध है और इसकी सर्विस-ID 0x2c है [SWS_EcuM_91002]।

पैरामीटर और कॉल अनुमतियाँ

एकमात्र इनपुट पैरामीटर के रूप में EcuM_UserType प्रकार का UserID पास किया जाता है। यह कॉल करने वाले उपयोगकर्ता की पहचान करता है। कॉल का उपयोग कड़ाई से विनियमित है: केवल पूर्व-कॉन्फ़िगर किए गए उपयोगकर्ता ही इस फ़ंक्शन को निष्पादित कर सकते हैं [SWS_EcuM_91002]।

रिटर्न मान और निष्पादन व्यवहार

रिटर्न व्यवहार मुख्य रूप से निर्धारित किए गए शटडाउन लक्ष्य के प्रकार पर निर्भर करता है [SWS_EcuM_91002]:

  • E_NOT_OK: अनुरोध स्वीकार नहीं किया गया [SWS_EcuM_91002]।
  • E_OK: यदि लक्ष्य SLEEP है, तो स्लीप स्थिति से बाहर निकलने के बाद फ़ंक्शन सफलतापूर्वक इस स्थिति के साथ वापस आता है [SWS_EcuM_91002]।
  • कोई वापसी नहीं: यदि शटडाउन लक्ष्य के रूप में RESET या OFF चुना गया था, तो फ़ंक्शन कॉल कॉलर के पास वापस नहीं लौटता है [SWS_EcuM_91002]।

प्रतिबंध और त्रुटि प्रबंधन

यद्यपि फ़ंक्शन औपचारिक रूप से रीएंट्रेंट घोषित है, इसका अभीष्ट निष्पादन पहले से एक मान्य शटडाउन लक्ष्य के निर्धारण की अपेक्षा करता है [SWS_EcuM_91002]। इंटरफ़ेस विनिर्देश में विशिष्ट DET या DEM त्रुटि कोड सूचीबद्ध नहीं हैं; विफलता या अनुरोध की अस्वीकृति सीधे रिटर्न मान E_NOT_OK के माध्यम से प्रदर्शित की जाती है [SWS_EcuM_91002]।

यह उपयोग निर्देश AUTOSAR स्पेसिफिकेशन के आधार पर स्वचालित रूप से जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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)

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 0b36a0aa946f उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

समकालिक सेवा फ़ंक्शन EcuM_Init ECU State Manager को आरंभ करता है और ECU के व्यवस्थित स्टार्टअप अनुक्रम की शुरुआत करता है ([SWS_EcuM_02811])। यह हेडर EcuM.h के माध्यम से Service-ID 0x01 के साथ घोषित किया गया है, कोई पैरामीटर स्वीकार नहीं करता है और कोई वापसी मान नहीं लौटाता है ([SWS_EcuM_02811])। औपचारिक रूप से reentrant के रूप में वर्गीकृत, EcuM_Init कॉल के बाद कभी भी कॉलर के पास वापस नहीं लौटता है, क्योंकि यह StartOS को कॉल करके ऑपरेटिंग सिस्टम को निष्पादन सौंपता है ([SWS_EcuM_02811])।

अपने निष्पादन के भाग के रूप में, फ़ंक्शन परिभाषित StartPreOS अनुक्रम और उसकी गतिविधियों को सटीक रूप से निर्दिष्ट क्रम में संसाधित करता है ([SWS_EcuM_02411], [SWS_EcuM_02684])। इस चरण का एक अनिवार्य घटक कॉन्फ़िगरेशन संगति की जाँच है: मॉड्यूल EcuM_Init के भीतर जाँचता है कि क्या संबंधित संरचना फ़ील्ड ECUM_CONFIGCONSISTENCY_HASH के मान के समान है ([SWS_EcuM_02798])।

इसके अतिरिक्त, EcuM_Init मल्टी-कोर सिस्टम पर ड्राइवरों के इनिशियलाइज़ेशन को नियंत्रित करता है ([SWS_EcuM_04145])। फ़ंक्शन प्रत्येक व्यक्तिगत कोर पर कॉलआउट EcuM_AL_DriverInitZero और EcuM_AL_DriverInitOne को कॉल करता है ([SWS_EcuM_04145])। कॉलआउट कार्यान्वयन के लिए यह आवश्यकता लागू होती है कि संबंधित सक्रिय कोर पर केवल वही MCAL मॉड्यूल आरंभ किए जाएं जो वास्तव में उस कोर पर निष्पादित होते हैं ([SWS_EcuM_04145])।

यह उपयोग नोट विनिर्देश AUTOSAR Classic R20-11 के आधार पर स्वचालित रूप से जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

फ़ंक्शन EcuM_StartupTwo [SWS_EcuM_02838] 📄 PDF

void EcuM_StartupTwo (void);

This function implements the STARTUP II state.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 537ce9e5d889 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

सिंक्रोनस और नॉन-रीएंट्रेंट फ़ंक्शन EcuM_StartupTwo ECU State Manager की स्थिति STARTUP II को लागू करता है [SWS_EcuM_02838]। इंटरफ़ेस हेडर फ़ाइल EcuM.h के माध्यम से घोषित किया जाता है और इसमें सर्विस ID 0x1a होती है [SWS_EcuM_02838]। फ़ंक्शन हस्ताक्षर void EcuM_StartupTwo(void) के अनुसार, कॉल न तो इनपुट पैरामीटर और न ही इनपुट/आउटपुट या आउटपुट पैरामीटर स्वीकार करता है और कॉलर को कोई रिटर्न मान वापस नहीं करता है [SWS_EcuM_02838]।

यदि ECU मैनेजर मॉड्यूल को फ़ंक्शन EcuM_StartupTwo द्वारा सक्रिय किया जाता है, तो यह StartPostOS अनुक्रम की क्रियाओं को निष्पादित करता है [SWS_EcuM_02932]।

एकीकरण के लिए, कॉल संदर्भ और कनकरेन्सी के संबंध में आवश्यक आवश्यकताएं मौजूद हैं: फ़ंक्शन को अनिवार्य रूप से एक ऐसे कार्य (Task) से कॉल किया जाना चाहिए जो सीधे StartOS के परिणामस्वरूप शुरू किया जाता है [SWS_EcuM_02806]। इसके लिए आवश्यक है कि EcuM_StartupTwo का कॉल या तो ऑटोस्टार्ट कार्य से हो या किसी ऐसे कार्य से हो जिसे स्पष्ट रूप से शुरू किया गया हो [SWS_EcuM_02806]। चूँकि फ़ंक्शन को नॉन-रीएंट्रेंट के रूप में निर्दिष्ट किया गया है, इसलिए कोई समवर्ती या एकाधिक कॉल नहीं होना चाहिए [SWS_EcuM_02838]।

यह पाठ AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 06f5a6c81474 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

सिंक्रोनस सर्विस फ़ंक्शन EcuM_Shutdown (सर्विस ID 0x02) हेडर फ़ाइल EcuM.h के माध्यम से प्रदान किया जाता है और चरण “GO OFF II” की गतिविधियों को निष्पादित करने के लिए निष्पादन नियंत्रण का कार्यभार संभालता है [SWS_EcuM_02812]। यह शटडाउन प्रक्रिया के अंतिम समापन का कार्य करता है [SWS_EcuM_02953]।

कॉल संदर्भ और सिमेंटिक्स

आमतौर पर, फ़ंक्शन को शटडाउन हुक से कॉल किया जाता है [SWS_EcuM_02812]। आवश्यकताओं के अनुसार, शटडाउन प्रक्रिया को समाप्त करने के लिए यह हुक स्पष्ट रूप से EcuM_Shutdown को कॉल करने के लिए बाध्य है [SWS_EcuM_02953]।

  • हस्ताक्षर (Signature): void EcuM_Shutdown(void) सर्विस ID 0x02 के साथ [SWS_EcuM_02812]।
  • पैरामीटर: न तो कोई इनपुट, न आउटपुट और न ही इनपुट/आउटपुट पैरामीटर मौजूद हैं [SWS_EcuM_02812]।
  • रिटर्न मान: इंटरफ़ेस कोई रिटर्न मान नहीं लौटाता है [SWS_EcuM_02812]।
  • सिंक्रोनिसिटी: कॉल सिंक्रोनस रूप से निष्पादित होता है [SWS_EcuM_02812]।

कनकरेन्सी और नियंत्रण प्रवाह

विनिर्देश में, EcuM_Shutdown को रीएंट्रेंट घोषित किया गया है [SWS_EcuM_02812]। हालाँकि, प्रोग्राम प्रवाह के लिए सख्त आवश्यकता लागू होती है कि EcuM_Shutdown को कॉलर पर वापस नहीं लौटना चाहिए [SWS_EcuM_02953]। निष्पादन के बाद, फ़ंक्शन ECU को अंतिम रूप से बंद कर देता है या वैकल्पिक रूप से रीसेट ट्रिगर करता है [SWS_EcuM_02953]।

यह उपयोग नोट AUTOSAR विनिर्देश R20-11 के आधार पर स्वचालित रूप से जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन EcuM_SetState [SWS_EcuM_04122] 📄 PDF

void EcuM_SetState (EcuM_StateType state);

Function called by BswM to notify about State Switch.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 6ccfd6ea170b उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और कॉल संदर्भ

सिंक्रोनस फ़ंक्शन EcuM_SetState BswM द्वारा EcuM को स्थिति परिवर्तन की सूचना देने के लिए कार्य करता है [SWS_EcuM_04122]। इनपुट पैरामीटर के रूप में EcuM_StateType प्रकार का state पास किया जाता है, जो BswM द्वारा पूर्व-निर्धारित स्थिति को निर्दिष्ट करता है [SWS_EcuM_04122]। फ़ंक्शन का कोई रिटर्न मान नहीं होता है [SWS_EcuM_04122]।

कार्यप्रणाली और सहक्रियाशीलता (interaction)

कॉल किए जाने पर, यह फ़ंक्शन EcuM की आंतरिक स्थिति को पैरामीटर state के मान पर सेट करता है [SWS_EcuM_04123]। यदि BswM इस तरह से EcuM की स्थिति सेट करता है, तो EcuM संबंधित मोड को RTE को प्रदर्शित करता है [SWS_EcuM_04116]।

त्रुटि प्रबंधन

यदि पैरामीटर state का पास किया गया मान अमान्य है, तो EcuM_SetState EcuM की स्थिति को नहीं बदलता है [SWS_EcuM_04123]। यदि Development Error Reporting सक्षम है, तो यह फ़ंक्शन इस त्रुटि स्थिति में अतिरिक्त रूप से DET मॉड्यूल [SWS_EcuM_04123] को त्रुटि ECUM_E_STATE_PAR_OUT_OF_RANGE की रिपोर्ट करता है।

समवर्तीता और इंटरफ़ेस

निष्पादन सिंक्रोनस और रीएंट्रेंट है [SWS_EcuM_04122]। यह सेवा हेडर फ़ाइल EcuM.h के माध्यम से घोषित की जाती है [SWS_EcuM_04122]।

यह उपयोग नोट विनिर्देश AUTOSAR Classic R20-11 के आधार पर स्वचालित रूप से जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: edb1d4cba6be उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग

सिंक्रोनस और रीएंट्रेंट फ़ंक्शन EcuM_RequestRUN ECU State Manager से RUN स्थिति का अनुरोध करने के लिए कार्य करता है [SWS_EcuM_04124]। पैरामीटर के रूप में EcuM_UserType प्रकार के user के माध्यम से अनुरोधकर्ता इकाई की पहचान पास की जाती है; केवल वे उपयोगकर्ता अधिकृत हैं, जिन्हें कॉन्फ़िगरेशन समय पर ही स्टेट मैनेजर को ज्ञात करा दिया गया था [SWS_EcuM_04124]। यदि EcuM ने अनुरोध स्वीकार कर लिया है, तो फ़ंक्शन E_OK लौटाता है, अन्यथा E_NOT_OK [SWS_EcuM_04124]। यह सेवा हेडर EcuM.h के माध्यम से घोषित है [SWS_EcuM_04124]।

त्रुटि प्रबंधन और सीमाएँ

अनुरोधों को नेस्ट नहीं किया जाना चाहिए: एक अकेला उपयोगकर्ता एक समय में अधिकतम एक सक्रिय RUN अनुरोध रख सकता है [SWS_EcuM_04125]। यदि EcuM_RequestRUN उसी उपयोगकर्ता द्वारा दोहराए गए या डुप्लिकेट कॉल का पता लगाता है, तो विकास पहचान (development detection) सक्षम होने पर त्रुटि कोड ECUM_E_MULTIPLE_RUN_REQUESTS की रिपोर्ट DET को की जाती है [SWS_EcuM_03024], [SWS_EcuM_04125]।

इंटरैक्शन

EcuM_RequestRUN के साथ सफलतापूर्वक सेट किए गए प्रत्येक स्थिति अनुरोध को गतिविधि पूरी होने के बाद फिर से जारी (रिलीज़) किया जाना चाहिए। इसके लिए पूरक, समान रूप से सिंक्रोनस और रीएंट्रेंट सेवा EcuM_ReleaseRUN उपलब्ध है, जिसे वही उपयोगकर्ता ID पास की जाती है [SWS_EcuM_04127]।

यह उपयोग नोट AUTOSAR विनिर्देश R20-11 के आधार पर स्वचालित रूप से जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: f2acc7b3a714 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग

तुल्यकालिक फ़ंक्शन EcuM_ReleaseRUN (Service-ID 0x04) EcuM_RequestRUN के माध्यम से पहले पंजीकृत RUN स्थिति अनुरोध को रिलीज़ करने का कार्य करता है [SWS_EcuM_04127]। इंटरफ़ेस हेडर EcuM.h के माध्यम से प्रदान किया जाता है और यह मुख्य रूप से AUTOSAR पोर्ट्स के कार्यान्वयन के लिए अभिप्रेत है [SWS_EcuM_04127]। इनपुट पैरामीटर के रूप में फ़ंक्शन प्रकार EcuM_UserType के उपयोगकर्ता पहचानकर्ता user की अपेक्षा करता है, जो मॉड्यूल के भीतर रिलीज़ करने वाली निकाय की विशिष्ट रूप से पहचान करता है [SWS_EcuM_04127]।

प्रकार Std_ReturnType का रिटर्न मान E_OK के साथ संकेत देता है कि रिलीज़ अनुरोध मॉड्यूल द्वारा सफलतापूर्वक स्वीकार कर लिया गया था [SWS_EcuM_04127]। यदि रिलीज़ को संसाधित नहीं किया जा सका, तो सेवा त्रुटि मान E_NOT_OK लौटाती है [SWS_EcuM_04127]।

त्रुटि हैंडलिंग और समवर्तीता

विनिर्देश में विशिष्ट त्रुटि कोड, विकास त्रुटियों (DET) या उत्पादन त्रुटियों (DEM) को सूचीबद्ध नहीं किया गया है; किसी अनुरोध की अस्वीकृति केवल E_NOT_OK की वापसी के माध्यम से व्यक्त होती है [SWS_EcuM_04127]। यह माना जा सकता है (व्याख्या:), कि E_NOT_OK की वापसी संभवतः तब होती है जब निर्दिष्ट उपयोगकर्ता ID के लिए कोई सक्रिय अनुरोध मौजूद नहीं होता है या कोई अमान्य पैरामीटर मान पास किया गया हो। प्रश्न Q-cbe9031cffe1be81 (खुला)

फ़ंक्शन को रीएंट्रेंट घोषित किया गया है और इसलिए इसे समवर्ती निष्पादन संदर्भों में कॉल किया जा सकता है [SWS_EcuM_04127]। एक कार्यात्मक अनुक्रम शर्त के रूप में, कॉल के लिए अनिवार्य रूप से आवश्यक है कि संबंधित उपयोगकर्ता ने पहले EcuM_RequestRUN के माध्यम से स्थिति का अनुरोध किया हो [SWS_EcuM_04127]।

इंटरैक्शन

परिभाषित पोर्ट्स के माध्यम से RUN स्थिति को बनाए रखने को समाप्त करने के लिए मॉड्यूल EcuM यह सेवा प्रदान करता है [SWS_EcuM_04127]। RTE कॉन्फ़िगरेशन और स्थानीय RTE रनटाइम व्यवहार के साथ परस्पर क्रिया के लिए, विनिर्देश कई समवर्ती निष्पादन योग्य Runnable Entities के साथ EcuStateManager के आंतरिक व्यवहार को परिभाषित करता है [SWS_EcuM_03018]।

यह पाठ AUTOSAR विनिर्देश के आधार पर एक AI द्वारा जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 8517014c50a6 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग

सिंक्रोनस फ़ंक्शन EcuM_RequestPOST_RUN ECU State Manager ([SWS_EcuM_04128]) से POST RUN स्थिति का अनुरोध करने के लिए कार्य करता है। कॉलर पैरामीटर user के माध्यम से स्वयं की पहचान करता है, जहाँ प्रत्येक अनुरोधकर्ता इकाई को कॉन्फ़िगरेशन समय पर ही स्टेट मैनेजर को ज्ञात करा दिया जाना चाहिए ([SWS_EcuM_04128])। यह सेवा हेडर EcuM.h में घोषित है, AUTOSAR पोर्ट्स के कार्यान्वयन के लिए अभीष्ट है और सफल स्वीकृति की पुष्टि E_OK के साथ अथवा अस्वीकृति की पुष्टि E_NOT_OK ([SWS_EcuM_04128]) के साथ करती है।

त्रुटि प्रबंधन

यदि विकास त्रुटियों की पहचान (development error detection) सक्षम है, तो उसी उपयोगकर्ता द्वारा दोबारा कॉल किए जाने पर EcuM_RequestPOST_RUN DET को त्रुटि ECUM_E_MULTIPLE_RUN_REQUESTS की रिपोर्ट करता है ([SWS_EcuM_03025])। व्याख्या: इस प्रकार के एकाधिक अनुरोधों के मामले में या अमान्य उपयोगकर्ता ID होने पर सेवा द्वारा E_NOT_OK के साथ उत्तर दिए जाने की संभावना है ([SWS_EcuM_04128])। प्रश्न Q-b5bbd7d5b53e76ba (खुला)

समवर्तीता और परस्पर क्रिया

फ़ंक्शन को रीएंट्रेंट डिज़ाइन किया गया है ([SWS_EcuM_04128])। मॉड्यूल में RUN और POST RUN के अनुरोधों को दो स्वतंत्र चरों के माध्यम से एक दूसरे से पूरी तरह स्वतंत्र रूप से ट्रैक किया जाना चाहिए ([SWS_EcuM_04128])। इस सेवा के माध्यम से पंजीकृत प्रत्येक अनुरोध POST RUN स्थिति को तब तक सक्रिय रखता है, जब तक कि इसे EcuM_ReleasePOST_RUN के पूरक कॉल द्वारा स्पष्ट रूप से वापस नहीं ले लिया जाता ([SWS_EcuM_04129])।

यह पाठ स्वचालित रूप से तैयार किया गया था। सभी तकनीकी सामग्री AUTOSAR विनिर्देश पर आधारित हैं।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 5beb0fd73cda उद्गम खुले प्रश्न (2)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और सिमेंटिक्स

तुल्यकालिक और रीएंट्रेंट फ़ंक्शन EcuM_ReleasePOST_RUN ([SWS_EcuM_04129]) EcuM_RequestPOST_RUN के माध्यम से पहले सेट किए गए POST-RUN अनुरोध को रिलीज़ करने का कार्य करता है। प्रकार EcuM_UserType के इनपुट पैरामीटर user के माध्यम से उस निकाय की पहचान पास की जाती है जो POST-RUN स्थिति को पुनः रिलीज़ करती है। इंटरफ़ेस हेडर फ़ाइल EcuM.h के माध्यम से उपलब्ध है और मुख्य रूप से AUTOSAR पोर्ट्स के कार्यान्वयन के लिए डिज़ाइन किया गया है ([SWS_EcuM_04129])।

रिटर्न मान और त्रुटि प्रबंधन

फ़ंक्शन स्थिति Std_ReturnType लौटाता है ([SWS_EcuM_04129]):

  • E_OK: रिलीज़ अनुरोध ECU State Manager द्वारा सफलतापूर्वक स्वीकार कर लिया गया।
  • E_NOT_OK: रिलीज़ अनुरोध अस्वीकार कर दिया गया। व्याख्या: E_NOT_OK के साथ अस्वीकृति तब होने की संभावना है, जब निर्दिष्ट उपयोगकर्ता के लिए कोई सक्रिय अनुरोध पंजीकृत नहीं था या कोई अमान्य उपयोगकर्ता पहचानकर्ता पास किया गया था। प्रश्न Q-67bd8594612defca (खुला)

समवर्तीता और परस्पर क्रिया

सेवा को रीएंट्रेंट के रूप में निर्दिष्ट किया गया है ([SWS_EcuM_04129]), जिससे कई निकायों द्वारा एक साथ कॉल करने की अनुमति है। यह फ़ंक्शन मॉड्यूल EcuM के आंतरिक व्यवहार का एक घटक है ([SWS_EcuM_03018])। कॉल तार्किक रूप से यह पूर्वापेक्षा रखती है कि निकाय ने पहले POST RUN चरण का अनुरोध किया हो ([SWS_EcuM_04129])। व्याख्या: आमतौर पर कॉल सॉफ़्टवेयर घटकों से RTE पोर्ट्स के माध्यम से होने की संभावना है, जैसे ही शटडाउन से पहले उनकी पोस्ट-रन गतिविधियाँ पूरी हो जाती हैं। प्रश्न Q-81f71656d4debb4a (खुला)

यह उपयोग निर्देश AUTOSAR स्पेसिफिकेशन स्थिति R20-11 के आधार पर स्वचालित रूप से जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: a39197138cfb उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

तुल्यकालिक सर्विस फ़ंक्शन EcuM_SelectShutdownTarget ECU के लिए शटडाउन लक्ष्य का चयन करने का कार्य करता है और यह हेडर फ़ाइल EcuM.h के माध्यम से तथा ECU मैनेजर मॉड्यूल के पोर्ट इंटरफ़ेस के भाग के रूप में प्रदान किया जाता है [SWS_EcuM_02822]। कॉल द्वारा आंतरिक शटडाउन लक्ष्य को पास किए गए पैरामीटर shutdownTarget के मान पर सेट किया जाता है [SWS_EcuM_00624]।

फ़ंक्शन दो इनपुट पैरामीटर की अपेक्षा करता है [SWS_EcuM_02822]:

  • shutdownTarget: शटडाउन के लिए चयनित लक्ष्य निर्धारित करता है [SWS_EcuM_02822]।
  • shutdownMode: कॉन्फ़िगरेशन [SWS_EcuM_02822] के अनुसार एक स्लीप मोड का पहचानकर्ता (यदि लक्ष्य ECUM_SHUTDOWN_TARGET_SLEEP है) या एक रीसेट तंत्र का पहचानकर्ता (यदि लक्ष्य ECUM_SHUTDOWN_TARGET_RESET है) शामिल होता है।

कॉल किसी भी तत्काल सेटअप या निष्पादन गतिविधियों को ट्रिगर नहीं करता है, बल्कि केवल चरण SHUTDOWN या SLEEP में बाद के उपयोग के लिए मानों को संग्रहीत करता है [SWS_EcuM_02585]।

समवर्तीता के संबंध में, फ़ंक्शन को रीएंट्रेंट निर्दिष्ट किया गया है [SWS_EcuM_02822]। ECU State Manager के RTE आंतरिक व्यवहार में, संबंधित Runnable Entity SelectShutdownTarget को canbeInvokedConcurrently = TRUE के साथ घोषित किया गया है [SWS_EcuM_03018], जिससे समानांतर कॉल्स की अनुमति मिलती है।

प्रकार Std_ReturnType का रिटर्न मान E_OK के साथ संकेत देता है कि नया शटडाउन लक्ष्य सफलतापूर्वक सेट किया गया था, और E_NOT_OK के साथ कि स्वीकृति विफल रही [SWS_EcuM_02822]। विनिर्देश यहाँ E_NOT_OK के लिए ठोस त्रुटि कारणों या DET संदेशों का उल्लेख नहीं करता है; संभवतः लक्ष्य और मोड के अस्वीकार्य या गैर-कॉन्फ़िगर किए गए संयोजन अस्वीकृति की ओर ले जाते हैं। प्रश्न Q-e916f3a6ac0bf47e (खुला)

यह पाठ एक AI द्वारा जनरेट किया गया था और रिलीज़ R20-11 के विनिर्देशों पर आधारित है।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 518672a867f6 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

सिंक्रोनस फ़ंक्शन EcuM_SelectShutdownCause ECU के शटडाउन के कारण का चयन करने के लिए कार्य करता है और हेडर फ़ाइल EcuM.h के माध्यम से उपलब्ध है [SWS_EcuM_04050]।

उपयोग और सिमेंटिक्स:

  • पैरामीटर: EcuM_ShutdownCauseType प्रकार का इनपुट पैरामीटर target चयनित शटडाउन कारण पास करता है [SWS_EcuM_04050]।
  • रिटर्न मान: Std_ReturnType प्रकार का एक रिटर्न मान E_OK के साथ संकेत देता है कि नया कारण सफलतापूर्वक सेट हो गया है, और E_NOT_OK के साथ कि सेट करना विफल रहा है [SWS_EcuM_04050]।
  • निष्पादन: यह सेवा सर्विस-ID 0x1b के अंतर्गत सिंक्रोनस रूप से कार्य करती है और इसे रीएंट्रेंट निर्दिष्ट किया गया है [SWS_EcuM_04050]।

समवर्तीता और परस्पर क्रिया:

यह फ़ंक्शन ECU Manager मॉड्यूल [SWS_EcuM_04050] के पोर्ट इंटरफ़ेस का हिस्सा है। स्थानीय RTE के कॉन्फ़िगरेशन के लिए आंतरिक व्यवहार EcuStateManager में सिंबल EcuM_SelectShutdownCause के साथ Runnable Entity SelectShutdownCause परिभाषित है, जहाँ गुण canbeInvokedConcurrently = TRUE सौंपा गया है [SWS_EcuM_03018]।

त्रुटि प्रबंधन:

विशिष्टता के दायरे में कोई विशिष्ट DET या DEM संदेश निर्दिष्ट नहीं हैं; कारण सेट करते समय त्रुटि की स्थितियाँ केवल रिटर्न मान E_NOT_OK के माध्यम से प्रदर्शित की जाती हैं [SWS_EcuM_04050]।

यह उपयोग संबंधी निर्देश स्वचालित रूप से तैयार किया गया था और AUTOSAR Classic Release R20-11 के विनिर्देशों पर आधारित है।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

फ़ंक्शन EcuM_ClearWakeupEvent [SWS_EcuM_02828] 📄 PDF

void EcuM_ClearWakeupEvent (EcuM_WakeupSourceType sources);

Clears wakeup events.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 8efe1e7a60e8 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

समकालिक सेवा फ़ंक्शन EcuM_ClearWakeupEvent (Service-ID 0x16) का उपयोग वेकअप घटनाओं को रीसेट करने के लिए किया जाता है और यह हेडर फ़ाइल EcuM.h के माध्यम से उपलब्ध है [SWS_EcuM_02828]। एक पैरामीटर के रूप में, यह प्रकार EcuM_WakeupSourceType का बिटमास्क sources स्वीकार करता है और इसका कोई वापसी मान नहीं है [SWS_EcuM_02828]।

कॉल किए जाने पर, sources में बिट के रूप में सेट की गई सभी लंबित घटनाएँ मॉड्यूल के तीन आंतरिक चरों से हटा दी जाती हैं [SWS_EcuM_02683]:

  • लंबित वेकअप घटनाओं (pending wakeup events) के लिए आंतरिक चर से,
  • मान्य वेकअप घटनाओं (validated events) के लिए आंतरिक चर से, तथा
  • समाप्त हो चुकी वेकअप घटनाओं (expired events) के लिए आंतरिक चर से [SWS_EcuM_02683]।

कॉल संदर्भ के संबंध में, EcuM_ClearWakeupEvent को इंटरप्ट संदर्भ से, नियमित OS संदर्भ से और साथ ही OS-मुक्त संदर्भ से लचीले ढंग से कॉल किया जा सकता है [SWS_EcuM_02807]। साथ ही, फ़ंक्शन को बाध्यकारी रूप से गैर-reentrant (Non-Reentrant) और गैर-अवरोधन योग्य (Non-Interruptible) के रूप में निर्दिष्ट किया गया है [SWS_EcuM_02828]। व्याख्या: चूँकि फ़ंक्शन विभिन्न संदर्भों में अनुमत है लेकिन गैर-अवरोधन योग्य है, इंटीग्रेटर या कॉलर को संगठनात्मक रूप से यह सुनिश्चित करना चाहिए कि कोई समवर्ती या परस्पर अवरोधक कॉल न हों। प्रश्न Q-71a4b1b218505a1c (खुला)

यह पाठ AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: a619899b3b6a उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

सिंक्रोनस फ़ंक्शन EcuM_AbortWakeupAlarm का उपयोग किसी उपयोगकर्ता द्वारा पहले सेट किए गए वेकअप अलार्म को रद्द करने के लिए किया जाता है [SWS_EcuM_04061]। इंटरफ़ेस हेडर फ़ाइल EcuM.h के माध्यम से उपलब्ध है और ECU मैनेजर मॉड्यूल [SWS_EcuM_04061] के पोर्ट इंटरफ़ेस का एक घटक बनाता है।

पैरामीटर और रिटर्न मान

  • user (In): प्रकार EcuM_UserType के उपयोगकर्ता की पहचान, जो वेकअप अलार्म को रद्द करना चाहता है [SWS_EcuM_04061]। इनपुट/आउटपुट या केवल आउटपुट पैरामीटर मौजूद नहीं हैं [SWS_EcuM_04061]।
  • E_OK: सेवा सफलतापूर्वक निष्पादित की गई और अलार्म रद्द कर दिया गया [SWS_EcuM_04061]।
  • ECUM_E_NOT_ACTIVE: पास किए गए उपयोगकर्ता से संबंधित कोई सक्रिय अलार्म नहीं मिला [SWS_EcuM_04061]।
  • E_NOT_OK: सेवा का निष्पादन विफल रहा [SWS_EcuM_04061]।

समवर्तीता और परस्पर क्रिया

फ़ंक्शन में सर्विस-ID 0x24 है और इसे रीएंट्रेंट निर्दिष्ट किया गया है [SWS_EcuM_04061]। इसलिए विभिन्न उपयोगकर्ताओं के लिए कॉल समवर्ती रूप से हो सकते हैं। ECU मैनेजर का आंतरिक व्यवहार स्थानीय RTE [SWS_EcuM_03018] को कॉन्फ़िगर करने के लिए निष्पादन योग्य इकाइयों को परिभाषित करता है; मॉड्यूल पोर्ट इंटरफ़ेस के भाग के रूप में, कॉल आमतौर पर RTE के माध्यम से सॉफ़्टवेयर घटकों द्वारा शुरू किया जाना चाहिए। प्रश्न Q-2c8f004d9f00bbd3 (खुला)

यह पाठ AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

फ़ंक्शन 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.

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: a5821c5da6f5 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

सिंक्रोनस और रीएंट्रेंट फ़ंक्शन EcuM_SetClock [SWS_EcuM_04064] के अनुसार ECU State Manager के आंतरिक समय को एक पूर्व-निर्धारित मान पर सेट करने के लिए कार्य करता है। ECU Manager के पोर्ट इंटरफ़ेस के एक भाग के रूप में, इस फ़ंक्शन को हेडर फ़ाइल EcuM.h के माध्यम से शामिल और कॉल किया जा सकता है [SWS_EcuM_04064]।

इंटरफ़ेस का मुख्य अनुप्रयोग अलार्म सेवाओं का परीक्षण करना है: ऐसे अलार्म, जिनका नियमित निष्पादन दिनों का समय लेगा, उन्हें परीक्षण संचालन में समय को लक्षित रूप से सेट करके सत्यापित किया जा सकता है [SWS_EcuM_04064]। इसमें दो इनपुट पैरामीटर पास किए जाते हैं:

  • user (प्रकार EcuM_UserType): कॉलर या उपयोगकर्ता की पहचान (ID), जो समय सेट करना चाहता है।
  • time (प्रकार EcuM_TimeType): बैटरी कनेक्ट होने (Battery Connect) के बाद से सेकंड में निरपेक्ष समय विनिर्देश।

रिटर्न मान के रूप में, यह सेवा सफल निष्पादन पर E_OK या त्रुटि की स्थिति में E_NOT_OK के साथ स्थिति Std_ReturnType प्रदान करती है [SWS_EcuM_04064]। इंटरफ़ेस पर ठोस त्रुटि के कारण या DET संदेश निर्दिष्ट नहीं हैं; संभवतः अनधिकृत उपयोगकर्ता ID या अमान्य समय मान पास करने से E_NOT_OK प्राप्त होता है। प्रश्न Q-248768580c0309e8 (खुला)

आंतरिक मॉड्यूल व्यवहार और RTE कॉन्फ़िगरेशन के संबंध में, यह फ़ंक्शन EcuStateManager की Runnable Entities की संरचना में एकीकृत होता है [SWS_EcuM_03018]।

यह पाठ AI द्वारा जनरेट किया गया था और तकनीकी मार्गदर्शन के लिए है।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 3afaf8f6214a उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

समकालिक फ़ंक्शन EcuM_SelectBootTarget ECU के लिए एक बूट-लक्ष्य का चयन करने का कार्य करता है और ECU Manager के पोर्ट इंटरफ़ेस का हिस्सा है तथा हेडर EcuM.h के माध्यम से उपलब्ध है [SWS_EcuM_02835]। वांछित लक्ष्य प्रकार EcuM_BootTargetType के इनपुट पैरामीटर target के माध्यम से पास किया जाता है [SWS_EcuM_02835]।

वापसी मान के रूप में, फ़ंक्शन E_OK का संकेत देता है यदि EcuM द्वारा नया बूट-लक्ष्य स्वीकार कर लिया गया था, अन्यथा E_NOT_OK [SWS_EcuM_02835]। कार्यान्वयन को चुने गए लक्ष्य को इस तरह से सहेजना होगा जो बूटलोडर के साथ संगत हो [SWS_EcuM_02247]। वर्तमान में सेट किए गए मान को पूरक सेवा EcuM_GetBootTarget के माध्यम से क्वेरी किया जा सकता है [SWS_EcuM_02836]।

फ़ंक्शन को reentrant के रूप में निर्दिष्ट किया गया है [SWS_EcuM_02835]; RTE कॉन्फ़िगरेशन के लिए आंतरिक व्यवहार के भाग के रूप में, रन करने योग्य इकाई (Runnable Entity) SelectBootTarget को canbeInvokedConcurrently = TRUE के साथ घोषित किया गया है [SWS_EcuM_03018]। प्रतिबंध के रूप में, यह सेवा विशेष रूप से डायग्नोस्टिक्स या बूट प्रबंधन से संबंधित सॉफ़्टवेयर घटकों (SW-Cs) के लिए अभिप्रेत है और विशेष रूप से उपयोग किए जाने वाले बूटलोडर पर निर्भर हो सकती है [SWS_EcuM_03000]।

यह पाठ AI द्वारा उत्पन्न किया गया था और AUTOSAR विनिर्देश की आवश्यकताओं पर आधारित है।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: f79b59c62af4 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

EcuM_ValidateWakeupEvent एक समकालिक सेवा (Service-ID 0x14) है, जो ECU Manager को संकेत देती है कि पैरामीटर sources में पास किए गए वेकअप स्रोत सफलतापूर्वक मान्य हो गए हैं ([SWS_EcuM_02829])। जागने के बाद, ECU State Manager सत्यापन अनुक्रम में इस पुष्टिकरण की प्रतीक्षा करता है। कॉल किए जाने पर, फ़ंक्शन सत्यापन के चल रहे टाइमआउट टाइमर को रोकता है ([SWS_EcuM_02710]) और बिटमास्क के OR संयोजन द्वारा मान्य वेकअप घटनाओं के आंतरिक चर में पास की गई घटनाओं को दर्ज करता है ([SWS_EcuM_04078])।

फ़ंक्शन reentrant ([SWS_EcuM_02829]) है और इसे टास्क और इंटरप्ट संदर्भ दोनों से कॉल किया जा सकता है ([SWS_EcuM_02345])। यदि ECU Manager अवस्था RUN में है, तो कॉल संचार चैनलों को छोड़कर सभी वेकअप स्रोतों के लिए अप्रभावी रहती है ([SWS_EcuM_02790])। दूसरी ओर, किसी संचार चैनल को सौंपे गए स्रोतों के लिए, सेवा ECU के प्रत्येक चरण में अप्रतिबंधित प्रभाव डालती है ([SWS_EcuM_02791])।

समग्र प्रक्रिया में, सेवा वेकअप सत्यापन और संचार प्रबंधन के साथ निकटता से इंटरैक्ट करती है:

  • सत्यापन परीक्षण: ECU Manager परीक्षण के लिए कॉलआउट EcuM_CheckValidation को कॉल करता है; यदि कोई मान्य वेकअप घटना पहचानी जाती है, तो फ़ीडबैक EcuM_ValidateWakeupEvent के माध्यम से प्रदान किया जाता है ([SWS_EcuM_02925])।
  • कॉन्फ़िगरेशन: यदि किसी वेकअप स्रोत के लिए कोई सत्यापन प्रोटोकॉल कॉन्फ़िगर नहीं किया गया है (EcuMValidationTimeout), तो EcuM_SetWakeupEvent पहले से ही EcuM_ValidateWakeupEvent के कॉल को लागू करता है ([SWS_EcuM_02566])।
  • अधिसूचना: यदि वेकअप स्रोत के लिए EcuMComMChannelRef कॉन्फ़िगर किया गया है, तो सेवा ComM_EcuM_WakeUpIndication को कॉल करती है ([SWS_EcuM_02645])। यदि EcuMComMPNCRef कॉन्फ़िगर किया गया है, तो प्रत्येक संदर्भित PNC के लिए ComM_EcuM_PNCWakeUpIndication भी अतिरिक्त रूप से ट्रिगर होता है ([SWS_EcuM_04140])।

यह उपयोग नोट AUTOSAR Classic R20-11 विनिर्देश के आधार पर एक AI द्वारा उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: a96df00e2811 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

समकालिक और गैर-reentrant कॉलबैक फ़ंक्शन EcuM_ErrorHook (EcuM_Externals.h के माध्यम से प्रदान किया गया) ECU State Manager द्वारा तब कॉल किया जाता है जब गंभीर त्रुटियाँ होती हैं जो नियमित आगे के प्रसंस्करण को असंभव बनाती हैं और ECU को रोकने की आवश्यकता होती है [SWS_EcuM_02904]। पासिंग पैरामीटर reason के माध्यम से विशिष्ट त्रुटि कारण प्रेषित किया जाता है [SWS_EcuM_02904]।

परिभाषित त्रुटि कारणों में ECUM_E_RAM_CHECK_FAILED और ECUM_E_CONFIGURATION_DATA_INCONSISTENT शामिल हैं [SWS_EcuM_02904]। यदि वेकअप पर RAM परीक्षण विफल हो जाता है, तो ECU Manager कारण ECUM_E_RAM_CHECK_FAILED के साथ EcuM_ErrorHook को ट्रिगर करने के लिए बाध्य है [SWS_EcuM_02987]। इसके अतिरिक्त, यदि किसी ऑपरेटिंग सिस्टम फ़ंक्शन का कॉल विफल हो जाता है और कोई अन्य त्रुटि प्रतिक्रिया निर्दिष्ट नहीं की जाती है, तो इस हुक के माध्यम से त्रुटि प्रबंधन होता है; इस मामले में EcuM पिछली स्थिति में बना रहता है [SWS_EcuM_04139]।

सिस्टम इंटीग्रेटर के लिए कार्यान्वयन के दौरान निम्नलिखित रूपरेखा शर्तें लागू होती हैं:

  • ECU रोकने का तरीका: इंटीग्रेटर वह तरीका चुनता है जिससे ECU को बंद किया जाता है (जैसे रीसेट, हॉल्ट, पुनरारंभ या सुरक्षित स्थिति) [SWS_EcuM_02904]। व्याख्या: रीसेट या हॉल्ट जैसे कठोर उपायों के मामले में, फ़ंक्शन आमतौर पर नियमित नियंत्रण प्रवाह पर वापस नहीं लौटना चाहिए। प्रश्न Q-59c23e3a2569f670 (खुला)
  • DEM को त्रुटि संदेश: यह इंटीग्रेटर के विवेक पर निर्भर करता है कि त्रुटि DEM को अग्रेषित की जाती है या नहीं, बशर्ते यह सुनिश्चित हो कि DEM दूषित NVRAM ब्लॉकों पर नहीं लिखता है [SWS_EcuM_02987]।

यह पाठ AI द्वारा बनाया गया था और विनिर्देश AUTOSAR CP R20-11 पर आधारित है।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 166191cb51d3 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और कॉल शर्तें

कॉलआउट फ़ंक्शन EcuM_AL_SetProgrammableInterrupts को ECU State Manager मॉड्यूल द्वारा कॉल किया जाता है, ताकि प्रोग्राम करने योग्य इंटरप्ट नियंत्रकों वाले नियंत्रण इकाइयों पर संबंधित इंटरप्ट को कॉन्फ़िगर और सेट किया जा सके [SWS_EcuM_04085]। हालाँकि, इस कॉलआउट का निष्पादन केवल तभी होता है जब कॉन्फ़िगरेशन पैरामीटर EcuMSetProgrammableInterrupts मान true पर सेट हो [SWS_EcuM_04085]। यदि यह पैरामीटर सक्रिय नहीं है, तो कॉल नहीं की जाती है [SWS_EcuM_04085]। इंटीग्रेटर्स और प्लेटफ़ॉर्म ड्राइवरों के लिए, इंटरफ़ेस का डिक्लेरेशन हेडर फ़ाइल EcuM_Externals.h के माध्यम से प्रदान किया जाता है [SWS_EcuM_04085]।

इंटरफ़ेस का सिंटैक्स void EcuM_AL_SetProgrammableInterrupts (void) है और यह सर्विस-ID 0x4A से संबद्ध है [SWS_EcuM_04085]। कॉल पूरी तरह से पैरामीटर रहित होती है: न तो इनपुट, इनपुट/आउटपुट और न ही आउटपुट पैरामीटर पास किए जाते हैं, और फ़ंक्शन कॉलिंग मॉड्यूल को कोई रिटर्न मान नहीं लौटाता है [SWS_EcuM_04085]।

समवर्तीता और प्रतिबंध

EcuM_AL_SetProgrammableInterrupts के लिए विनिर्देश में एक अतुल्यकालिक निष्पादन व्यवहार (Asynchronous) निर्धारित किया गया है [SWS_EcuM_04085]। समवर्तीता (concurrency) के संबंध में, फ़ंक्शन को गैर-पुनःप्रवेशी (Non Reentrant) के रूप में वर्गीकृत किया गया है [SWS_EcuM_04085]। एकीकरण (integration) के लिए इसका अर्थ है कि इंटरफ़ेस के समानांतर या नेस्टेड कॉल अस्वीकार्य हैं और इंटरप्ट-संबंधी कॉन्फ़िगरेशन को बिना समवर्ती पुन:प्रवेश के निष्पादित होना चाहिए [SWS_EcuM_04085]।

यह उपयोग नोट AUTOSAR विनिर्देश के आधार पर स्वचालित रूप से बनाया गया था।

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 5df1108381d2 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग

कॉलआउट फ़ंक्शन EcuM_AL_DriverInitZero (Service-ID 0x31) समकालिक रूप से कॉल किया जाता है, इसका कोई पैरामीटर या वापसी मान नहीं है और यह non-reentrant है [SWS_EcuM_02905]। यह हेडर EcuM_Externals.h के माध्यम से घोषित है [SWS_EcuM_02905]। फ़ंक्शन प्रारंभिक ड्राइवर इनिशियलाइज़ेशन के साथ-साथ बुनियादी हार्डवेयर-संबंधित स्टार्टअप गतिविधियाँ प्रदान करने का कार्य करता है, जो बाद में पोस्ट-बिल्ड कॉन्फ़िगरेशन डेटा लोड करने में सक्षम होने के लिए अनिवार्य हैं [SWS_EcuM_02905]।

प्रतिबंध और मल्टी-कोर संचालन

कार्यान्वयन और निष्पादन के लिए विशिष्ट विनिर्देश और प्रतिबंध लागू होते हैं:

  • कॉन्फ़िगरेशन वर्ग: इस शुरुआती समय में केवल वही मॉड्यूल उपयोग किए जा सकते हैं, जो Pre-Compile या Link-Time के रूप में कॉन्फ़िगर करने योग्य हैं [SWS_EcuM_02905]। Post-Build-कॉन्फ़िगर करने योग्य ड्राइवर यहाँ अभी उपलब्ध नहीं हैं।
  • कॉल संदर्भ: फ़ंक्शन को सिस्टम के प्रत्येक Core पर EcuM_Init द्वारा कॉल किया जाता है [SWS_EcuM_04145]।
  • Core-विशिष्ट इनिशियलाइज़ेशन: कॉलआउट के कार्यान्वयन को यह सुनिश्चित करना चाहिए कि वर्तमान में सक्रिय Core पर केवल वही MCAL मॉड्यूल इनिशियलाइज़ किए जाएं, जो वास्तव में इस विशिष्ट Core पर निष्पादित होते हैं [SWS_EcuM_04145]।

इस कॉलआउट के लिए कोई रिटर्न मान, विशिष्ट त्रुटि कोड या DET या DEM के माध्यम से सूचनाएं परिभाषित नहीं हैं [SWS_EcuM_02905]।

यह उपयोग नोट AUTOSAR रिलीज़ R20-11 के विनिर्देश के आधार पर स्वचालित रूप से जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 8491e826e02d उद्गम खुले प्रश्न (2)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

फ़ंक्शन EcuM_DeterminePbConfiguration ([SWS_EcuM_02906]) ECU State Manager का एक सिंक्रोनस कॉलआउट है, जो हेडर फ़ाइल EcuM_Externals.h के माध्यम से प्रदान किया जाता है और इसकी सर्विस-ID 0x32 है। इंटरफ़ेस में कोई इनपुट, आउटपुट या इनपुट/आउटपुट पैरामीटर नहीं हैं ([SWS_EcuM_02906])। इसका केंद्रीय उद्देश्य स्टार्ट-अप प्रक्रिया के दौरान हार्डवेयर या मेमोरी स्थितियों के आधार पर यह निर्धारित करना है कि सिस्टम स्टार्टअप के आगे के पाठ्यक्रम के लिए किस पोस्ट-बिल्ड कॉन्फ़िगरेशन रिकॉर्ड का उपयोग किया जाना चाहिए ([SWS_EcuM_02906])।

कॉन्फ़िगरेशन निर्धारित करने के लिए, कॉलआउट को बाहरी या निवासी मानदंडों जैसे कि पोर्ट पिन की स्थिति या NVRAM में मान का मूल्यांकन करना चाहिए ([SWS_EcuM_02906])। इसके बाद फ़ंक्शन को इस कॉन्फ़िगरेशन डेटा को एक मेमोरी सेगमेंट में लोड करना होगा जिसे सभी BSW मॉड्यूल एक्सेस कर सकें ([SWS_EcuM_02906])। रिटर्न मान के रूप में, यह EcuM पोस्ट-बिल्ड कॉन्फ़िगरेशन के लिए प्रकार const EcuM_ConfigType* का एक पॉइंटर लौटाता है ([SWS_EcuM_02906])। यह पॉइंटर संपूर्ण BSW के लिए सामान्य प्रारंभिक आधार बनाता है, क्योंकि संरचना में अन्य सभी BSW मॉड्यूल के संबंधित पोस्ट-बिल्ड कॉन्फ़िगरेशन के पॉइंटर्स होते हैं ([SWS_EcuM_02906])।

कॉल व्यवहार के संबंध में, फ़ंक्शन को सिंक्रोनस और गैर-पुन:प्रवेशी (Non Reentrant) के रूप में निर्दिष्ट किया गया है ([SWS_EcuM_02906])। विशिष्ट त्रुटि कोड, विशेष त्रुटि रिटर्न मान और DET या DEM के इंटरफेस इस कॉलआउट के लिए परिभाषित नहीं हैं ([SWS_EcuM_02906])। इसलिए इसे आवश्यकताओं की व्याख्या माना जा सकता है कि एक एप्लिकेशन-विशिष्ट कॉलआउट कार्यान्वयन को त्रुटि स्थितियों को स्वतंत्र रूप से संभालना होगा, क्योंकि एक वैध कॉन्फ़िगरेशन पॉइंटर की कमी संभवतः निर्भर BSW मॉड्यूल के व्यवस्थित स्टार्ट-अप को रोक देगी। प्रश्न Q-b9487647fb39a2e2 (खुला)

यह उपयोग नोट विनिर्देश AUTOSAR CP R20-11 के आधार पर स्वचालित रूप से जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 1a4bc344c682 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और सिमेंटिक्स

फ़ंक्शन EcuM_AL_DriverInitOne ECU स्टेट मैनेजर (EcuM) का एक कॉलआउट फ़ंक्शन है, जो हेडर फ़ाइल EcuM_Externals.h के माध्यम से प्रदान किया जाता है [SWS_EcuM_02907]। इसका प्राथमिक कार्य Power-on-Reset की स्थिति में ड्राइवरों का इनिशियलाइज़ेशन और कंट्रोल यूनिट की अन्य हार्डवेयर-संबंधित स्टार्टअप गतिविधियों को निष्पादित करना है [SWS_EcuM_02907]। चूंकि यह एक कॉलआउट है, इसलिए हार्डवेयर और ड्राइवर इनिशियलाइज़ेशन का वास्तविक कार्यान्वयन संबंधित सिस्टम इंटीग्रेटर द्वारा किया जाना चाहिए। प्रश्न Q-e22baf2fa31cf075 (खुला)

इंटरफ़ेस का C-सिग्नेचर void EcuM_AL_DriverInitOne (void) है और यह सर्विस-ID 0x33 को सौंपा गया है [SWS_EcuM_02907]। यह कोई इनपुट पैरामीटर स्वीकार नहीं करता है और कॉलर को कोई रिटर्न मान भी नहीं लौटाता है [SWS_EcuM_02907]।

समवर्तीता और प्रतिबंध

[SWS_EcuM_02907] के अनुसार कॉल और रनटाइम व्यवहार के लिए निम्नलिखित सीमा शर्तें लागू होती हैं:

  • सिंक्रोनिसिटी: निष्पादन सिंक्रोनस (Synchronous) रूप से होता है, ताकि कॉलर स्टार्टअप गतिविधियों के पूरा होने की प्रतीक्षा करे।
  • पुनःप्रवेश्यता (Reentrancy): फ़ंक्शन को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में परिभाषित किया गया है; एक साथ या बाधित करने वाला एकाधिक कॉल अस्वीकार्य है।
  • कॉल संदर्भ: सक्रियण विशेष रूप से Power-on-Reset के तुरंत बाद इनिशियलाइज़ेशन चरण के लिए निर्दिष्ट है।

त्रुटि प्रबंधन

चूंकि EcuM_AL_DriverInitOne का रिटर्न प्रकार void है, इसलिए इंटरफ़ेस स्तर पर इनिशियलाइज़ेशन की सफलता या त्रुटि के बारे में कोई प्रत्यक्ष फीडबैक मौजूद नहीं है [SWS_EcuM_02907]। विशिष्ट त्रुटि कोड, DET या DEM संदेश इस कॉलआउट के लिए वर्तमान विनिर्देश के दायरे में परिभाषित नहीं हैं।

यह पाठ एक AI द्वारा तैयार किया गया था और यह AUTOSAR विनिर्देश R20-11 पर आधारित है।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: e51873f736db उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

फ़ंक्शन EcuM_LoopDetection सर्विस-ID 0x4B के साथ ECU State Manager का एक कॉलआउट है, जो हेडर फ़ाइल EcuM_Externals.h के माध्यम से प्रदान किया जाता है [SWS_EcuM_04137]।

उपयोग और कॉल संदर्भ

यदि कॉन्फ़िगरेशन पैरामीटर EcuMResetLoopDetection को true पर सेट किया गया है, तो इस कॉलआउट को प्रत्येक स्टार्टअप (Startup) पर सिंक्रोनस रूप से कॉल किया जाता है [SWS_EcuM_04137]। फ़ंक्शन में न तो इनपुट, इनपुट/आउटपुट और न ही आउटपुट पैरामीटर हैं और यह कोई रिटर्न मान नहीं देता है (सिग्नेचर: void EcuM_LoopDetection (void)) [SWS_EcuM_04137]।

समवर्तीता और प्रतिबंध

EcuM_LoopDetection का निष्पादन सिंक्रोनस और नॉन-रीएंट्रेंट (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_EcuM_04137]। चूंकि यह एक कॉलआउट है, इसलिए सिस्टम स्टार्टअप पर बार-बार होने वाले रीसेट लूप का पता लगाने के लिए लूप पहचान का वास्तविक कार्यान्वयन आमतौर पर इंटीग्रेटर या उपयोगकर्ता पर निर्भर करता है।

यह उपयोग नोट AUTOSAR विनिर्देशों के आधार पर स्वचालित रूप से उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: ee988344d1c4 उद्गम खुले प्रश्न (2)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग

फ़ंक्शन EcuM_OnGoOffOne सिस्टम स्थिति GO OFF I तक पहुँचने की घोषणा करने और सिस्टम डिज़ाइनर को परिवर्तन से ठीक पहले उचित उपाय करने का अवसर देने का कार्य करता है [SWS_EcuM_02916]। फ़ंक्शन सिंक्रोनस रूप से निष्पादित होता है, किसी ट्रांसफ़र पैरामीटर की अपेक्षा नहीं करता है (न तो in और न ही inout) और कोई रिटर्न मान नहीं लौटाता है (void) [SWS_EcuM_02916]। चूँकि इंटरफ़ेस हेडर फ़ाइल EcuM_Externals.h के माध्यम से घोषित किया जाता है, यह संभवतः एक उपयोगकर्ता-विशिष्ट कॉलआउट फ़ंक्शन है जिसे इंटीग्रेशन कोड में लागू किया जाता है [SWS_EcuM_02916]। प्रश्न Q-93de53c47a5a6142 (खुला)

त्रुटि प्रबंधन

EcuM_OnGoOffOne के विनिर्देश में, न तो डेवलपमेंट त्रुटियां (DET) और न ही प्रोडक्शन त्रुटियां (DEM) या विशिष्ट त्रुटि रिटर्न मान सूचीबद्ध हैं [SWS_EcuM_02916]। इससे यह निष्कर्ष निकाला जा सकता है कि कॉलर किसी मानकीकृत त्रुटि प्रबंधन की अपेक्षा नहीं करता है और किसी भी अपवाद की स्थिति को उपयोगकर्ता-विशिष्ट कार्यान्वयन के भीतर स्वायत्त रूप से नियंत्रित किया जाना चाहिए [SWS_EcuM_02916]।

समवर्तीता और प्रतिबंध

कॉल संदर्भ और रनटाइम व्यवहार के लिए निम्नलिखित गुण निर्धारित किए गए हैं [SWS_EcuM_02916]:

  • रीएंट्रेंसी: फ़ंक्शन को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में निर्दिष्ट किया गया है और इसे किसी भी स्थिति में समानांतर या नेस्टेड रूप से कॉल नहीं किया जाना चाहिए [SWS_EcuM_02916]।
  • सिंक्रोनिसिटी: सिमेंटिक्स सख्ती से सिंक्रोनस (Synchronous) है, ताकि कॉलर फ़ंक्शन के पूरी तरह से लौटने की प्रतीक्षा करे [SWS_EcuM_02916]।
  • सर्विस ID: सेवा को आंतरिक रूप से हेक्साडेसिमल पहचानकर्ता 0x3C द्वारा दर्शाया जाता है [SWS_EcuM_02916]।

सिंक्रोनस व्यवहार और GO OFF I स्थिति में आसन्न परिवर्तन के कारण, यह माना जाता है कि शटडाउन या संक्रमण प्रक्रिया में अनुचित विलंब न करने के लिए ब्लॉकिंग ऑपरेशनों से बचा जाना चाहिए [SWS_EcuM_02916]। प्रश्न Q-93f5e23c581f0c38 (खुला)

यह उपयोग संबंधी निर्देश AUTOSAR CP R20-11 विनिर्देश के आधार पर एक AI द्वारा जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: e613bc195292 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

विनिर्देश के अनुसार, सिंक्रोनस फ़ंक्शन EcuM_OnGoOffTwo का उपयोग सिस्टम डिज़ाइनर को यह सूचना सक्षम करने के लिए किया जाता है कि GO OFF II स्थिति आसन्न है [SWS_EcuM_02917]। कॉल बिना किसी In, Inout या Out पैरामीटर के पैरामीटर-रहित होता है और कॉलर को कोई रिटर्न मान नहीं लौटाता है [SWS_EcuM_02917]।

निष्पादन संदर्भ और समवर्तीता के संबंध में, इंटरफ़ेस को सर्विस-ID 0x3D प्रदान की गई है और इसे नॉन-रीएंट्रेंट (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_EcuM_02917]। यह हेडर EcuM_Externals.h के माध्यम से प्रदान किया जाता है [SWS_EcuM_02917]। व्याख्या: चूंकि डिक्लेरेशन EcuM_Externals.h में स्थित है और सिस्टम डिज़ाइनर की अधिसूचना के लिए कार्य करता है, इसलिए फ़ंक्शन को ECU प्रबंधन के एक सिंक्रोनस कॉलआउट के रूप में डिज़ाइन किया जाना चाहिए, जिसे GO OFF II स्थिति में संक्रमण से पहले कॉल किया जाता है। प्रश्न Q-bb0ae6e4632de827 (खुला)

एक नॉन-रीएंट्रेंट इंटरफ़ेस होने की विशेषता के कारण, कॉल को समानांतर या बाधाकारी तरीके से दोहराया नहीं जाना चाहिए [SWS_EcuM_02917]। विशिष्ट त्रुटि कोड, DET या DEM को फीडबैक और अलग त्रुटि हैंडलिंग तंत्र विनिर्देश के दायरे में परिभाषित नहीं हैं [SWS_EcuM_02917]।

यह पाठ विनिर्देश R20-11 के आधार पर एक AI द्वारा जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 0b4004b6930f उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग

कॉलआउट फ़ंक्शन EcuM_AL_SwitchOff ECU State Manager (EcuM) मॉड्यूल का हिस्सा है और ECU की विद्युत आपूर्ति को बंद करने के लिए उपयोगकर्ता-विशिष्ट कोड को शामिल करने का कार्य करता है [SWS_EcuM_02920]। इंटरफ़ेस सिंक्रोनस रूप से परिभाषित है, इसमें सर्विस-ID 0x3E है और यह हेडर फ़ाइल EcuM_Externals.h के माध्यम से प्रदान किया जाता है [SWS_EcuM_02920]।

विनिर्देश के अनुसार, फ़ंक्शन न तो इनपुट, इनपुट/आउटपुट और न ही आउटपुट पैरामीटर स्वीकार करता है और इसका कोई रिटर्न मान नहीं है (void) [SWS_EcuM_02920]। यदि ECU का हार्डवेयर स्वतंत्र रूप से अपनी बिजली बंद नहीं कर सकता है, तो विनिर्देश प्रदान करता है कि इसके बजाय रीसेट ट्रिगर करना एक पर्याप्त प्रतिक्रिया हो सकती है [SWS_EcuM_02920]।

परस्पर क्रिया और समवर्तिता (Concurrency)

चयनित शटडाउन लक्ष्य OFF होते ही ECU Manager मॉड्यूल द्वारा EcuM_AL_SwitchOff को कॉल करना अनिवार्य है [SWS_EcuM_04075]। समवर्ती व्यवहार के संबंध में, कॉलआउट को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_EcuM_02920]। व्याख्या: चूंकि फ़ंक्शन का लक्ष्य बिजली आपूर्ति को पूरी तरह से डिस्कनेक्ट करना या वैकल्पिक रूप से रीसेट करना है, इसलिए यह कॉलआउट शटडाउन अनुक्रम के अंतिम चरण का प्रतिनिधित्व करता है, जिसके बाद कोई अन्य नियमित प्रोग्राम निष्पादन नहीं होता है। प्रश्न Q-e8a1aaa1413bbea9 (खुला)

त्रुटि प्रबंधन

कॉलआउट के लिए विनिर्देश में न तो विशिष्ट त्रुटि कोड और न ही त्रुटि हैंडलिंग तंत्र या DET या DEM को संदेश प्रदान किए गए हैं [SWS_EcuM_02920]।

यह उपयोग नोट विनिर्देश AUTOSAR CP R20-11 के आधार पर स्वचालित रूप से जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन EcuM_AL_Reset [SWS_EcuM_04065] 📄 PDF

void EcuM_AL_Reset (EcuM_ResetType reset);

This callout shall take the code for resetting the ECU.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: cf7a6e2e5e21 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

कॉलआउट EcuM_AL_Reset एकीकरण-विशिष्ट कोड प्राप्त करने का कार्य करता है, जो ECU को रीसेट करने के लिए ज़िम्मेदार है ([SWS_EcuM_04065])। इंटरफ़ेस को हेडर फ़ाइल EcuM_Externals.h के माध्यम से घोषित किया जाता है और इसमें सर्विस-ID 0x4C ([SWS_EcuM_04065]) होती है।

फ़ंक्शन का कॉल सिंक्रोनस रूप से होता है और इसे नॉन-रीएंट्रेंट (Non Reentrant) के रूप में परिभाषित किया गया है ([SWS_EcuM_04065])। एकमात्र इनपुट पैरामीटर के रूप में, प्रकार EcuM_ResetType का reset पास किया जाता है, जो निष्पादित किए जाने वाले रीसेट के विशिष्ट प्रकार को परिभाषित करता है ([SWS_EcuM_04065])। फ़ंक्शन का कोई रिटर्न मान नहीं है (void) और इसमें आउटपुट या इनपुट/आउटपुट के लिए कोई पैरामीटर नहीं हैं ([SWS_EcuM_04065])।

शटडाउन चरण की परस्पर क्रिया में, यह निर्धारित किया जाता है कि ECU Manager मॉड्यूल को कॉलआउट EcuM_AL_Reset को कॉल करना अनिवार्य है यदि शटडाउन लक्ष्य RESET पर सेट है ([SWS_EcuM_04074])। कॉलआउट के लिए विनिर्देश में न तो त्रुटि कोड और न ही DET या DEM को सूचनाएं प्रदान की गई हैं ([SWS_EcuM_04065])। व्याख्या: कॉलआउट को हार्डवेयर-स्तरीय नियंत्रण आदेश निष्पादित करने चाहिए जो सीधे MCU के रीसेट का कारण बनते हैं। प्रश्न Q-1e318404843faabd (खुला)

यह उपयोग निर्देश AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 4e41a87f2d45 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

फ़ंक्शन EcuM_EnableWakeupSources सर्विस-ID 0x3F के साथ ECU मैनेजर का एक सिंक्रोनस कॉलआउट है, जिसे हेडर EcuM_Externals.h के माध्यम से घोषित किया गया है [SWS_EcuM_02918]। यह सिस्टम डेवलपर को यह सूचित करने के लिए कार्य करता है कि स्थिति SLEEP आसन्न है, ताकि बिटफील्ड wakeupSource (प्रकार EcuM_WakeupSourceType) में निर्दिष्ट वेकअप स्रोतों को तदनुसार तैयार और सेट किया जा सके [SWS_EcuM_02918]।

उपयोग और अंतःक्रिया

ECU मैनेजर अगले Sleep मोड के लिए वेकअप स्रोतों को कॉन्फ़िगर करने के लिए EcuM_EnableWakeupSources निष्पादित करता है; यह लक्षित Sleep मोड के लिए EcuMWakeupSourceMask में कॉन्फ़िगर किए गए प्रत्येक वेकअप स्रोत के लिए किया जाता है [SWS_EcuM_02389]। फ़ंक्शन का कोई रिटर्न मान (void) नहीं है और यह इनपुट पैरामीटर के रूप में बिटफील्ड wakeupSource की अपेक्षा करता है [SWS_EcuM_02918]।

समवर्तीता और प्रतिबंध

  • पुनःप्रवेश्यता: फ़ंक्शन को गैर-पुनःप्रवेशी (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_EcuM_02918]।
  • सिंक्रोनिसिटी: प्रोसेसिंग सिंक्रोनस रूप से होती है [SWS_EcuM_02918]।
  • त्रुटि हैंडलिंग: इंटरफ़ेस के विनिर्देश दायरे में कोई विशिष्ट DET या DEM त्रुटि संदेश परिभाषित नहीं हैं [SWS_EcuM_02918]।

यह उपयोग नोट AUTOSAR विनिर्देश स्थिति R20-11 के आधार पर स्वचालित रूप से तैयार किया गया था।

फ़ंक्शन EcuM_GenerateRamHash [SWS_EcuM_02919] 📄 PDF

void EcuM_GenerateRamHash (void);

see EcuM_CheckRamHash

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: ce82c127dbe0 उद्गम खुले प्रश्न (2)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

फ़ंक्शन EcuM_GenerateRamHash ECU State Manager के संदर्भ में एक RAM चेक मान उत्पन्न करने का कार्य करता है, जहां विनिर्देश कार्यप्रणाली के संबंध में EcuM_CheckRamHash को संदर्भित करता है [SWS_EcuM_02919]। उत्पन्न चेक मान संभवतः स्लीप या निष्क्रिय स्थितियों के संबंध में मुख्य मेमोरी के बाद के अखंडता परीक्षण के लिए कार्य करता है। प्रश्न Q-7f316b389e1609c0 (खुला)

उपयोग और इंटरफ़ेस

सर्विस में सर्विस-ID 0x40 और सिग्नेचर void EcuM_GenerateRamHash(void) है [SWS_EcuM_02919]। फ़ंक्शन में न तो इनपुट, आउटपुट और न ही इनपुट/आउटपुट पैरामीटर हैं और यह कोई रिटर्न मान नहीं देता है। निष्पादन सिंक्रोनस रूप से होता है।

समवर्तीता और प्रतिबंध

फ़ंक्शन को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_EcuM_02919]। नतीजतन, इसे कई संदर्भों से बाधित करते हुए या समानांतर में कॉल नहीं किया जाना चाहिए। डिक्लेरेशन हेडर फ़ाइल EcuM_Externals.h के माध्यम से प्रदान किया जाता है [SWS_EcuM_02919]। व्याख्या: EcuM_Externals.h में परिभाषा के अनुसार, यह उपयोगकर्ता द्वारा कार्यान्वित किया जाने वाला एक कॉलआउट होना चाहिए, जिसे स्थिति अनुक्रम में एक उपयुक्त समय पर ECU State Manager द्वारा कॉल किया जाता है। प्रश्न Q-2f53f1a19cee079c (खुला)

त्रुटि प्रबंधन

EcuM_GenerateRamHash के लिए [SWS_EcuM_02919] में कोई विशिष्ट त्रुटि कोड और न ही DET और न ही DEM संदेश परिभाषित हैं।

यह उपयोग नोट मॉड्यूल EcuM के विनिर्देश के आधार पर स्वचालित रूप से बनाया गया था।

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 331d24f7a327 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और कॉल संदर्भ

फ़ंक्शन EcuM_SleepActivity ECU State Manager के एक कॉलआउट का प्रतिनिधित्व करता है, जो हेडर फ़ाइल EcuM_Externals.h में सर्विस-ID 0x41 के साथ उपलब्ध कराया जाता है [SWS_EcuM_02928]। यह कॉल कम प्रोसेसर क्लॉक वाले सभी स्लीप मोड (reduced clock sleep modes) में समय-समय पर (periodically) की जाती है [SWS_EcuM_02928]। यह फ़ंक्शन सिग्नेचर void EcuM_SleepActivity(void) रखता है, तुल्यकालिक (synchronously) रूप से कार्य करता है और न तो इनपुट, आउटपुट और न ही इनपुट/आउटपुट पैरामीटर स्वीकार करता है [SWS_EcuM_02928]।

कार्यात्मक कार्य और परस्पर क्रिया

इस कॉलआउट का उद्देश्य स्लीप के दौरान गतिविधियों को निष्पादित करना है: EcuM_SleepActivity के भीतर वेकअप स्रोतों को चक्रीय रूप से पोल (polling) करना स्पष्ट रूप से अभिप्रेत और अनुमत है [SWS_EcuM_02928]। इसके अलावा, स्लीप स्थिति की समाप्ति को ECU State Manager को सूचित करने के लिए सीधे कॉलआउट से वेकअप-अधिसूचना फ़ंक्शनों को कॉल किया जा सकता है [SWS_EcuM_02928]।

समवर्तीता और प्रतिबंध

इंटरफ़ेस को गैर-पुनःप्रवेशी (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_EcuM_02928]। चूँकि कॉलआउट कोई रिटर्न मान प्रदान नहीं करता है और कोई त्रुटि पैरामीटर परिभाषित नहीं हैं, इसलिए फ़ंक्शन इंटरफ़ेस के माध्यम से त्रुटि कोड अथवा DET या DEM जैसे त्रुटि रिपोर्टर के ज़रिए कोई सीधा त्रुटि प्रबंधन नहीं होता है [SWS_EcuM_02928]।

यह पाठ AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: adada8898a5f उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और कॉल संदर्भ

[SWS_EcuM_04096] के अनुसार, किसी विशिष्ट वेकअप स्रोत के लिए टाइमर CheckWakeupTimer शुरू करने के लिए ECU फर्मवेयर द्वारा सिंक्रोनस इंटरफ़ेस EcuM_StartCheckWakeup को कॉल किया जाता है। इसके लिए फ़ंक्शन को प्रकार EcuM_WakeupSourceType का पैरामीटर WakeupSource पास किया जाता है। इसका कोई रिटर्न मान नहीं है (void) और यह हेडर फ़ाइल EcuM_Externals.h के माध्यम से प्रदान किया जाता है।

प्रक्रिया और शर्तें

फ़ंक्शन का निष्पादन वेकअप स्रोत के कॉन्फ़िगरेशन पर निर्भर करता है [SWS_EcuM_04096]:

  • यदि संबंधित वेकअप स्रोत के लिए EcuMCheckWakeupTimeout > 0 कॉन्फ़िगर किया गया है, तो संबद्ध CheckWakeupTimer शुरू किया जाता है।
  • यदि EcuMCheckWakeupTimeout <= 0 लागू होता है, तो फ़ंक्शन कॉल को EcuM द्वारा पूरी तरह से अनदेखा कर दिया जाता है।

समवर्तीता और त्रुटि प्रबंधन

फ़ंक्शन को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_EcuM_04096]। कॉलर को तदनुसार यह सुनिश्चित करना चाहिए कि एक ही या अन्य वेकअप स्रोतों के लिए कॉल समवर्ती रूप से न हों। इस कॉल के लिए विशिष्ट त्रुटि कोड और DET या DEM को सूचनाएं निर्दिष्ट नहीं हैं; गैर-सकारात्मक टाइमआउट पर एक कॉल विनिर्देश के अनुसार बिना किसी परिणाम के रहता है, जिसे संभवतः अप्रासंगिक टाइमर परीक्षणों के सहनशील अवरोधन के रूप में समझा जा सकता है [SWS_EcuM_04096]। प्रश्न Q-19d98b03d3ee7504 (खुला)

यह उपयोग नोट AUTOSAR विनिर्देश R20-11 के आधार पर एक AI द्वारा उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 9c2d9feb4e41 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

कॉलआउट EcuM_CheckWakeup वेकअप स्रोतों की जाँच और पोलिंग के साथ-साथ वेकअप घटना के बाद PLL के कॉन्फ़िगरेशन के लिए कार्य करता है [SWS_EcuM_02929]। फ़ंक्शन हेडर फ़ाइल EcuM_Externals.h के माध्यम से प्रदान किया जाता है और इसमें सर्विस-ID 0x42 है [SWS_EcuM_02929]।

कॉल संदर्भ और सिमेंटिक्स

  • सिग्नेचर और पैरामीटर: फ़ंक्शन सिंक्रोनस रूप से निष्पादित होता है (Synchronous), इसका कोई रिटर्न मान नहीं होता है और इनपुट पैरामीटर के रूप में प्रकार EcuM_WakeupSourceType के wakeupSource की अपेक्षा करता है [SWS_EcuM_02929]।
  • कॉलर: किसी वेकअप स्रोत को चक्रीय रूप से क्वेरी करने के लिए कॉलआउट को EcuM द्वारा कॉल किया जाता है। इसके अलावा, PLL सेट करने और उसी इंटरप्ट से जुड़े आगे के वेकअप स्रोतों की जाँच करने के लिए वेकअप स्रोत के इंटरप्ट सर्विस रूटीन (ISR) द्वारा इसे कॉल करना अनिवार्य है [SWS_EcuM_02929]।
  • पोलिंग लूप: पोलिंग अनुक्रम में, EcuM कॉलआउट EcuM_SleepActivity और EcuM_CheckWakeup को बार-बार एक ब्लॉकिंग लूप में कॉल करता है, जब तक कि कोई वेकअप घटना लंबित या मान्य के रूप में रिपोर्ट न हो जाए [SWS_EcuM_03020]।

प्रतिबंध और त्रुटि प्रबंधन

फ़ंक्शन को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_EcuM_02929]। चूंकि कॉल पोलिंग अनुक्रम के ब्लॉकिंग प्रवाह और ISR संदर्भों दोनों से होते हैं, इसलिए एकीकरण को यह सुनिश्चित करना चाहिए कि कोई असंबद्ध समवर्ती कॉल न हों। प्रश्न Q-8bc8f164670a0911 (खुला) इस कॉलआउट के लिए कोई विशिष्ट त्रुटि कोड या DET या DEM को त्रुटि सूचनाएं परिभाषित नहीं हैं।

यह उपयोग निर्देश AUTOSAR स्पेसिफिकेशन के आधार पर स्वचालित रूप से जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 22fef1b09b30 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

सिंक्रोनस फ़ंक्शन EcuM_EndCheckWakeup को सॉफ़्टवेयर मॉड्यूल द्वारा तब कॉल किया जाता है जब किसी वेकअप स्रोत की एसिंक्रोनस जाँच (जैसे कि एसिंक्रोनस CAN ट्रांसीवर ड्राइवर के मामले में) एक नकारात्मक परिणाम देती है, यानी इस स्रोत द्वारा कोई वेकअप घटना मौजूद नहीं है [SWS_EcuM_02927]।

उपयोग और पैरामीटर

EcuM_WakeupSourceType प्रकार के इनपुट पैरामीटर WakeupSource के माध्यम से वह वेकअप स्रोत पास किया जाता है, जिसके लिए संबंधित मॉनिटरिंग टाइमर को रद्द किया जाना है [SWS_EcuM_02927]। फ़ंक्शन कोई रिटर्न मान (void) नहीं देता है और इसमें कोई इनपुट/आउटपुट या आउटपुट पैरामीटर नहीं हैं [SWS_EcuM_02927]।

कार्यप्रणाली और समवर्तीता (concurrency)

  • यह फ़ंक्शन निर्दिष्ट वेकअप स्रोत के लिए टाइमर CheckWakeupTimer को रद्द करता है; इस टाइमर के रद्द होने के साथ ही वेकअप स्रोत का सत्यापन पूर्ण माना जाता है [SWS_EcuM_02927]।
  • इंटरफ़ेस को सिंक्रोनस और नॉन-रीएंट्रेंट (Non Reentrant) के रूप में परिभाषित किया गया है [SWS_EcuM_02927]।
  • डिक्लेरेशन हेडर फ़ाइल EcuM_Externals.h के माध्यम से उपलब्ध कराया जाता है [SWS_EcuM_02927]।

यह उपयोग संबंधी निर्देश AUTOSAR R20-11 के विनिर्देश के आधार पर स्वचालित रूप से जनरेट किया गया था।

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: d1c6f593ca9f उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

फ़ंक्शन EcuM_CheckRamHash एक सिंक्रोनस, नॉन-रीएंट्रेंट कॉलआउट है (EcuM_Externals.h में घोषित), जो RAM मेमोरी का अखंडता परीक्षण प्रदान करता है [SWS_EcuM_02921]। फ़ंक्शन में कोई पैरामीटर नहीं है और यह uint8 प्रकार का स्टेटस मान लौटाता है: मान 0 परीक्षण की विफलता का संकेत देता है, जबकि कोई अन्य मान सफल पास का संकेत देता है [SWS_EcuM_02921]।

[SWS_EcuM_02863] के अनुसार, EcuM मॉड्यूल माइक्रोकंट्रोलर को रोकने से पहले पहले [SWS_EcuM_02919] को कॉल करता है और Halt स्थिति से लौटने के बाद EcuM_CheckRamHash निष्पादित करता है। इसका उद्देश्य यह सत्यापित करना है कि एक लंबी SLEEP अवधि के बाद भी RAM सामग्री सुसंगत बनी हुई है [SWS_EcuM_02921]।

कार्यान्वयन और प्रक्रिया के लिए निम्नलिखित सीमा शर्तें लागू होती हैं:

  • एल्गोरिदम और परीक्षण क्षेत्र: परीक्षण फ़ंक्शन सिस्टम डिज़ाइनर द्वारा प्रदान किया जाता है; इसे विस्तृत होने की आवश्यकता नहीं है, लेकिन इसे तेजी से निष्पादित होना चाहिए और पर्याप्त विश्वसनीयता के साथ त्रुटियों का पता लगाना चाहिए [SWS_EcuM_02921]। परीक्षण किए जाने वाले क्षेत्रों को सावधानीपूर्वक चुना जाना चाहिए; निष्पादित करने वाले टास्क की स्टैक सामग्री को आमतौर पर जाँचा नहीं जा सकता है [SWS_EcuM_02921]।
  • टास्क संरचना: एक सर्वोत्तम अभ्यास के रूप में, न्यूनतम मध्यवर्ती गतिविधि के साथ एक ही, गैर-बाधाकारी टास्क में हैश निर्माण और सत्यापन निष्पादित करना माना जाता है [SWS_EcuM_02921]।
  • मल्टी-कोर: सैटेलाइट EcuM वाले एकाधिक प्रोसेसर कोर के मामले में, कॉलआउट विशेष रूप से मास्टर EcuM द्वारा कॉल किया जाता है और केवल उसकी पहुंच के भीतर के डेटा की जाँच करता है [SWS_EcuM_02863], [SWS_EcuM_02921]।

इस कॉलआउट के लिए कोई विशिष्ट DET या DEM संदेश परिभाषित नहीं हैं; रिटर्न मान 0 पर त्रुटि प्रतिक्रिया संभवतः उच्च-स्तरीय सिस्टम डिज़ाइन के विवेक पर निर्भर करती है [SWS_EcuM_02921]। प्रश्न Q-473ef8617db29fe3 (खुला)

यह पाठ एक AI द्वारा तैयार किया गया था और विनिर्देश AUTOSAR Classic R20-11 पर आधारित है।

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 474e253af285 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

सर्विस-ID 0x44 वाला सिंक्रोनस इंटरफ़ेस EcuM_DisableWakeupSources प्रकार EcuM_WakeupSourceType के बिटफ़ील्ड पैरामीटर wakeupSource में परिभाषित वेकअप स्रोतों को कॉन्फ़िगर करने का काम करता है ताकि वे ECU को अब जगा न सकें [SWS_EcuM_02922]। फ़ंक्शन हस्ताक्षर void EcuM_DisableWakeupSources (EcuM_WakeupSourceType wakeupSource) [SWS_EcuM_02922] है।

कॉल संदर्भ और एकीकरण के लिए, विनिर्देश के अनुसार निम्नलिखित गुण लागू होते हैं:

  • कॉलर और हेडर: फ़ंक्शन को ECU Manager मॉड्यूल द्वारा कॉल किया जाता है और हेडर फ़ाइल EcuM_Externals.h के माध्यम से प्रदान किया जाता है [SWS_EcuM_02922]।
  • पैरामीटर और रिटर्न मान: एकमात्र इनपुट पैरामीटर के रूप में बिटफ़ील्ड wakeupSource पास किया जाता है। फ़ंक्शन में न तो इनपुट/आउटपुट और न ही आउटपुट पैरामीटर हैं और यह कोई रिटर्न मान (void) नहीं लौटाता है [SWS_EcuM_02922]।
  • निष्पादन सिमेंटिक्स और समवर्तीता: प्रसंस्करण समकालिक रूप से होता है। इसके अतिरिक्त, फ़ंक्शन को गैर-पुन:प्रवेशी (Non Reentrant) के रूप में निर्दिष्ट किया गया है, ताकि एक साथ या नेस्टेड कॉल से बचा जाना चाहिए [SWS_EcuM_02922]।

त्रुटि प्रबंधन के संबंध में, विनिर्देश में इस फ़ंक्शन कॉल के लिए न तो विशिष्ट त्रुटि कोड हैं और न ही DET या DEM [SWS_EcuM_02922] को सूचनाएं।

यह पाठ AUTOSAR CP R20-11 विनिर्देश के आधार पर एक AI द्वारा तैयार किया गया था।

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: f02a8bab5708 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

कॉलआउट EcuM_AL_DriverRestart हेडर फ़ाइल EcuM_Externals.h के माध्यम से घोषित किया गया है और इसमें सर्विस-ID 0x45 है [SWS_EcuM_02923]। फ़ंक्शन का सिग्नेचर void EcuM_AL_DriverRestart (void) है, इसके लिए किसी ट्रांसफर पैरामीटर की आवश्यकता नहीं होती है और यह कोई रिटर्न मान नहीं देता है [SWS_EcuM_02923]। इस इंटरफ़ेस का उद्देश्य वेकअप मामले (Wakeup Case) में ड्राइवर इनिशियलाइज़ेशन के साथ-साथ स्टार्टअप चरण के दौरान अन्य हार्डवेयर-संबंधित गतिविधियों को प्रदान करना है [SWS_EcuM_02923]।

मॉड्यूल EcuM के साथ एकीकरण और परस्पर क्रिया के लिए बाध्यकारी आवश्यकताएं लागू होती हैं:

  • चरण WakeupRestart के दौरान पुन: इनिशियलाइज़ेशन के लिए, इंटीग्रेटर को EcuM_AL_DriverRestart के लिए एकीकरण कोड में एक रीस्टार्ट ब्लॉक शामिल करना होगा, जो कॉन्फ़िगर की गई सूची EcuMDriverRestartList का उपयोग करता है [SWS_EcuM_02947] [SWS_EcuM_02923]।
  • सूची EcuMDriverRestartList में ऐसे ड्राइवर शामिल हो सकते हैं जो वेकअप स्रोतों (Wakeup Sources) के रूप में कार्य करते हैं [SWS_EcuM_02562]। इस मामले में, EcuM_AL_DriverRestart को इन ड्राइवरों के वेकअप पहचान कॉलबैक (“wakeup detected”) के ट्रिगर तंत्र को फिर से चालू (re-arm) करना होगा [SWS_EcuM_02562]।

रनटाइम व्यवहार के संबंध में, फ़ंक्शन को सिंक्रोनस और नॉन-रीएंट्रेंट के रूप में परिभाषित किया गया है [SWS_EcuM_02923]। चूंकि यह एप्लिकेशन-विशिष्ट एकीकरण कोड है, इसलिए विनिर्देश इस इंटरफ़ेस पर अपने स्वयं के त्रुटि कोड और DET या DEM को कोई मानकीकृत संदेश परिभाषित नहीं करता है।

यह पाठ एक AI द्वारा तैयार किया गया था। जानकारी अधूरी हो सकती है और आधिकारिक AUTOSAR विनिर्देश को प्रतिस्थापित नहीं करती है।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 72a2492ac382 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

कॉलआउट फ़ंक्शन EcuM_StartWakeupSources पास किए गए वेकअप स्रोत(स्रोतों) को इस प्रकार प्रारंभ और चालू करने का कार्य करता है कि वे बाद में वेकअप सत्यापन (Wakeup Validation) के निष्पादन के लिए तैयार हों [SWS_EcuM_02924]।

उपयोग और कॉल संदर्भ

फ़ंक्शन को सर्विस-ID 0x46 के साथ एक सिंक्रोनस कॉल के रूप में निर्दिष्ट किया गया है, इसका कोई रिटर्न मान नहीं है (void) और यह हेडर फ़ाइल EcuM_Externals.h के माध्यम से उपलब्ध कराया जाता है [SWS_EcuM_02924]।

  • पैरामीटर wakeupSource (in): प्रारंभ किए जाने वाले वेकअप स्रोत या प्रकार EcuM_WakeupSourceType के कई वेकअप स्रोतों के बिटमास्क को कॉलआउट फ़ंक्शन [SWS_EcuM_02924] में पास करता है। अतिरिक्त इनपुट या आउटपुट पैरामीटर (inout/out) मौजूद नहीं हैं [SWS_EcuM_02924]।

समवर्तीता और प्रतिबंध

निष्पादन परिवेश के संबंध में, EcuM_StartWakeupSources को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में वर्गीकृत किया गया है [SWS_EcuM_02924]। इसलिए कॉलर को यह सुनिश्चित करना चाहिए कि फ़ंक्शन को बाधित करने वाले इंटरप्ट सर्विस रूटीन या समानांतर टास्क से एक साथ निष्पादित न किया जाए।

इंटरैक्शन और एरर हैंडलिंग

चूंकि EcuM_StartWakeupSources को एक कॉलआउट के रूप में घोषित किया गया है, इसलिए प्रभावित स्रोतों का हार्डवेयर-स्तरीय सक्रियण सिस्टम इंटीग्रेटर द्वारा एप्लिकेशन-विशिष्ट कार्यान्वयन पर निर्भर करता है [SWS_EcuM_02924]। विनिर्देश इस इंटरफ़ेस के लिए न तो DET या DEM को त्रुटि संदेश प्रदान करता है और न ही विशिष्ट त्रुटि रिटर्न मान [SWS_EcuM_02924]; इसलिए स्रोतों को प्रारंभ करते समय किसी भी त्रुटि स्थिति को संभवतः कॉलआउट के भीतर एकीकरण-विशिष्ट रूप से संभाला जाएगा। प्रश्न Q-b595e7175c34a831 (खुला)

यह पाठ एक AI द्वारा बनाया गया था और AUTOSAR R20-11 के विनिर्देश पर आधारित है।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

फ़ंक्शन 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().

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: c36dd6936c23 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

फ़ंक्शन EcuM_CheckValidation एक वेकअप स्रोत के सत्यापन के लिए ECU State Manager के कॉलआउट इंटरफ़ेस के रूप में कार्य करता है [SWS_EcuM_02925]। EcuM यह निर्धारित करने के लिए इस फ़ंक्शन को कॉल करता है कि क्या पहचानी गई वेकअप घटना मान्य है [SWS_EcuM_02925]।

उपयोग

कॉलआउट में Service-ID 0x47 होती है और यह हेडर फ़ाइल EcuM_Externals.h के माध्यम से प्रदान किया जाता है [SWS_EcuM_02925]। इनपुट पैरामीटर के रूप में प्रकार EcuM_WakeupSourceType का wakeupSource उपयोग किया जाता है, जिसके माध्यम से मान्य किए जाने वाले वेकअप स्रोत की पहचान की जाती है [SWS_EcuM_02925]। फ़ंक्शन कोई रिटर्न मान (void) नहीं देता है और इसमें कोई आउटपुट या इनपुट/आउटपुट पैरामीटर नहीं हैं [SWS_EcuM_02925]। निष्पादन तुल्यकालिक रूप से होता है [SWS_EcuM_02925]।

त्रुटि प्रबंधन

इस कॉलआउट के लिए विनिर्देश में विशिष्ट त्रुटि कोड, त्रुटि की स्थिति में रिटर्न मान या DET अथवा DEM को संदेश परिभाषित नहीं किए गए हैं।

समवर्तीता और प्रतिबंध

समवर्तीता के संबंध में, EcuM_CheckValidation को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में परिभाषित किया गया है [SWS_EcuM_02925]। EcuM के कॉलिंग संदर्भ को यह सुनिश्चित करना चाहिए कि समान या भिन्न वेकअप स्रोतों के लिए कोई समानांतर या नेस्टेड कॉल्स न हों।

इंटरैक्शन

यदि निष्पादन के दौरान एक मान्य वेकअप घटना पहचानी जाती है, तो इसे फ़ंक्शन कॉल EcuM_ValidateWakeupEvent() के माध्यम से EcuM को वापस रिपोर्ट किया जाना अनिवार्य है [SWS_EcuM_02925]। व्याख्या: हार्डवेयर के सत्यापन के लिए डिवाइस-विशिष्ट तर्क और साथ ही वैधता का निर्णय पूरी तरह से एकीकरण कोड में लागू किए जाने की संभावना है। प्रश्न Q-08061e09b474728d (खुला)

यह उपयोग निर्देश AUTOSAR CP R20-11 विनिर्देश के आधार पर स्वचालित रूप से उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 63994628bd66 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

EcuM मॉड्यूल (Classic Platform) का कॉलआउट फ़ंक्शन EcuM_StopWakeupSources असफल वेकअप सत्यापन के बाद पास किए गए वेकअप स्रोत(स्रोतों) को लक्षित तरीके से रोकने का कार्य करता है [SWS_EcuM_02926]। इस सिंक्रोनस इंटरफ़ेस का डिक्लेरेशन हेडर फ़ाइल EcuM_Externals.h के माध्यम से उपलब्ध है और इसमें सर्विस-ID 0x48 शामिल है [SWS_EcuM_02926]।

उपयोग और इंटरफ़ेस पैरामीटर:

  • इनपुट पैरामीटर: एकमात्र पैरामीटर के रूप में, प्रकार EcuM_WakeupSourceType का wakeupSource पास किया जाता है, जो रोके जाने वाले वेकअप स्रोत(स्रोतों) को निर्दिष्ट करता है [SWS_EcuM_02926]।
  • रिटर्न मान और इनपुट/आउटपुट: न तो इनपुट/आउटपुट पैरामीटर (inout) और न ही आउटपुट पैरामीटर (out) मौजूद हैं [SWS_EcuM_02926]। फ़ंक्शन कॉलर को कोई रिटर्न मान (void) नहीं लौटाता है [SWS_EcuM_02926]।
  • निष्पादन व्यवहार: फ़ंक्शन का निष्पादन सिंक्रोनस (Synchronous) निर्धारित किया गया है [SWS_EcuM_02926]।

समवर्तीता और त्रुटि हैंडलिंग:

इंटरफ़ेस को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में निर्दिष्ट किया गया है [SWS_EcuM_02926]। इसलिए समानांतर कॉल की अनुमति नहीं है और कॉलर द्वारा इससे बचा जाना चाहिए। विनिर्देश इस कॉलआउट के लिए न तो विशिष्ट त्रुटि कोड, न ही रिटर्न मान या Default Error Tracer (DET) या Diagnostic Event Manager (DEM) मॉड्यूल को सूचनाएं परिभाषित करता है [SWS_EcuM_02926]। व्याख्या: चूंकि फ़ंक्शन EcuM_Externals.h के माध्यम से एक बाहरी कॉलआउट के रूप में प्रदान किया जाता है, इसलिए प्रासंगिक वेकअप हार्डवेयर का हार्डवेयर-संबंधित निष्क्रियकरण और आंतरिक त्रुटि हैंडलिंग उपयोगकर्ता-विशिष्ट कार्यान्वयन की जिम्मेदारी है। प्रश्न Q-b537c805bed751ab (खुला)

यह पाठ विनिर्देश R20-11 के आधार पर एक AI द्वारा जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

फ़ंक्शन 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.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 9ac46d3f83ab उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और कॉल संदर्भ

फ़ंक्शन EcuM_MainFunction का हस्ताक्षर void EcuM_MainFunction(void) सर्विस ID 0x18 के साथ है और यह हेडर फ़ाइल SchM_EcuM.h के माध्यम से प्रदान किया जाता है [SWS_EcuM_02837]। यह कोई पैरामीटर स्वीकार नहीं करता है और कोई रिटर्न मान नहीं लौटाता है [SWS_EcuM_02837]। इसका कार्य ECU State Manager की सभी गतिविधियों को निष्पादित करना है, जब ऑपरेटिंग सिस्टम चल रहा हो (“OS is up and running”) [SWS_EcuM_02837]। फ़ंक्शन को आमतौर पर शेड्यूलर द्वारा समय-समय पर कॉल किया जाना चाहिए (व्याख्या: SchM_EcuM.h के माध्यम से एकीकरण)। प्रश्न Q-ca471f22bdb1f11d (खुला)

पारस्परिक क्रिया और कार्य

चालू संचालन के दौरान, EcuM_MainFunction केंद्रीय समन्वय कार्यों का दायित्व संभालता है:

  • वेकअप स्रोतों का सत्यापन: यदि WakeupRestart अनुक्रम के पूरा होने के बाद वेकअप सोर्स उम्मीदवारों की एक सूची उपलब्ध होती है, तो EcuM मॉड्यूल EcuM_MainFunction के भीतर इन उम्मीदवारों को मान्य करता है [SWS_EcuM_02539]।
  • सत्यापन टाइमआउट की समाप्ति: यदि किसी लंबित वेकअप इवेंट के लिए सत्यापन टाइमआउट समाप्त हो जाता है, तो फ़ंक्शन समाप्त हो चुके वेकअप इवेंट्स के लिए आंतरिक वेरिएबल में OR ऑपरेशन द्वारा संबंधित बिट सेट करता है [SWS_EcuM_04081]। इसके अतिरिक्त, यह इवेंट के EcuM_WakeupSourceType बिटमास्क और स्थिति ECUM_WKSTATUS_EXPIRED के साथ BswM_EcuM_Current_Wakeup के माध्यम से BSW प्रबंधन को सूचित करता है [SWS_EcuM_04082]।
  • Alarm Clock Service: यदि EcuMAlarmClockPresent के माध्यम से सेवा उपलब्ध है, तो EcuM_MainFunction अलार्म क्लॉक टाइमर को अपडेट करता है [SWS_EcuM_04002]।

सीमाएं और इंस्टेंसेस

मल्टी-कोर या मल्टी-इंस्टेंस आर्किटेक्चर के लिए एक आवश्यक सीमा शर्त के रूप में, यह लागू होता है कि EcuM_MainFunction को EcuM के सभी इंस्टेंसेस में निष्पादित किया जाना चाहिए [SWS_EcuM_04011]।

यह उपयोग नोट विनिर्देश R20-11 के आधार पर स्वचालित रूप से तैयार किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

टाइप EcuM_ConfigType [SWS_EcuM_04038] 📄 PDF

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

टाइप EcuM_RunStatusType [SWS_EcuM_04120] 📄 PDF

Result of the Run Request Protocol sent to BswM

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 94aa8a70183e उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

डेटा प्रकार EcuM_RunStatusType को uint8 के रूप में परिभाषित किया गया है और हेडर EcuM.h के माध्यम से प्रदान किया जाता है ([SWS_EcuM_04120])। यह ECU-मैनेजर में रन-रिक्वेस्ट प्रोटोकॉल की वर्तमान स्थिति के औपचारिक प्रतिनिधित्व के रूप में कार्य करता है और परिणाम के रूप में Basic Software Mode Manager (BswM) को प्रेषित किया जाता है ([SWS_EcuM_04120])।

स्वीकार्य मान सीमा में तीन असतत अवस्थाएँ ([SWS_EcuM_04120]) शामिल हैं:

  • ECUM_RUNSTATUS_UNKNOWN (मान 0): एक अज्ञात स्थिति का प्रतिनिधित्व करता है और साथ ही एक परिभाषित इनिशियलाइज़ेशन मान (Init Value) के रूप में कार्य करता है।
  • ECUM_RUNSTATUS_REQUESTED (मान 1): उस स्थिति को इंगित करता है कि ECU-मैनेजर द्वारा RUN स्थिति का सक्रिय रूप से अनुरोध किया गया था।
  • ECUM_RUNSTATUS_RELEASED (मान 2): संकेत देता है कि RUN स्थिति को ECU-मैनेजर द्वारा पुनः रिलीज़ कर दिया गया है।

परस्पर क्रिया के संबंध में, आवश्यकता [SWS_EcuM_04121] ECU-मैनेजर मॉड्यूल को बाध्य करती है कि वह BswM को EcuM_RunStatusType में सूचीबद्ध स्थिति मानों के आधार पर रन-रिक्वेस्ट प्रोटोकॉल की वर्तमान स्थिति के बारे में अनिवार्य रूप से सूचित करे। व्याख्या: चूँकि आवश्यकता में संदेश प्रवाह के लिए किसी विशिष्ट फ़ंक्शन सिग्नेचर या कॉलिंग कन्वेंशन का उल्लेख नहीं है, इसलिए स्थिति की जानकारी आमतौर पर एक आंतरिक अधिसूचना फ़ंक्शन या कॉलबैक इंटरफ़ेस के माध्यम से BswM मॉड्यूल को पास की जानी चाहिए। प्रश्न Q-e136b90c2edbc29c (खुला) इस प्राथमिक डेटा प्रकार के लिए वर्तमान आवश्यकताओं में विशिष्ट त्रुटि कोड, DET या DEM संदेश और विशेष पुन:प्रवेश स्थितियाँ प्रदान नहीं की गई हैं।

यह उपयोग निर्देश AUTOSAR Classic R20-11 के स्पेसिफिकेशन के आधार पर स्वचालित रूप से बनाया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

टाइप 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.

टाइप EcuM_WakeupStatusType [SWS_EcuM_04041] 📄 PDF

The type describes the possible states of a wakeup source.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 99623532d1ab उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

[SWS_EcuM_04041] के अनुसार डेटा प्रकार EcuM_WakeupStatusType ECU State Manager में एक वेकअप स्रोत (Wakeup Source) की संभावित स्थितियों का वर्णन करता है। यह प्रकार मूल प्रकार uint8 से प्राप्त हुआ है और हेडर EcuM.h के माध्यम से प्रदान किया जाता है [SWS_EcuM_04041]।

मान सीमा चार स्थितियों के माध्यम से एक वेकअप घटना के जीवन चक्र का प्रतिनिधित्व करती है [SWS_EcuM_04041]:

  • ECUM_WKSTATUS_NONE (मान 0): किसी लंबित वेकअप घटना का पता नहीं चला [SWS_EcuM_04041]।
  • ECUM_WKSTATUS_PENDING (मान 1): एक वेकअप घटना का पता चला है, लेकिन अभी तक सत्यापित नहीं हुआ है [SWS_EcuM_04041]।
  • ECUM_WKSTATUS_VALIDATED (मान 2): वेकअप घटना मान्य है और सफलतापूर्वक पुष्टि की गई है [SWS_EcuM_04041]।
  • ECUM_WKSTATUS_EXPIRED (मान 3): वेकअप घटना समय पर सत्यापित नहीं हुई थी और इसलिए समाप्त हो गई है [SWS_EcuM_04041]।

उपयोग और परस्पर क्रिया: यह प्रकार वेकअप स्रोतों के लिए एक केंद्रीय स्थिति प्रतिनिधित्व के रूप में कार्य करता है। व्याख्या: कॉल करने वाले यह निर्धारित करने के लिए स्थिति प्रश्नों के भाग के रूप में इस स्थिति का मूल्यांकन कर सकते हैं कि क्या कोई वेकअप स्रोत सक्रिय रूप से सत्यापित किया जा रहा है, पहले से ही एक वैध वेकअप का संकेत दिया है, या सत्यापन समय सीमा पार हो गई है। प्रश्न Q-a3f721e8f1753eb1 (खुला)

यह पाठ स्वचालित रूप से उत्पन्न किया गया था। सभी विवरण विशेष रूप से संबंधित रिलीज़ की विनिर्देश आवश्यकताओं पर आधारित हैं।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

टाइप EcuM_ResetType [SWS_EcuM_04044] 📄 PDF

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

टाइप EcuM_StateType [SWS_EcuM_91005] 📄 PDF

ECU State Manager states.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 04e4b37b6e32 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

प्रकार EcuM_StateType, uint8 से व्युत्पन्न एक डेटा प्रकार है, जो हेडर EcuM.h के माध्यम से प्रदान किया जाता है और ECU State Manager की परिचालन स्थितियों को मैप करता है [SWS_EcuM_91005]। EcuM मॉड्यूल EcuM_StateType में सूचीबद्ध सभी स्थितियों को परिभाषित करने के लिए बाध्य है [SWS_EcuM_02664]। मान सीमा में उप-स्थिति मास्क ECUM_SUBSTATE_MASK (0x0f) के साथ-साथ मुख्य स्थितियाँ ECUM_STATE_STARTUP (0x10), ECUM_STATE_RUN (0x32), ECUM_STATE_POST_RUN (0x33), ECUM_STATE_SHUTDOWN (0x40) और ECUM_STATE_SLEEP (0x50) शामिल हैं [SWS_EcuM_91005]।

उपयोग और अंतःक्रिया

यह डेटा प्रकार BswM और EcuM के बीच स्थिति संचार के लिए एक केंद्रीय पैरामीटर के रूप में कार्य करता है:

  • EcuM को स्थिति परिवर्तन: सर्विस-ID 0x2b के साथ सिंक्रोनस और रीएंट्रेंट फ़ंक्शन कॉल EcuM_SetState(EcuM_StateType state) के माध्यम से, BswM EcuM मॉड्यूल को स्थिति परिवर्तन की सूचना देता है [SWS_EcuM_04122]।
  • BswM को स्थिति रिपोर्टिंग: EcuM इंटरफ़ेस BswM_EcuM_CurrentState(EcuM_StateType State) को कॉल करके BswM को वर्तमान स्थिति की रिपोर्ट करता है [SWS_EcuM_04143]।

समवर्तीता, क्रम और त्रुटि प्रबंधन

समय क्रम के संबंध में, यह नियम लागू होता है कि EcuM द्वारा एक नई स्थिति केवल तभी सेट की जा सकती है जब RTE ने संबंधित पावती (acknowledgement) पोर्ट के माध्यम से अपना फ़ीडबैक प्रदान कर दिया हो [SWS_EcuM_04143]। उपलब्ध स्रोतों में इस डेटा प्रकार के लिए विशिष्ट त्रुटि कोड, रिटर्न मान या DET/DEM संदेश प्रदान नहीं किए गए हैं।

यह उपयोग नोट विनिर्देश आवश्यकताओं के आधार पर स्वचालित रूप से उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

टाइप EcuM_Mode [SWS_EcuM_04107] 📄 PDF

–

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 930c9709cbac उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

प्रकार EcuM_Mode को [SWS_EcuM_04107] के अनुसार ModeDeclarationGroup के रूप में परिभाषित किया गया है और यह ECU State Manager की केंद्रीय स्थितियों का प्रतिनिधित्व करता है। प्रारंभिक मोड के रूप में STARTUP निर्धारित किया गया है। इसके अलावा, समूह में परिभाषित मोड POST_RUN, RUN, SHUTDOWN और साथ ही SLEEP शामिल हैं [SWS_EcuM_04107]।

सिस्टम नेटवर्क में, EcuM_Mode सर्विस इंटरफ़ेस EcuM_CurrentMode के भीतर मोड समूह currentMode के लिए एक प्रकार के आधार के रूप में कार्य करता है [SWS_EcuM_04108]। इस इंटरफ़ेस के माध्यम से वर्तमान ECU मोड को क्वेरी किया जा सकता है या RTE मोड तंत्र के माध्यम से अन्य सॉफ़्टवेयर घटकों को संकेत दिया जा सकता है।

कॉल संदर्भ और समवर्तीता के संबंध में, प्रकार के विनिर्देश में ही रीएंट्रेंसी या त्रुटि कोड पर कोई स्पष्ट प्रतिबंध नहीं है; स्थिति संक्रमणों का प्रबंधन EcuM के संबद्ध सर्विस इंटरफेस के माध्यम से किया जाता है।

यह नोट स्वचालित रूप से उत्पन्न किया गया था और AUTOSAR R20-11 विनिर्देश डेटा पर आधारित है।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

टाइप currentMode [SWS_EcuM_04112] 📄 PDF

–

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: b0199fd54780 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

तत्व currentMode EcuM मॉड्यूल के एक Provided-Port के रूप में परिभाषित है और सॉफ़्टवेयर आर्किटेक्चर के लिए सर्विस-इंटरफ़ेस EcuM_CurrentMode प्रदान करता है [SWS_EcuM_04112]। यह सर्विस-इंटरफ़ेस वर्तमान ECU मोड को पढ़ने का काम करता है और डेटा प्रकार EcuM_Mode के आधार पर मोड समूह currentMode को एनकैप्सुलेट करता है [SWS_EcuM_04108]।

चालू सिस्टम संचालन में, इसका उपयोग स्थिति परिवर्तनों को संकेत देने के लिए किया जाता है:

  • कॉल और उपयोग: जैसे ही कोई मोड परिवर्तन होता है, EcuM RTE मोड पोर्ट के माध्यम से सॉफ़्टवेयर घटकों (SW-Cs) को इसकी रिपोर्ट करता है [SWS_EcuM_04133]। पोर्ट नाम currentMode की विनिर्देश धारणा के तहत और प्रत्यक्ष RTE-API के उपयोग पर, इसके लिए फ़ंक्शन Rte_Switch_currentMode_currentMode( Rte_ModeType_EcuM_Mode mode) को कॉल किया जाता है [SWS_EcuM_04133]।
  • पैरामीटर और रिटर्न मान: पैरामीटर mode नए अपनाए जाने वाले मोड को RTE को पास करता है [SWS_EcuM_04133]। Switch-API द्वारा लौटाए गए प्रकार Rte_StatusType के रिटर्न मान का मूल्यांकन नहीं किया जाता है, बल्कि विनिर्देश के अनुसार इसे अनिवार्य रूप से अनदेखा किया जाना चाहिए [SWS_EcuM_04133]।
  • परस्पर क्रिया: एक सॉफ़्टवेयर घटक, जिसे मोड परिवर्तनों के बारे में सूचित किया जाना है, उसे Required-Port के रूप में मोड-स्विच-इंटरफ़ेस EcuM_CurrentMode का अनुरोध करना होगा [SWS_EcuM_04133]।

यह उपयोग नोट स्वचालित रूप से जनरेट किया गया था और पूरी तरह से रिलीज़ R20-11 की विनिर्देश आवश्यकताओं पर आधारित है।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

टाइप 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.

टाइप EcuM_ShutdownModeType [SWS_EcuM_04101] 📄 PDF

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

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 799a0b090179 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और मान श्रेणी

डेटा प्रकार EcuM_ShutdownModeType uint16 पर आधारित है और हेडर फ़ाइल Rte_EcuM_Type.h के माध्यम से प्रदान किया जाता है [SWS_EcuM_04101]। यह ECU State Manager में कॉन्फ़िगर किए गए मोड को मैप करता है। इसकी मान सीमा (value range) में शामिल हैं:

  • EcuMSleepModeId के अनुसार कॉन्फ़िगर किए गए स्लीप मोड [SWS_EcuM_04101] तथा
  • ऑफसेट 256 + EcuMResetModeId से परिकलित कॉन्फ़िगर किए गए रीसेट मोड [SWS_EcuM_04101]।

परस्पर क्रिया और कॉल संदर्भ

यह प्रकार ECU Manager की तुल्यकालिक और पुनःप्रवेशी सेवाओं में उपयोग किया जाता है:

  • EcuM_SelectShutdownTarget विशिष्ट स्लीप मोड (लक्ष्य ECUM_SHUTDOWN_TARGET_SLEEP पर) या रीसेट तंत्र (लक्ष्य ECUM_SHUTDOWN_TARGET_RESET पर) निर्धारित करने के लिए इनपुट पैरामीटर के रूप में shutdownMode लेता है [SWS_EcuM_02822]।
  • EcuM_GetShutdownTarget EcuM_ShutdownModeType के एक पॉइंटर पैरामीटर के माध्यम से लौटाता है कि वर्तमान शटडाउन लक्ष्य के लिए कौन सा कॉन्फ़िगर किया गया स्लीप या रीसेट मोड चयनित है [SWS_EcuM_02824]।
  • EcuM_GetLastShutdownTarget पिछले शटडाउन प्रक्रिया के शटडाउन मोड को एक आउटपुट पैरामीटर के माध्यम से आउटपुट करता है [SWS_EcuM_02825]। सर्विस-इंटरफ़ेस EcuM_ShutdownTarget के माध्यम से यह कार्यक्षमता सॉफ़्टवेयर घटकों (SW-Cs) के लिए भी उपलब्ध है [SWS_EcuM_03011]।

त्रुटि प्रबंधन और सीमा शर्तें

फ़ंक्शन Std_ReturnType लौटाते हैं। उदाहरण के लिए, यदि EcuM_GetShutdownTarget या EcuM_GetLastShutdownTarget को एक NULL-पॉइंटर पास किया जाता है, तो कॉल E_NOT_OK के साथ विफल हो जाती है [SWS_EcuM_02824], [SWS_EcuM_02825]। सफल निष्पादन पर, सेवाएँ E_OK की रिपोर्ट करती हैं [SWS_EcuM_02822], [SWS_EcuM_03011]।

यह उपयोग नोट विनिर्देश आवश्यकताओं के आधार पर स्वचालित रूप से उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता 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#8cf600df
Content hash
8cf600df
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_ECUStateManager.pdf#nameddest=SWS_EcuM_02813

विषय मानचित्र

आरंभीकरण और स्थिति

2

सेवाएँ · On…

2

सेवाएँ · Release…

2

सेवाएँ · Request…

2

सेवाएँ · Start…

2

चक्रीय

1

विवरण दृश्य

रूपरेखा में कोई प्रविष्टि चुनें।

आरंभीकरण और स्थिति

EcuM_GetVersionInfo फ़ंक्शन

Returns the version information of this module.

void EcuM_GetVersionInfo (Std_VersionInfoType* versioninfo);
EcuM_Init फ़ंक्शन

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

void EcuM_Init (void);

सेवाएँ · Get…

EcuM_GetBootTarget फ़ंक्शन

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 फ़ंक्शन

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);
EcuM_GetExpiredWakeupEvents फ़ंक्शन

Gets expired wakeup events.

EcuM_WakeupSourceType EcuM_GetExpiredWakeupEvents (void);
EcuM_GetLastShutdownTarget फ़ंक्शन

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);
EcuM_GetPendingWakeupEvents फ़ंक्शन

Gets pending wakeup events.

EcuM_WakeupSourceType EcuM_GetPendingWakeupEvents (void);
EcuM_GetShutdownCause फ़ंक्शन

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 फ़ंक्शन

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);
EcuM_GetValidatedWakeupEvents फ़ंक्शन

Gets validated wakeup events.

EcuM_WakeupSourceType EcuM_GetValidatedWakeupEvents (void);
EcuM_GetWakeupTime फ़ंक्शन

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);

सेवाएँ · A…

EcuM_AL_DriverInitOne फ़ंक्शन

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

void EcuM_AL_DriverInitOne (void);
EcuM_AL_DriverInitZero फ़ंक्शन

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);
EcuM_AL_DriverRestart फ़ंक्शन

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

void EcuM_AL_DriverRestart (void);
EcuM_AL_Reset फ़ंक्शन

This callout shall take the code for resetting the ECU.

void EcuM_AL_Reset (EcuM_ResetType reset);
EcuM_AL_SetProgrammableInterrupts फ़ंक्शन

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);
EcuM_AL_SwitchOff फ़ंक्शन

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);

सेवाएँ · Set…

EcuM_SetAbsWakeupAlarm फ़ंक्शन

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 फ़ंक्शन

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 फ़ंक्शन

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);
EcuM_SetState फ़ंक्शन

Function called by BswM to notify about State Switch.

void EcuM_SetState (EcuM_StateType state);
EcuM_SetWakeupEvent फ़ंक्शन

Sets the wakeup event.

void EcuM_SetWakeupEvent (EcuM_WakeupSourceType sources);

सेवाएँ · Check…

EcuM_CheckRamHash फ़ंक्शन

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);
EcuM_CheckValidation फ़ंक्शन

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);
EcuM_CheckWakeup फ़ंक्शन

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);

सेवाएँ · Select…

EcuM_SelectBootTarget फ़ंक्शन

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 फ़ंक्शन

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 फ़ंक्शन

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);

सेवाएँ · On…

EcuM_OnGoOffOne फ़ंक्शन

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

void EcuM_OnGoOffOne (void);
EcuM_OnGoOffTwo फ़ंक्शन

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

void EcuM_OnGoOffTwo (void);

सेवाएँ · Release…

EcuM_ReleasePOST_RUN फ़ंक्शन

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);
EcuM_ReleaseRUN फ़ंक्शन

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);

सेवाएँ · Request…

EcuM_RequestPOST_RUN फ़ंक्शन

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);
EcuM_RequestRUN फ़ंक्शन

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);

सेवाएँ · Start…

EcuM_StartCheckWakeup फ़ंक्शन

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);
EcuM_StartWakeupSources फ़ंक्शन

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

void EcuM_StartWakeupSources (EcuM_WakeupSourceType wakeupSource);

सेवाएँ · अन्य

EcuM_AbortWakeupAlarm फ़ंक्शन

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);
EcuM_ClearWakeupEvent फ़ंक्शन

Clears wakeup events.

void EcuM_ClearWakeupEvent (EcuM_WakeupSourceType sources);
EcuM_DeterminePbConfiguration फ़ंक्शन

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);
EcuM_DisableWakeupSources फ़ंक्शन

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);
EcuM_EnableWakeupSources फ़ंक्शन

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);
EcuM_EndCheckWakeup फ़ंक्शन

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);
EcuM_ErrorHook फ़ंक्शन

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);
EcuM_GenerateRamHash फ़ंक्शन

see EcuM_CheckRamHash

void EcuM_GenerateRamHash (void);
EcuM_GoDownHaltPoll फ़ंक्शन

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);
EcuM_LoopDetection फ़ंक्शन

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

void EcuM_LoopDetection (void);
EcuM_Shutdown फ़ंक्शन

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

void EcuM_Shutdown (void);
EcuM_SleepActivity फ़ंक्शन

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);
EcuM_StartupTwo फ़ंक्शन

This function implements the STARTUP II state.

void EcuM_StartupTwo (void);
EcuM_StopWakeupSources फ़ंक्शन

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

void EcuM_StopWakeupSources (EcuM_WakeupSourceType wakeupSource);
EcuM_ValidateWakeupEvent फ़ंक्शन

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);

चक्रीय

EcuM_MainFunction फ़ंक्शन

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);

टाइप

currentMode टाइप

–

EcuM_ConfigType टाइप

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

EcuM_Mode टाइप

–

EcuM_ResetType टाइप

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

EcuM_RunStatusType टाइप

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.

EcuM_StateType टाइप

ECU State Manager states.

EcuM_TimeType टाइप

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

EcuM_UserType टाइप

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.