DEENESPTFRRUARHIKOZHNL

FlexRay State Manager (FrSM)

ModulFrSM (FlexRay State Manager)
BSW-Modul-ID142
Standard-Header#include "FrSM.h"
SWS-SpezifikationAUTOSAR_SWS_FlexRayStateManager.pdf
ClusterFlexRay

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

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

ComM और BswM की ओर से प्रति FlexRay क्लस्टर बस संचार के वेकअप, स्टार्टअप और शटडाउन को नियंत्रित करता है।

FlexRay State Manager प्रत्येक FlexRay क्लस्टर के लिए एक स्टेट मशीन चलाता है, जो ComM की संचार आवश्यकताओं को FlexRay Interface के माध्यम से वेकअप, स्टार्टअप और शटडाउन में परिवर्तित करती है। FrSM_RequestComMode केवल आवश्यकता को संग्रहीत करता है; इसे केवल क्लस्टर के चक्रीय मुख्य फ़ंक्शन में संसाधित किया जाता है [SWS_FrSM_00020]। FrSM प्राप्त मोड की रिपोर्ट ComM और BswM को करता है। BswM की-स्लॉट-ओनली ऑपरेशन को समाप्त कर सकता है या सभी क्लस्टरों को केवल-प्राप्ति ऑपरेशन में स्विच कर सकता है। केवल FRSM_ONLINE और FRSM_LOW_NUMBER_OF_COLDSTARTERS को FullCom माना जाता है (SWS FrSM पृ. 38)।

FlexRay State Manager प्रत्येक FlexRay क्लस्टर के लिए ComM की संचार आवश्यकताओं को FlexRay Interface के कॉल्स में परिवर्तित करता है। यह ComM_BusSM_ModeIndication के माध्यम से बस मोड और BswM_FrSM_CurrentState के माध्यम से अपनी विस्तृत स्थिति की वापस रिपोर्ट करता है [SWS_FrSM_00096]। यह वैकल्पिक रूप से DEM, DET और FrNm के साथ-साथ अन्य FrIf सेवाओं का उपयोग करता है [SWS_FrSM_00097]। FrSm_Init सभी क्लस्टर मशीनों को FRSM_READY में ले जाता है (SWS FrSM पृ. 35)।

frsm_kontext ComM ComM FrSM FrSM (प्रत्येक FlexRay क्लस्टर के लिए एक स्टेट मशीन) ComM->FrSM FrSM_RequestComMode FrSM_GetCurrentComMode BswM BswM BswM->FrSM FrSm_SetEcuPassive FrSm_AllSlots SchM SchM SchM->FrSM FrSM_MainFunction_<FrSMCluster.ShortName> FrSM->ComM ComM_BusSM_ModeIndication FrSM->BswM BswM_FrSM_CurrentState FrIf FrIf FrSM->FrIf FrIf_StartCommunication, FrIf_AllowColdstart, FrIf_HaltCommunication, FrIf_SetTransceiverMode, FrIf_SendWUP, FrIf_AllSlots, … Dem Dem FrSM->Dem Dem_SetEventStatus Det Det FrSM->Det Det_ReportError FrNm FrNm FrSM->FrNm FrNm_StartupError CDD <Cdd> (optional) FrSM->CDD <Cdd>_SyncLossErrorIndication

संदर्भ आरेख: ComM और BswM नियंत्रित करते हैं, SchM क्लॉक करता है, FrIf निष्पादित करता है; त्रुटियाँ DEM, DET, FrNm और वैकल्पिक रूप से CDD को जाती हैं। स्रोत: [SWS_FrSM_00096], [SWS_FrSM_00097]

FrSM_RequestComMode केवल आवश्यकता को संग्रहीत करता है। केवल क्लस्टर का मुख्य फ़ंक्शन इसे संसाधित करता है (SWS FrSM पृ. 36, [SWS_FrSM_00118])। एक FullCom अनुरोध पर, शर्त WUReason यह तय करती है कि क्या FrSM स्वयं वेकअप पैटर्न भेजता है, एकतरफा वेकअप को दूसरे चैनल पर अग्रेषित करता है या सीधे शुरू होता है। स्टार्टअप में यह FrIf_StartCommunication को कॉल करता है और कोल्ड-स्टार्ट ECU के मामले में अतिरिक्त रूप से FrIf_AllowColdstart को कॉल करता है। POC normal active होने पर यह FRSM_ONLINE पर स्विच करता है (SWS FrSM पृ. 20, SWS FrSM पृ. 52)। यदि FullCom स्थिति से NoCom का अनुरोध किया जाता है, तो FrSM कॉल के दौरान ही संचार को रोक देता है। t_TrcvStdbyDelay के बाद यह ट्रांसीवर को स्टैंडबाय पर सेट करता है और FRSM_READY पर वापस लौटता है [SWS_FrSM_00209]।

frsm_zustand cluster_haupt Hauptautomat je FlexRay-Cluster cluster_ecu समानांतर: ECU पैसिव मोड (सभी क्लस्टर) start READY FRSM_READY start->READY FrSm_Init (T00) WAKEUP FRSM_WAKEUP READY->WAKEUP FullCom angefordert, eigenes Wecken STARTUP FRSM_STARTUP READY->STARTUP FullCom angefordert, kein eigenes Wecken WAKEUP->STARTUP wakeupFinished KEYSLOT FRSM_KEYSLOT_ONLY STARTUP->KEYSLOT POC normal active, केवल की-स्लॉट ONLINE FRSM_ONLINE (FullCom) STARTUP->ONLINE POC normal active KEYSLOT->ONLINE FrSm_AllSlots HALT FRSM_HALT_REQ KEYSLOT->HALT NoCom LOWNUM FRSM_LOW_NUMBER_OF_COLDSTARTERS (FullCom) ONLINE->LOWNUM Interpretation: lowNumberOfColdstarters OPASSIVE FRSM_ONLINE_PASSIVE ONLINE->OPASSIVE Interpretation: POC normal passive ONLINE->HALT NoCom LOWNUM->ONLINE Interpretation: genug Kaltstarter LOWNUM->HALT NoCom OPASSIVE->ONLINE Interpretation: wieder normal active OPASSIVE->HALT NoCom HALT->READY t_TrcvStdbyDelay समाप्त हो गया या FrSMTrcvStdbyDelay = 0 ECUACT FRSM_ECU_ACTIVE ECUPAS FRSM_ECU_PASSIVE ECUACT->ECUPAS FrSm_SetEcuPassive(TRUE) ECUPAS->ECUACT FrSm_SetEcuPassive(FALSE)

स्थिति आरेख: प्रति क्लस्टर आठ मुख्य स्थितियाँ और समानांतर ECU निष्क्रिय मोड। FRSM_ONLINE_PASSIVE और FRSM_LOW_NUMBER_OF_COLDSTARTERS के संक्रमण व्याख्यायित हैं। स्रोत: SWS FrSM पृ. 18, SWS FrSM पृ. 27

ComM के लिए, FullCom केवल FRSM_ONLINE और FRSM_LOW_NUMBER_OF_COLDSTARTERS में मान्य है (SWS FrSM पृ. 38)। BswM के लिए दो विशेष ऑपरेटिंग मोड उपलब्ध हैं। FrSm_AllSlots की-स्लॉट-ओनली ऑपरेशन को समाप्त करता है [SWS_FrSM_00172]। FrSm_SetEcuPassive सभी क्लस्टरों को केवल-प्राप्ति ऑपरेशन में बदल देता है [SWS_FrSM_00174]। FrSM_BswM_StateType दोनों आयामों को संयुक्त रूप से रिपोर्ट करता है [SWS_FrSM_00199]। R20-11 में कुछ फ़ंक्शनों को अभी भी FrSm_… कहा जाता है, और सर्विस ID बाद के रिलीज़ से भिन्न हैं [SWS_FrSM_00020]।

त्रुटि की स्थिति में, FrSM विकास त्रुटियों जैसे कि FRSM_E_UNINIT या FRSM_E_INV_HANDLE की रिपोर्ट करता है [SWS_FrSM_91001]। यदि सिंक्रोनाइज़ेशन सफल नहीं होता है, तो यह FrNm_StartupError को कॉल करता है। सिंक्रोनाइज़ेशन हानि की रिपोर्ट यह वैकल्पिक रूप से <Cdd>_SyncLossErrorIndication के माध्यम से करता है [SWS_FrSM_00190]।

भूमिका: ComM, BswM और FlexRay Interface के बीच बस स्टेट मैनेजर

FlexRay State Manager (FrSM) प्रत्येक FlexRay क्लस्टर के लिए ComM की संचार आवश्यकताओं को FlexRay Interface के नियंत्रण कॉल्स में अनुवादित करता है। ComM, FrSM_RequestComMode के माध्यम से NetworkHandleType के लिए एक ComM_ModeType का अनुरोध करता है [SWS_FrSM_00020]। FrSM, ComM_BusSM_ModeIndication के माध्यम से प्राप्त बस मोड की रिपोर्ट करता है, और BswM_FrSM_CurrentState के माध्यम से BswM को अपनी विस्तृत स्थिति की रिपोर्ट करता है [SWS_FrSM_00096]। यह नियंत्रक और ट्रांसीवर को कभी भी सीधे नियंत्रित नहीं करता है। इसके लिए यह FrIf फ़ंक्शनों का उपयोग करता है, जो विनिर्देश में FE_START (FrIf_StartCommunication) या FE_HALT (FrIf_HaltCommunication) जैसे कार्यात्मक तत्वों में समूहीकृत हैं (SWS FrSM पृ. 22)।

इसके अतिरिक्त, FrSM वैकल्पिक सेवाओं का उपयोग करता है: Dem_SetEventStatus, Det_ReportError, FrIf_AllSlots, FrIf_GetNumOfStartupFrames, FrIf_GetWakeupRxStatus, FrIf_SetWakeupChannel और FrNm_StartupError [SWS_FrSM_00097]। यह अपने प्रकारों को अन्य के अलावा ComM, ComStack_Types, DEM, Fr और FrIf से आयात करता है [SWS_FrSM_00095]। BswM, FrSM को सक्रिय रूप से भी नियंत्रित करता है। उदाहरण के लिए, यह डायग्नोस्टिक उपयोग मामलों के लिए FrSm_SetEcuPassive() के माध्यम से इसे निष्क्रिय मोड में डाल सकता है (EXP ModeMgmt पृ. 36)।

frsm_kontext ComM ComM FrSM FrSM (प्रत्येक FlexRay क्लस्टर के लिए एक स्टेट मशीन) ComM->FrSM FrSM_RequestComMode FrSM_GetCurrentComMode BswM BswM BswM->FrSM FrSm_SetEcuPassive FrSm_AllSlots SchM SchM SchM->FrSM FrSM_MainFunction_<FrSMCluster.ShortName> FrSM->ComM ComM_BusSM_ModeIndication FrSM->BswM BswM_FrSM_CurrentState FrIf FrIf FrSM->FrIf FrIf_StartCommunication, FrIf_AllowColdstart, FrIf_HaltCommunication, FrIf_SetTransceiverMode, FrIf_SendWUP, FrIf_AllSlots, … Dem Dem FrSM->Dem Dem_SetEventStatus Det Det FrSM->Det Det_ReportError FrNm FrNm FrSM->FrNm FrNm_StartupError CDD <Cdd> (optional) FrSM->CDD <Cdd>_SyncLossErrorIndication

संदर्भ आरेख: FrSM अनुरोधकर्ताओं ComM/BswM, क्लॉक जनरेटर SchM और निष्पादक FrIf के बीच स्थित होता है और DEM, DET, FrNm तथा एक वैकल्पिक CDD को त्रुटियों की रिपोर्ट करता है। स्रोत: [SWS_FrSM_00096], [SWS_FrSM_00097], [SWS_FrSM_00118], [SWS_FrSM_00190]

प्रति क्लस्टर स्टेट मशीन और समानांतर ECU-पैसिव मोड

प्रत्येक क्लस्टर के लिए FrSM आठ अवस्थाओं वाली एक समर्पित स्टेट मशीन बनाए रखता है: FRSM_READY, FRSM_WAKEUP, FRSM_STARTUP, FRSM_HALT_REQ, FRSM_ONLINE, FRSM_ONLINE_PASSIVE, FRSM_KEYSLOT_ONLY और FRSM_LOW_NUMBER_OF_COLDSTARTERS। प्रत्येक अवस्था कंट्रोलर की एक POC अवस्था से संबद्ध होती है:

  • FRSM_ONLINE पूर्ण संचार के साथ POC:normal active के अनुरूप है।
  • FRSM_ONLINE_PASSIVE POC:normal passive के अनुरूप है। क्लॉक सिंक्रोनाइज़ेशन त्रुटियों के कारण वहाँ कोई डेटा भेजा या प्राप्त नहीं किया जाता है।
  • FRSM_KEYSLOT_ONLY में केवल Key-Slots में ही ट्रांसमिशन की अनुमति है।

यह मैपिंग SWS FrSM पृ. 18 का वर्णन करती है। संक्रमण तालिका के रूप में परिभाषित हैं, और FrSM उनके कार्यों को वहाँ निर्दिष्ट क्रम में निष्पादित करता है (SWS FrSM पृ. 24)।

इसके समानांतर अवस्थाएँ FRSM_ECU_ACTIVE और FRSM_ECU_PASSIVE (SWS FrSM पृ. 18) उपलब्ध हैं। FrSm_SetEcuPassive ECU के सभी क्लस्टरों को संयुक्त रूप से केवल-रिसेप्शन मोड में या वापस [SWS_FrSM_00174] स्विच करता है। यदि कोई क्लस्टर इस दौरान FRSM_READY में नहीं है, तो FrSM उसके लिए FE_TRCV_NORMAL निष्पादित करता है (SWS FrSM पृ. 40)। FrSM_BswM_StateType दोनों आयामों को मैप करता है: प्रत्येक मुख्य अवस्था के लिए सफ़िक्स _ECU_PASSIVE वाला एक मान होता है, FRSM_BSWM_READY (0x00) से FRSM_LOW_NUMBER_OF_COLDSTARTERS_ECU_PASSIVE (0x0F) तक [SWS_FrSM_00199]। दोनों पैसिव अवधारणाओं को भ्रमित नहीं किया जाना चाहिए। ONLINE_PASSIVE सिंक्रोनाइज़ेशन विफलता का परिणाम है, जबकि ECU_PASSIVE एक अभीष्ट केवल-रिसेप्शन संचालन है।

बाह्य रूप से केवल वही मोड मान्य होता है जो FrSM_GetCurrentComMode प्रदान करता है। COMM_FULL_COMMUNICATION विशेष रूप से FRSM_ONLINE और FRSM_LOW_NUMBER_OF_COLDSTARTERS में लागू होता है, अन्य सभी अवस्थाओं में COMM_NO_COMMUNICATION लागू होता है (SWS FrSM पृ. 38, [SWS_FrSM_00024])। FlexRay पर SilentCom समर्थित नहीं है (SWS FrSM पृ. 18)।

frsm_zustand cluster_haupt Hauptautomat je FlexRay-Cluster cluster_ecu समानांतर: ECU पैसिव मोड (सभी क्लस्टर) start READY FRSM_READY start->READY FrSm_Init (T00) WAKEUP FRSM_WAKEUP READY->WAKEUP FullCom angefordert, eigenes Wecken STARTUP FRSM_STARTUP READY->STARTUP FullCom angefordert, kein eigenes Wecken WAKEUP->STARTUP wakeupFinished KEYSLOT FRSM_KEYSLOT_ONLY STARTUP->KEYSLOT POC normal active, केवल की-स्लॉट ONLINE FRSM_ONLINE (FullCom) STARTUP->ONLINE POC normal active KEYSLOT->ONLINE FrSm_AllSlots HALT FRSM_HALT_REQ KEYSLOT->HALT NoCom LOWNUM FRSM_LOW_NUMBER_OF_COLDSTARTERS (FullCom) ONLINE->LOWNUM Interpretation: lowNumberOfColdstarters OPASSIVE FRSM_ONLINE_PASSIVE ONLINE->OPASSIVE Interpretation: POC normal passive ONLINE->HALT NoCom LOWNUM->ONLINE Interpretation: genug Kaltstarter LOWNUM->HALT NoCom OPASSIVE->ONLINE Interpretation: wieder normal active OPASSIVE->HALT NoCom HALT->READY t_TrcvStdbyDelay समाप्त हो गया या FrSMTrcvStdbyDelay = 0 ECUACT FRSM_ECU_ACTIVE ECUPAS FRSM_ECU_PASSIVE ECUACT->ECUPAS FrSm_SetEcuPassive(TRUE) ECUPAS->ECUACT FrSm_SetEcuPassive(FALSE)

अवस्था आरेख: वेकअप → स्टार्टअप → ऑनलाइन तथा हॉल्ट → रेडी पाथ्स के साथ प्रति क्लस्टर मुख्य स्टेट मशीन, साथ ही सभी क्लस्टरों के लिए साझा ECU-पैसिव मोड। व्याख्या: FRSM_ONLINE_PASSIVE और FRSM_LOW_NUMBER_OF_COLDSTARTERS के संक्रमण अवस्था तालिका और शर्तों से निकाले गए हैं। स्रोत: SWS FrSM पृ. 27, SWS FrSM पृ. 18, SWS FrSM पृ. 20, [SWS_FrSM_00209]

FrSm_Init से पूर्ण संचार तक: वेकअप और स्टार्टअप

FrSm_Init सिंक्रोनस है और रीएंट्रेंट नहीं है। फ़ंक्शन को FrSM_ConfigType का एक पॉइंटर प्राप्त होता है, जो कार्यान्वयन-विशिष्ट पोस्ट-बिल्ड कॉन्फ़िगरेशन है ([SWS_FrSM_00013], [SWS_FrSM_00198])। यह सभी क्लस्टर स्टेट मशीनों को FRSM_READY (संक्रमण T00) पर सेट करता है और कॉन्फ़िगरेशन एड्रेस को संग्रहीत करता है। यदि FrSMDevErrorDetect सक्रिय है, तो यह सफल इनिशियलाइज़ेशन को भी याद रखता है (SWS FrSM पृ. 35)।

FrSM_RequestComMode एसिंक्रोनस रूप से कार्य करता है। फ़ंक्शन वांछित मोड को reqComMode के रूप में संग्रहीत करता है। इसे संबंधित क्लस्टर की स्टेट मशीन में FrSM_MainFunction_<FrSMCluster.ShortName> के अगले निष्पादन पर ही संसाधित किया जाता है (SWS FrSM पृ. 36)। प्रति क्लस्टर एक मुख्य फ़ंक्शन होता है, जो SchM_FrSm.h [SWS_FrSM_00118] के माध्यम से प्रदान किया जाता है। इसके कॉल चक्र को पैरामीटर FrSMMainFunctionCycleTime का पालन करना चाहिए (SWS FrSM पृ. 62)। प्रश्न (खुला)

FRSM_READY में FullCom अनुरोध पर, FrSM शर्त WUReason का मूल्यांकन करता है। यदि FrSMCheckWakeupReason सेट है, तो यह FrIf_GetTransceiverWUReason के माध्यम से प्रत्येक ट्रांसीवर से पूछताछ करता है। परिणाम NO_WU_BY_BUS, PARTIAL_WU_BY_BUS या ALL_WU_BY_BUS होता है; बिना जाँच के NO_WU_BY_BUS लागू होता है (SWS FrSM पृ. 20)। यदि ECU को बस द्वारा वेक किया गया था, तो यह स्वयं वेकअप किए बिना प्रारंभ होता है (SWS FrSM पृ. 52)। यदि डुअल-चैनल नोड पर वेकअप केवल एक चैनल पर आया, तो FE_SET_WU_CHANNEL_FORWARD इसे दूसरे चैनल पर अग्रेषित करता है (SWS FrSM पृ. 22, SWS FrSM पृ. 56)।

frsm_weckentscheidung start req reqComMode = FullCom in FRSM_READY start->req chk FrSMCheckWakeupReason? req->chk nobus WUReason := NO_WU_BY_BUS chk->nobus false query FrIf_GetTransceiverWUReason je Transceiver chk->query true wuecu Interpretation: FrSMIsWakeupEcu? nobus->wuecu wu WUReason? query->wu wu->wuecu NO_WU_BY_BUS forward FRSM_WAKEUP: FE_SET_WU_CHANNEL_FORWARD, FE_WAKEUP (anderer Kanal) wu->forward PARTIAL_WU_BY_BUS (Zweikanalknoten) startup FRSM_STARTUP: FE_START, ggf. FE_ALLOW_COLDSTART wu->startup ALL_WU_BY_BUS wakeup FRSM_WAKEUP: FE_SET_WU_CHANNEL_INITIAL, FE_WAKEUP wuecu->wakeup हाँ wuecu->startup नहीं wakeup->startup wakeupFinished forward->startup wakeupFinished

गतिविधि आरेख: WUReason से यह निर्धारित होता है कि FrSM स्वयं वेकअप करता है, वेकअप को अग्रेषित करता है या सीधे प्रारंभ होता है। व्याख्या: गैर-वेकअप ECUs के लिए शाखा FrSMIsWakeupEcu से ली गई है। स्रोत: SWS FrSM पृ. 20, SWS FrSM पृ. 22, SWS FrSM पृ. 54

FRSM_WAKEUP में FrSM FE_WAKEUP के माध्यम से वेकअप पैटर्न भेजता है, यानी प्रति कंट्रोलर FrIf_SendWUP। यह इसे तब तक दोहराता है जब तक कि FrSMNumWakeupPatterns तक नहीं पहुँच जाता या बस ट्रैफ़िक का पता नहीं चल जाता (busTrafficDetected)। यदि कोई कंट्रोलर किसी त्रुटि के कारण HALT में चला जाता है, तो ट्रांसमिशन निरस्त हो जाता है (SWS FrSM पृ. 27)।

frsm_weckmuster start init Eintritt in FRSM_WAKEUP: wakeupCounter := 1 start->init cond क्या wakeupCounter < FrSMNumWakeupPatterns और busTrafficDetected = false है? init->cond wait प्रतीक्षा करें, जब तक कि क्लस्टर के सभी नियंत्रक FR_READY में न आ जाएँ cond->wait हाँ done wakeupFinished = true cond->done नहीं halt क्या नियंत्रक त्रुटि के कारण HALT में है? wait->halt status vPOC!WakeupStatus? halt->status नहीं halt->done ja: Abbruch bus busTrafficDetected := true status->bus FR_WAKEUP_RECEIVED_HEADER या FR_WAKEUP_RECEIVED_WUP tx wakeupTransmitted := true status->tx FR_WAKEUP_TRANSMITTED notx wakeupTransmitted := false status->notx अन्यथा again क्या busTrafficDetected = false और wakeupCounter < FrSMNumWakeupPatterns है? bus->again tx->again notx->again fe FE_WAKEUP: FrIf_SendWUP je Controller again->fe हाँ inc wakeupCounter बढ़ाएँ again->inc नहीं fe->inc inc->cond

गतिविधि आरेख: vPOC!WakeupStatus के मूल्यांकन और कंट्रोलर HALT पर निरस्तीकरण के साथ वेकअप पैटर्नों का दोहराया जाने वाला ट्रांसमिशन। स्रोत: SWS FrSM पृ. 27, SWS FrSM पृ. 18

स्टार्टअप FrIf_StartCommunication से शुरू होता है। FrSM केवल FrSMIsColdstartEcu पर ही FrIf_AllowColdstart को कॉल करता है (SWS FrSM पृ. 22)। इसके बाद यह BswM को FRSM_STARTUP की रिपोर्ट करता है। जैसे ही POC स्थिति normal active होती है, FrIf_SetState(FRIF_GOTO_ONLINE), संदेश FRSM_ONLINE और ComM को मोड इंडिकेशन का पालन किया जाता है (SWS FrSM पृ. 50, SWS FrSM पृ. 52)।

सिंगल-चैनल वेकअप और FRSM_ONLINE तक स्टार्टअपComMBswMSchMFrSMFrIfDemFrSM_RequestComMode(NetworkHandle,COMM_FULL_COMMUNICATION)E_OKreqComMode gespeichert,मुख्य फ़ंक्शन में मूल्यांकनUse Case: Wecken (FRSM_WAKEUP)FrSM_MainFunction_<FrSMCluster.ShortName>loopक्लस्टर के सभी नियंत्रकों के लिएFrIf_GetTransceiverWUReason(CtrlIdx, ChnlIdx,TrcvWUReasonPtr)FRTRCV_WU_POWER_ONFrIf_SetTransceiverMode(CtrlIdx, ChnlIdx,FRTRCV_TRCVMODE_NORMAL)FrIf_SendWUP(CtrlIdx)BswM_FrSM_CurrentState(FRSM_BSWM_WAKEUP)FrSM_MainFunction_<FrSMCluster.ShortName>FrIf_GetPOCStatus(CtrlIdx, POCStatusPtr)FrIf_GetWakeupRxStatus(CtrlIdx)FR_POCSTATE_WAKEUPUse Case: Anlauf (FRSM_STARTUP)FrSM_MainFunction_<FrSMCluster.ShortName>loopक्लस्टर के सभी नियंत्रकों के लिएFrIf_StartCommunication(CtrlIdx)optFrSMIsColdstartEcuFrIf_AllowColdstart(CtrlIdx)BswM_FrSM_CurrentState(FRSM_BSWM_STARTUP)Use Case: Vollkommunikation (FRSM_ONLINE)FrSM_MainFunction_<FrSMCluster.ShortName>FrIf_GetPOCStatus(CtrlIdx, POCStatusPtr)FR_POCSTATE_NORMAL_ACTIVEDem_SetEventStatus(FRSM_E_CLUSTER_STARTUP,PASSED)FrIf_SetState(ClstIdx, FRIF_GOTO_ONLINE)BswM_FrSM_CurrentState(FRSM_BSWM_ONLINE)ComM_BusSM_ModeIndication(NetworkHandle,COMM_FULL_COMMUNICATION)

अनुक्रम आरेख: मुख्य फ़ंक्शन के कई चक्रों में वितरित, FRSM_ONLINE तक सिंगल-चैनल वेकअप और स्टार्टअप। व्याख्या: चक्रों के भीतर का क्रम विनिर्देशन के चित्रों से पुनर्गठित और सरलीकृत किया गया है। स्रोत: SWS FrSM पृ. 50, SWS FrSM पृ. 52, [SWS_FrSM_00118]

Key-Slot-Only संचालन, सभी स्लॉट्स की रिलीज़ और न्यूनतम कोल्डस्टार्टर्स

यदि कंट्रोलर pKeySlotOnlyEnabled के साथ कॉन्फ़िगर किया गया है, तो स्टार्टअप प्रारंभ में FRSM_KEYSLOT_ONLY में समाप्त होता है। यह अवस्था vPOCSlotMode ≠ AllSlots के साथ POC:normal active के अनुरूप है (SWS FrSM पृ. 18, SWS FrSM पृ. 55)। इसे FrSm_AllSlots [SWS_FrSM_00172] के माध्यम से छोड़ा जाता है। यह फ़ंक्शन क्लस्टर के प्रत्येक कंट्रोलर के लिए FrIf_AllSlots को कॉल करता है और केवल तभी E_OK लौटाता है यदि सभी कॉल्स का परिणाम E_OK रहा हो। इसे प्री-कंपाइल समय पर FrSMAllSlotsSupport के माध्यम से निष्क्रिय किया जा सकता है (SWS FrSM पृ. 41)। विनिर्देशन आरेख के अनुसार BswM पूर्ण संचालन को रिलीज़ करता है। इसके बाद ही FrSM ComM को FRSM_ONLINE और FullCom की रिपोर्ट करता है (SWS FrSM पृ. 57)।

Key-Slot-Only मोड में स्टार्टअप और सभी स्लॉट्स की रिलीज़ComMBswMSchMFrSMFrIfUse Case: Anlauf endet in FRSM_KEYSLOT_ONLYFrSM_MainFunction_<FrSMCluster.ShortName>loopक्लस्टर के सभी नियंत्रकों के लिएFrIf_GetPOCStatus(CtrlIdx, POCStatusPtr)FR_POCSTATE_NORMAL_ACTIVE,SlotMode = FR_SLOTMODE_KEYSLOTFrIf_SetState(ClstIdx, FRIF_GOTO_ONLINE)BswM_FrSM_CurrentState(FRSM_BSWM_KEYSLOT_ONLY)ComM के लिए अभी भी NoCom लागू होता है(FrSM_GetCurrentComMode)Use Case: Freigabe aller SlotsFrSm_AllSlots(NetworkHandle)loopक्लस्टर के सभी नियंत्रकों के लिएFrIf_AllSlots(CtrlIdx)E_OKE_OK (केवल तभी जब सभी कॉल E_OK हों)FrSM_MainFunction_<FrSMCluster.ShortName>FrIf_GetPOCStatus(CtrlIdx, POCStatusPtr)FR_POCSTATE_NORMAL_ACTIVE,SlotMode = FR_SLOTMODE_ALLBswM_FrSM_CurrentState(FRSM_BSWM_ONLINE)ComM_BusSM_ModeIndication(NetworkHandle,COMM_FULL_COMMUNICATION)

अनुक्रम आरेख: दो-चरणीय स्टार्टअप: पहले केवल Key-Slots, फिर FrSm_AllSlots के माध्यम से सभी स्लॉट्स की रिलीज़। विनिर्देशन का चित्र BswM संदेश को FRSM_ONLINE_KEYSLOT_ONLY के रूप में लेबल करता है, यहाँ R20-11 मान FRSM_BSWM_KEYSLOT_ONLY दिया गया है। स्रोत: SWS FrSM पृ. 57, SWS FrSM पृ. 55, [SWS_FrSM_00172], [SWS_FrSM_00199]

FRSM_LOW_NUMBER_OF_COLDSTARTERS का अर्थ पूर्ण संचार है, जिसमें क्लस्टर केवल Sync-Frames के माध्यम से सिंक्रोनाइज़ होता है (SWS FrSM पृ. 18)। शर्त lowNumberOfColdstarters तब पूरी होती है जब FrIf_GetNumOfStartupFrames() वैकल्पिक पैरामीटर FrSMMinNumberOfColdstarter द्वारा निर्दिष्ट की तुलना में कम स्टार्टअप फ़्रेम की रिपोर्ट करता है (SWS FrSM पृ. 20)।

NoCom पर वापसी और क्लस्टर टाइमर

जब स्टेट मशीन FRSM_ONLINE, FRSM_KEYSLOT_ONLY, FRSM_LOW_NUMBER_OF_COLDSTARTERS या FRSM_ONLINE_PASSIVE में हो, तब NoCom का अनुरोध किया जा सकता है। इस स्थिति में मुख्य फ़ंक्शन की प्रतीक्षा किए बिना FrSM_RequestComMode ही संक्रमण को संसाधित कर देता है (SWS FrSM पृ. 36)। इसमें FrIf_SetState(FRIF_GOTO_OFFLINE), FrIf_HaltCommunication और BswM को संदेश HALT_REQ शामिल हैं। बाद के निष्पादनों में FrSM ComM को NoCom की रिपोर्ट करता है, कंट्रोलर्स को पुनः प्रारंभ करता है, ट्रांसीवर्स को STANDBY में डालता है और READY की रिपोर्ट करता है (SWS FrSM पृ. 58)।

FullCom से NoCom में संक्रमणComMBswMSchMFrSMFrIfFrSM_RequestComMode(NetworkHandle,COMM_NO_COMMUNICATION)स्रोत स्थिति एक FullCom स्थिति है:कॉल में तुरंत संक्रमणFrIf_SetState(CtrlIdx, FRIF_GOTO_OFFLINE)FrIf_HaltCommunication(CtrlIdx)BswM_FrSM_CurrentState(FRSM_BSWM_HALT_REQ)E_OKFrSM_MainFunction_<FrSMCluster.ShortName>FrIf_GetPOCStatus(CtrlIdx, POCStatusPtr)ComM_BusSM_ModeIndication(NetworkHandle,COMM_NO_COMMUNICATION)t_TrcvStdbyDelay समाप्त होने के बाद या तुरंत,यदि FrSMTrcvStdbyDelay अनुपस्थित है या 0 हैFrIf_ControllerInit(CtrlIdx)FrIf_SetTransceiverMode(CtrlIdx, ChnlIdx,STANDBY)BswM_FrSM_CurrentState(FRSM_BSWM_READY)

अनुक्रम आरेख: FullCom से NoCom तक। हॉल्ट अनुरोध कॉल में सिंक्रोनस रूप से होता है, री-इनिशियलाइज़ेशन और स्टैंडबाय मुख्य फ़ंक्शन में समय-अंतराल के साथ होते हैं। व्याख्या: क्रम को विनिर्देशन आरेख से पुनर्गठित किया गया है। स्रोत: SWS FrSM पृ. 58, SWS FrSM पृ. 36, [SWS_FrSM_00209]

प्रति क्लस्टर FrSM कई टाइमर्स (SWS FrSM पृ. 21) के साथ कार्य करता है:

  • t1 FrIf_AllowColdstart में विलंब करता है। FrSMDurationT1 = 0 पर कॉल सीधे FrIf_StartCommunication के बाद होता है।
  • t2 निर्धारित करता है कि कितने समय बाद स्टार्टअप दोहराया जाता है।
  • t3 FullCom में संक्रमण की निगरानी करता है।
  • t4 यह सुनिश्चित करता है कि डुअल-चैनल नोड अपना कोल्डस्टार्ट इनहिबिट बिट साफ़ करे।
  • t_TrcvStdbyDelay री-इनिशियलाइज़ेशन और स्टैंडबाय में विलंब करता है। यदि FrSMTrcvStdbyDelay कॉन्फ़िगर नहीं है या 0 है, तो स्टेट मशीन तुरंत FRSM_HALT_REQ से FRSM_READY [SWS_FrSM_00209] पर चली जाती है।

प्रति FrSMCluster कॉन्फ़िगरेशन और इंटरफ़ेस स्थिति R20-11

कंटेनर FrSMCluster (1..*) एक क्लस्टर का वर्णन करता है, जिसमें एक ECU पर कई कंट्रोलर शामिल हो सकते हैं। इसमें शामिल हैं:

  • FrSMDurationT1 से FrSMDurationT4 तक के टाइमर्स,
  • भूमिकाएँ FrSMIsColdstartEcu और FrSMIsWakeupEcu,
  • FrSMNumWakeupPatterns और FrSMStartupRepetitions,
  • संदर्भ FrSMComMNetworkHandleRef और FrSMFrIfClusterRef।

यह सामग्री SWS FrSM पृ. 62 द्वारा वर्णित है। सामान्य रूप से कॉन्फ़िगर करने योग्य FrSM_GetVersionInfo और FrSMSyncLossErrorIndicationName के लिए FrSMVersionInfoApi भी हैं (SystemTemplate पृ. 1528, [SWS_FrSM_00029])।

कई विवरण बाद के रिलीज़ से आते हैं। R20-11 के लिए रिक्वायरमेंट्स लागू होती हैं, और वे कुछ बिंदुओं में भिन्न हैं:

  • फ़ंक्शंस के नाम FrSm_Init, FrSm_AllSlots और FrSm_SetEcuPassive हैं तथा वे FrSm.h के माध्यम से उपलब्ध हैं।
  • FrSM_RequestComMode की सर्विस ID 0x02 है और यह विभिन्न क्लस्टरों के लिए रीएंट्रेंट है। बाद के संदर्भों में 0x40 और अन्य पैरामीटर नामों का उल्लेख है।
  • FrSM_GetCurrentComMode की R20-11 में सर्विस ID 0x03 है।

प्रमाण: [SWS_FrSM_00013], [SWS_FrSM_00020], [SWS_FrSM_00024], SWS FrSM पृ. 36।

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

डेवलपमेंट त्रुटियों के लिए निम्नलिखित कोड्स परिभाषित हैं [SWS_FrSM_91001]:

  • FRSM_E_PARAM_POINTER: अमान्य पॉइंटर। सेवा तुरंत वापस लौटती है।
  • FRSM_E_INV_HANDLE: अमान्य नेटवर्क हैंडल।
  • FRSM_E_UNINIT: मॉड्यूल इनिशियलाइज़्ड नहीं है।
  • FRSM_E_INV_MODE: अमान्य संचार मोड।
  • FRSM_INIT_FAILED: इनिशियलाइज़ेशन विफल रहा।

कुछ मामलों को स्पष्ट रूप से विनियमित किया गया है। अमान्य हैंडल होने पर FrSm_AllSlots FRSM_E_INV_HANDLE की रिपोर्ट करता है और E_NOT_OK लौटाता है (SWS FrSM पृ. 41)। FrSm_SetEcuPassive इनिशियलाइज़ेशन से पहले डेवलपमेंट त्रुटि की रिपोर्ट करता है (SWS FrSM पृ. 40)। FrSM_GetCurrentComMode R20-11 में पूर्व इनिशियलाइज़ेशन के बिना E_NOT_OK [SWS_FrSM_00024] लौटाता है।

बस स्तर पर FrSM इस प्रकार प्रतिक्रिया करता है:

  • क्लॉक सिंक्रोनाइज़ेशन त्रुटियों के मामले में क्लस्टर FRSM_ONLINE_PASSIVE में चला जाता है (SWS FrSM पृ. 18)।
  • यदि सिंक्रोनाइज़ेशन सफल नहीं होता है, तो FrSM FrNm_StartupError को [SWS_FrSM_00097] पर कॉल करता है।
  • स्टार्टअप t2 के बाद दोहराया जाता है (SWS FrSM पृ. 21)। FrSMStartupRepetitions संभवतः दोहरावों की संख्या को सीमित करता है। प्रश्न (खुला)

FrSM स्टार्टअप स्थिति को DEM इवेंट FRSM_E_CLUSTER_STARTUP के रूप में रिपोर्ट करता है, सफलता की स्थिति में PASSED के साथ (SWS FrSM पृ. 52)। इवेंट IDs FrSMClusterDemEventParameterRefs में हैं (SWS FrSM पृ. 62)। वैकल्पिक रूप से, <Cdd>_SyncLossErrorIndication true के साथ सिंक्रोनाइज़ेशन हानि के बारे में सूचित करता है। false के साथ फ़ंक्शन यह इंगित करता है कि पुनः सिंक्रोनाइज़ हो गया है या FullCom अनुरोध वापस ले लिया गया है [SWS_FrSM_00190]। कॉन्फ़िगर किए गए फ़ंक्शन नाम के बिना यह रिपोर्ट छोड़ दी जाती है (SystemTemplate पृ. 1528)।

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

R20-11 की रिक्वायरमेंट्स और संबद्ध विनिर्देशन अंशों (आंशिक रूप से बाद के रिलीज़ से) पर आधारित AI-जनरेटेड गाइड। लिंक की गई रिक्वायरमेंट्स प्रामाणिक हैं; व्याख्याओं को इस रूप में चिह्नित किया गया है।

FlexRay State Manager (FrSM)

Controls the operational states and startup/wakeup of FlexRay clusters.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

फ़ंक्शन FrSm_Init [SWS_FrSM_00013] 📄 PDF

void FrSm_Init (const FrSM_ConfigType* FrSM_ConfigPtr);

Initializes the Flex Ray State Manager.

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

फ़ंक्शन FrSm_Init विनिर्देश [SWS_FrSM_00013] के अनुसार FlexRay State Manager (FrSM) के इनिशियलाइज़ेशन के लिए कार्य करता है। इसकी सर्विस ID 0x01 है और इसे हेडर फ़ाइल FrSm.h के माध्यम से घोषित किया गया है।

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

FrSm_Init का निष्पादन सिंक्रोनस रूप से होता है [SWS_FrSM_00013]। कॉल ठीक एक इनपुट पैरामीटर की अपेक्षा करता है:

  • FrSM_ConfigPtr: प्रकार const FrSM_ConfigType* की चयनित कॉन्फ़िगरेशन संरचना का पॉइंटर, जिसके माध्यम से मॉड्यूल का इनिशियलाइज़ेशन डेटा प्रदान किया जाता है [SWS_FrSM_00013]।

फ़ंक्शन का कोई रिटर्न मान नहीं है (void) और यह न तो इनपुट/आउटपुट पैरामीटर (inout) और न ही केवल-आउटपुट पैरामीटर (out) को परिभाषित करता है [SWS_FrSM_00013]।

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

निष्पादन संदर्भ के संबंध में, इंटरफ़ेस को नॉन-रीएंट्रेंट (Non Reentrant) के रूप में वर्गीकृत किया गया है [SWS_FrSM_00013]। इसलिए फ़ंक्शन के एक साथ या नेस्टेड कॉल अस्वीकार्य हैं। व्याख्या: FrSM की नियमित संचार या नियंत्रण सेवाओं का उपयोग किए जाने से पहले, कॉल आमतौर पर सिस्टम इनिशियलाइज़ेशन के दौरान किया जाना चाहिए। प्रश्न Q-881936607a7268bd (खुला)

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

तत्व विनिर्देश [SWS_FrSM_00013] में कोई रिटर्न कोड या DET या DEM संदेश जैसे त्रुटि प्रबंधन के विशिष्ट तंत्र प्रदर्शित नहीं किए गए हैं।

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

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

फ़ंक्शन FrSM_RequestComMode [SWS_FrSM_00020] 📄 PDF

Std_ReturnType FrSM_RequestComMode (NetworkHandleType NetworkHandle, ComM_ModeType ComM_Mode);

This API function is used by the Com M to startup or shutdown the communication on a Flex Ray cluster.

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

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

फ़ंक्शन FrSM_RequestComMode को Communication Manager (ComM) द्वारा किसी विशिष्ट FlexRay क्लस्टर पर संचार शुरू करने या बंद करने के लिए कॉल किया जाता है [SWS_FrSM_00020]। इंटरफ़ेस को हेडर FrSm.h के माध्यम से घोषित किया गया है और इसकी सर्विस ID 0x02 है [SWS_FrSM_00020]। चूंकि सेवा को अतुल्यकालिक रूप से निर्दिष्ट किया गया है, इसलिए फ़ंक्शन केवल स्विच अनुरोध की स्वीकृति को स्वीकार करता है, जबकि वास्तविक स्थिति परिवर्तन बाद में संसाधित किया जाता है [SWS_FrSM_00020]।

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

फ़ंक्शन संचार मोड को नियंत्रित करने के लिए दो इनपुट पैरामीटर की अपेक्षा करता है [SWS_FrSM_00020]:

  • NetworkHandle (प्रकार NetworkHandleType): उस FlexRay क्लस्टर को निर्धारित करता है जिसके लिए संचार मोड का अनुरोध किया गया है [SWS_FrSM_00020]।
  • ComM_Mode (प्रकार ComM_ModeType): निर्दिष्ट नेटवर्क के लिए ComM द्वारा वांछित संचार मोड शामिल है [SWS_FrSM_00020]।

Std_ReturnType प्रकार का रिटर्न मान अनुरोध सत्यापन के परिणाम को दर्शाता है [SWS_FrSM_00020]:

  • E_OK: मोड परिवर्तन का अनुरोध सफलतापूर्वक स्वीकार कर लिया गया था [SWS_FrSM_00020]।
  • E_NOT_OK: अनुरोध अस्वीकार कर दिया गया था और स्वीकार नहीं किया गया था [SWS_FrSM_00020]।

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

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

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

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

फ़ंक्शन FrSM_GetCurrentComMode [SWS_FrSM_00024] 📄 PDF

Std_ReturnType FrSM_GetCurrentComMode (NetworkHandleType NetworkHandle, ComM_ModeType* ComM_ModePtr);

This API function can be used to determine the current communication mode of a Flex Ray cluster.

फ़ंक्शन FrSM_GetVersionInfo [SWS_FrSM_00029] 📄 PDF

void FrSM_GetVersionInfo (Std_VersionInfoType* versioninfo);

This service returns the version information of this module. The version information includes:  Module Id  Vendor Id  Vendor specific version numbers (BSW00407 ). This function shall be pre compile time configurable On/ Off by the configuration parameter: FRSM_ VERSION_ INFO_ API Hint: If source code for caller and callee of this function is available this function should be realized as a macro. The macro should be defined in the modules header file.

फ़ंक्शन FrSm_AllSlots [SWS_FrSM_00172] 📄 PDF

Std_ReturnType FrSm_AllSlots (NetworkHandleType NetworkHandle);

Service FrSm_AllSlots.

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

अतुल्यकालिक सेवा फ़ंक्शन FrSm_AllSlots हेडर FrSm.h के माध्यम से प्रदान किया जाता है और निर्दिष्ट FlexRay क्लस्टर के लिए तथाकथित "Key Slot Only Mode" से बाहर निकलने का काम करता है [SWS_FrSM_00172]।

कॉल और पैरामीटर: संचार नेटवर्क की पहचान करने के लिए, संबंधित FlexRay क्लस्टर जिसके लिए स्विचिंग मोड का अनुरोध किया जाना है, पैरामीटर NetworkHandle को पास किया जाता है [SWS_FrSM_00172]। अन्य कोई पासिंग पैरामीटर मौजूद नहीं हैं [SWS_FrSM_00172]।

रिटर्न मान और सिमेंटिक्स: यदि स्विच अनुरोध सफलतापूर्वक स्वीकार कर लिया गया था, तो कॉल E_OK लौटाता है, या यदि अनुरोध अस्वीकार कर दिया गया था, तो E_NOT_OK लौटाता है [SWS_FrSM_00172]। चूंकि यह एक अतुल्यकालिक ऑपरेशन है, E_OK केवल कार्य की स्वीकृति की पुष्टि करता है; सभी स्लॉट्स के पूर्ण संचालन में वास्तविक संक्रमण संभवतः स्टेट मैनेजर संदर्भ में समय-विलंबित प्रभावी होगा। प्रश्न Q-d559e4ea5183ff7c (खुला)

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

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

फ़ंक्शन FrSm_SetEcuPassive [SWS_FrSM_00174] 📄 PDF

Std_ReturnType FrSm_SetEcuPassive (boolean FrSM_Passive);

This API function can be used to set all Flex Ray clusters of the ECU to a receive AUTOSAR CP R20 - of Document ID : AUTOSAR_S WS_FlexRayStateManager only mode.

टाइप FrSM_ConfigType [SWS_FrSM_00198] 📄 PDF

This type contains the implementation - specific post build time configuration structure AUTOSAR CP R20 - of Document ID : AUTOSAR_S WS_FlexRayStateManager that is for Fr SM_ Init.

टाइप FrSM_BswM_StateType [SWS_FrSM_00199] 📄 PDF

This type defines the states that are reported to the Bsw

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

उपयोग

गणना प्रकार (एन्यूमरेशन टाइप) FrSM_BswM_StateType [SWS_FrSM_00199] के अनुसार FlexRay State Manager (FrSM) की उन स्थितियों (स्टेट्स) को परिभाषित करता है, जिनकी रिपोर्ट BswM (Basic Software Mode Manager) को दी जाती है। प्रकार की घोषणा और उपलब्धता हेडर फ़ाइल FrSm.h के माध्यम से होती है [SWS_FrSM_00199]।

परस्पर क्रिया और मान श्रेणी

इस प्रकार के मानों का उपयोग इंटरफ़ेस BswM_FrSM_CurrentState के साथ मिलकर वर्तमान संचालन और संचार स्थिति को BswM मॉड्यूल तक पहुँचाने के लिए किया जाता है [SWS_FrSM_00199]। मान सीमा में निम्नलिखित एन्यूमरेशन मान शामिल हैं:

  • FRSM_BSWM_READY (0x00) और FRSM_BSWM_READY_ECU_PASSIVE (0x01)
  • FRSM_BSWM_STARTUP (0x02) और FRSM_BSWM_STARTUP_ECU_PASSIVE (0x03)
  • FRSM_BSWM_WAKEUP (0x04) और FRSM_BSWM_WAKEUP_ECU_PASSIVE (0x05)
  • FRSM_BSWM_HALT_REQ (0x06) और FRSM_BSWM_HALT_REQ_ECU_PASSIVE (0x07)
  • FRSM_BSWM_KEYSLOT_ONLY (0x08) और FRSM_BSWM_KEYSLOT_ONLY_ECU_PASSIVE (0x09)
  • FRSM_BSWM_ONLINE (0x0A) और FRSM_BSWM_ONLINE_ECU_PASSIVE (0x0B)
  • FRSM_BSWM_ONLINE_PASSIVE (0x0C) और FRSM_BSWM_ONLINE_PASSIVE_ECU_PASSIVE (0x0D)
  • FRSM_LOW_NUMBER_OF_COLDSTARTERS (0x0E) और FRSM_LOW_NUMBER_OF_COLDSTARTERS_ECU_PASSIVE (0x0F)

स्थितियों की युग्मित संरचना उल्लेखनीय है: प्रत्येक मूल स्थिति में एक नियमित समकक्ष के साथ-साथ प्रत्यय _ECU_PASSIVE वाला एक प्रकार होता है। यह संभवतः BswM को ECU के पैसिव मोड के साथ संयुक्त FlexRay क्लस्टर की संचार स्थिति की रिपोर्ट करने के लिए उपयोग किया जाता है, ताकि वह तदनुसार मोड परिवर्तनों का समन्वय कर सके। प्रश्न Q-f2d9296e40782b5a (खुला)

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

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

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

Record
AUTOSAR/AP/record/CP_MOD_FrSM
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_FrSM@rel:R20-11#966ee3f4
Content hash
966ee3f4
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_FlexRayStateManager.pdf#nameddest=SWS_FrSM_00013

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

विवरण दृश्य

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

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

FrSM_GetVersionInfo फ़ंक्शन

This service returns the version information of this module. The version information includes:  Module Id  Vendor Id  Vendor specific version numbers (BSW00407 ). This function shall be pre compile time configurable On/ Off by the configuration parameter: FRSM_ VERSION_ INFO_ API Hint: If source code for caller and callee of this function is available this function should be realized as a macro. The macro should be defined in the modules header file.

void FrSM_GetVersionInfo (Std_VersionInfoType* versioninfo);
FrSm_Init फ़ंक्शन

Initializes the Flex Ray State Manager.

void FrSm_Init (const FrSM_ConfigType* FrSM_ConfigPtr);

सेवाएँ

FrSm_AllSlots फ़ंक्शन

Service FrSm_AllSlots.

Std_ReturnType FrSm_AllSlots (NetworkHandleType NetworkHandle);
FrSM_GetCurrentComMode फ़ंक्शन

This API function can be used to determine the current communication mode of a Flex Ray cluster.

Std_ReturnType FrSM_GetCurrentComMode (NetworkHandleType NetworkHandle, ComM_ModeType* ComM_ModePtr);
FrSM_RequestComMode फ़ंक्शन

This API function is used by the Com M to startup or shutdown the communication on a Flex Ray cluster.

Std_ReturnType FrSM_RequestComMode (NetworkHandleType NetworkHandle, ComM_ModeType ComM_Mode);
FrSm_SetEcuPassive फ़ंक्शन

This API function can be used to set all Flex Ray clusters of the ECU to a receive AUTOSAR CP R20 - of Document ID : AUTOSAR_S WS_FlexRayStateManager only mode.

Std_ReturnType FrSm_SetEcuPassive (boolean FrSM_Passive);

टाइप

FrSM_BswM_StateType टाइप

This type defines the states that are reported to the Bsw

FrSM_ConfigType टाइप

This type contains the implementation - specific post build time configuration structure AUTOSAR CP R20 - of Document ID : AUTOSAR_S WS_FlexRayStateManager that is for Fr SM_ Init.