ECU State Manager (EcuM)
Controls ECU lifecycle states: Startup, Run, PostRun, Sleep, and Shutdown.
Funktionen — Übersicht
void EcuM_GetVersionInfo (Std_VersionInfoType* versioninfo);Returns the version information of this module.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.void EcuM_Init (void);Initializes the ECU state manager and carries out the startup procedure.void EcuM_StartupTwo (void);This function implements the STARTUP II state.void EcuM_Shutdown (void);Typically called from the shutdown hook, this function takes over execution control and will carry out GO OFF II activities.void EcuM_SetState (EcuM_StateType state);Function called by BswM to notify about State Switch.Std_ReturnType EcuM_RequestRUN (EcuM_UserType user);Places a request for the RUN state.Std_ReturnType EcuM_ReleaseRUN (EcuM_UserType user);Releases a RUN request previously done with a call to EcuM_RequestRUN.Std_ReturnType EcuM_RequestPOST_RUN (EcuM_UserType user);Places a request for the POST RUN state.Std_ReturnType EcuM_ReleasePOST_RUN (EcuM_UserType user);Releases a POST RUN request previously done with a call to EcuM_RequestPOST_RUN.Std_ReturnType EcuM_SelectShutdownTarget (EcuM_ShutdownTargetType shutdownTarget, EcuM_ShutdownModeType shutdownMode);EcuM_SelectShutdownTarget selects the shutdown target.Std_ReturnType EcuM_GetShutdownTarget (EcuM_ShutdownTargetType* shutdownTarget, EcuM_ShutdownModeType* shutdownMode);EcuM_GetShutdownTarget returns the currently selected shutdown target as set by EcuM_ SelectShutdownTarget.Std_ReturnType EcuM_GetLastShutdownTarget (EcuM_ShutdownTargetType* shutdownTarget, EcuM_ShutdownModeType* shutdownMode);EcuM_GetLastShutdownTarget returns the shutdown target of the previous shutdown process.Std_ReturnType EcuM_SelectShutdownCause (EcuM_ShutdownCauseType target);EcuM_SelectShutdownCause elects the cause for a shutdown.Std_ReturnType EcuM_GetShutdownCause (EcuM_ShutdownCauseType* shutdownCause);EcuM_GetShutdownCause returns the selected shutdown cause as set by EcuM_Select ShutdownCause.EcuM_WakeupSourceType EcuM_GetPendingWakeupEvents (void);Gets pending wakeup events.void EcuM_ClearWakeupEvent (EcuM_WakeupSourceType sources);Clears wakeup events.EcuM_WakeupSourceType EcuM_GetValidatedWakeupEvents (void);Gets validated wakeup events.EcuM_WakeupSourceType EcuM_GetExpiredWakeupEvents (void);Gets expired wakeup events.Std_ReturnType EcuM_SetRelWakeupAlarm (EcuM_UserType user, EcuM_TimeType time);EcuM_SetRelWakeupAlarm sets a user's wakeup alarm relative to the current point in time.Std_ReturnType EcuM_SetAbsWakeupAlarm (EcuM_UserType user, EcuM_TimeType time);EcuM_SetAbsWakeupAlarm sets the user's wakeup alarm to an absolute point in time.Std_ReturnType EcuM_AbortWakeupAlarm (EcuM_UserType user);Ecum_AbortWakeupAlarm aborts the wakeup alarm previously set by this user.Std_ReturnType EcuM_GetCurrentTime (EcuM_TimeType* time);EcuM_GetCurrentTime returns the current value of the EcuM clock (i.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).Std_ReturnType EcuM_SetClock (EcuM_UserType user, EcuM_TimeType time);EcuM_SetClock sets the EcuM clock time to the provided value.Std_ReturnType EcuM_SelectBootTarget (EcuM_BootTargetType target);EcuM_SelectBootTarget selects a boot target.Std_ReturnType EcuM_GetBootTarget (EcuM_BootTargetType* target);EcuM_GetBootTarget returns the current boot target - see EcuM_SelectBootTarget.void EcuM_SetWakeupEvent (EcuM_WakeupSourceType sources);Sets the wakeup event.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...void EcuM_ErrorHook (uint16 reason);The ECU State Manager will call the error hook if the error codes "ECUM_E_RAM_CHECK_ FAILED" or...void EcuM_AL_SetProgrammableInterrupts (void);If the configuration parameter EcuMSetProgrammableInterrupts is set to true, this callout Ecu M_AL_SetProgrammableInterrupts...void EcuM_AL_DriverInitZero (void);This callout shall provide driver initialization and other hardware-related startup activities for loading the post-build...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...void EcuM_AL_DriverInitOne (void);This callout shall provide driver initialization and other hardware-related startup activities in case of a power on reset.void EcuM_LoopDetection (void);If the configuration parameter EcuMResetLoopDetection is set to true, this callout EcuM_Loop Detection is called on every startup.void EcuM_OnGoOffOne (void);This call allows the system designer to notify that the GO OFF I state is about to be entered.void EcuM_OnGoOffTwo (void);This call allows the system designer to notify that the GO OFF II state is about to be entered.void EcuM_AL_SwitchOff (void);This callout shall take the code for shutting off the power supply of the ECU.void EcuM_AL_Reset (EcuM_ResetType reset);This callout shall take the code for resetting the ECU.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...void EcuM_GenerateRamHash (void);see EcuM_CheckRamHashvoid EcuM_SleepActivity (void);This callout is invoked periodically in all reduced clock sleep modes.void EcuM_StartCheckWakeup (EcuM_WakeupSourceType WakeupSource);This API is called by the ECU Firmware to start the CheckWakeupTimer for the corresponding WakeupSource.void EcuM_CheckWakeup (EcuM_WakeupSourceType wakeupSource);This callout is called by the EcuM to poll a wakeup source.void EcuM_EndCheckWakeup (EcuM_WakeupSourceType WakeupSource);This API is called by any SW Module whose wakeup source is checked asynchronously (e.uint8 EcuM_CheckRamHash (void);This callout is intended to provide a RAM integrity test.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...void EcuM_AL_DriverRestart (void);This callout shall provide driver initialization and other hardware-related startup activities in the wakeup case.void EcuM_StartWakeupSources (EcuM_WakeupSourceType wakeupSource);The callout shall start the given wakeup source(s) so that they are ready to perform wakeup validation.void EcuM_CheckValidation (EcuM_WakeupSourceType wakeupSource);This callout is called by the EcuM to validate a wakeup source.void EcuM_StopWakeupSources (EcuM_WakeupSourceType wakeupSource);The callout shall stop the given wakeup source(s) after unsuccessful wakeup validation.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.
Typen — Übersicht
struct EcuM_ConfigTypeA pointer to such a structure shall be provided to the ECU State Manager initialization routine for configuration.enum EcuM_RunStatusTypeResult of the Run Request Protocol sent to BswMEcuM_WakeupSourceTypeEcuM_WakeupSourceType defines a bitfield with 5 pre-defined positions (see Range).enum EcuM_WakeupStatusTypeThe type describes the possible states of a wakeup source.EcuM_ResetTypeThis type describes the reset mechanisms supported by the ECU State Manager.enum EcuM_StateTypeECU State Manager states.EcuM_ModecurrentModeEcuM_UserTypeUnique value for each user.EcuM_TimeTypeThis data type represents the time of the ECU Manager module.EcuM_ShutdownCauseTypeThis type describes the cause for a shutdown by the ECU State Manager.enum EcuM_ShutdownModeTypeThis data type represents the modes of the ECU Manager module.EcuM_ShutdownTargetType
Funktionen & Typen — Detailansicht
फ़ंक्शन EcuM_GetVersionInfo [SWS_EcuM_02813] 📄 PDF
void EcuM_GetVersionInfo (Std_VersionInfoType* versioninfo);
Returns the version information of this module.
फ़ंक्शन 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.
सिंक्रोनस और रीएंट्रेंट फ़ंक्शन 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)
समकालिक सेवा फ़ंक्शन 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.
सिंक्रोनस और नॉन-रीएंट्रेंट फ़ंक्शन 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.
सिंक्रोनस सर्विस फ़ंक्शन 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)सर्विस ID0x02के साथ [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.
उपयोग और कॉल संदर्भ
सिंक्रोनस फ़ंक्शन 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.
उपयोग
सिंक्रोनस और रीएंट्रेंट फ़ंक्शन 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.
उपयोग
तुल्यकालिक फ़ंक्शन 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.
उपयोग
सिंक्रोनस फ़ंक्शन 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.
उपयोग और सिमेंटिक्स
तुल्यकालिक और रीएंट्रेंट फ़ंक्शन 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.
तुल्यकालिक सर्विस फ़ंक्शन 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_GetShutdownTarget [SWS_EcuM_02824] 📄 PDF
Std_ReturnType EcuM_GetShutdownTarget (EcuM_ShutdownTargetType* shutdownTarget, EcuM_ShutdownModeType* shutdownMode);
EcuM_GetShutdownTarget returns the currently selected shutdown target as set by EcuM_ SelectShutdownTarget. EcuM_GetShutdownTarget is part of the ECU Manager Module port interface.
फ़ंक्शन EcuM_GetLastShutdownTarget [SWS_EcuM_02825] 📄 PDF
Std_ReturnType EcuM_GetLastShutdownTarget (EcuM_ShutdownTargetType* shutdownTarget, EcuM_ShutdownModeType* shutdownMode);
EcuM_GetLastShutdownTarget returns the shutdown target of the previous shutdown process. EcuM_GetLastShutdownTarget is part of the ECU Manager Module port interface.
फ़ंक्शन 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.
सिंक्रोनस फ़ंक्शन 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_GetPendingWakeupEvents [SWS_EcuM_02827] 📄 PDF
EcuM_WakeupSourceType EcuM_GetPendingWakeupEvents (void);
Gets pending wakeup events.
फ़ंक्शन EcuM_ClearWakeupEvent [SWS_EcuM_02828] 📄 PDF
void EcuM_ClearWakeupEvent (EcuM_WakeupSourceType sources);
Clears wakeup events.
समकालिक सेवा फ़ंक्शन 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_GetValidatedWakeupEvents [SWS_EcuM_02830] 📄 PDF
EcuM_WakeupSourceType EcuM_GetValidatedWakeupEvents (void);
Gets validated wakeup events.
फ़ंक्शन EcuM_GetExpiredWakeupEvents [SWS_EcuM_02831] 📄 PDF
EcuM_WakeupSourceType EcuM_GetExpiredWakeupEvents (void);
Gets expired wakeup events.
फ़ंक्शन EcuM_SetRelWakeupAlarm [SWS_EcuM_04054] 📄 PDF
Std_ReturnType EcuM_SetRelWakeupAlarm (EcuM_UserType user, EcuM_TimeType time);
EcuM_SetRelWakeupAlarm sets a user's wakeup alarm relative to the current point in time. EcuM_SetRelWakeupAlarm is part of the ECU Manager Module port interface.
फ़ंक्शन EcuM_SetAbsWakeupAlarm [SWS_EcuM_04057] 📄 PDF
Std_ReturnType EcuM_SetAbsWakeupAlarm (EcuM_UserType user, EcuM_TimeType time);
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.
फ़ंक्शन 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.
सिंक्रोनस फ़ंक्शन 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.
सिंक्रोनस और रीएंट्रेंट फ़ंक्शन 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.
समकालिक फ़ंक्शन 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_SetWakeupEvent [SWS_EcuM_02826] 📄 PDF
void EcuM_SetWakeupEvent (EcuM_WakeupSourceType sources);
Sets the wakeup event.
फ़ंक्शन 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.
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.
समकालिक और गैर-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.
उपयोग और कॉल शर्तें
कॉलआउट फ़ंक्शन 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.
उपयोग
कॉलआउट फ़ंक्शन 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.
फ़ंक्शन 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.
उपयोग और सिमेंटिक्स
फ़ंक्शन 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.
फ़ंक्शन 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.
उपयोग
फ़ंक्शन 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.
विनिर्देश के अनुसार, सिंक्रोनस फ़ंक्शन 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.
उपयोग
कॉलआउट फ़ंक्शन 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.
कॉलआउट 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.
फ़ंक्शन 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
फ़ंक्शन 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.
उपयोग और कॉल संदर्भ
फ़ंक्शन 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.
उपयोग और कॉल संदर्भ
[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.
कॉलआउट 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.
सिंक्रोनस फ़ंक्शन 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.
फ़ंक्शन 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.
सर्विस-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.
कॉलआउट 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.
कॉलआउट फ़ंक्शन 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().
फ़ंक्शन 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.
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.
उपयोग और कॉल संदर्भ
फ़ंक्शन 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
डेटा प्रकार 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.
[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.
प्रकार 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
प्रकार 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
तत्व 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_UserType [SWS_EcuM_91004] 📄 PDF
Unique value for each user.
टाइप EcuM_TimeType [SWS_EcuM_04102] 📄 PDF
This data type represents the time of the ECU Manager module.
टाइप 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.
उपयोग और मान श्रेणी
डेटा प्रकार 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_GetShutdownTargetEcuM_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)
टाइप EcuM_ShutdownTargetType [SWS_EcuM_04136] 📄 PDF
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
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल