AUTOSAR COM
The AUTOSAR COM module provides signal-based communication services for inter-ECU exchange across diverse bus systems.
Funktionen — Übersicht
void Com_Init (const Com_ConfigType* config);This service initializes internal and external interfaces and variables of the AUTO- SAR COM module layer for the further...void Com_DeInit (void);This service stops the inter - ECU communication.void Com_IpduGroupStart (Com_IpduGroupIdType IpduGroupId, boolean initialize);Starts a preconfigured I - PDU group.void Com_IpduGroupStop (Com_IpduGroupIdType IpduGroupId);Stops a preconfigured I - PDU group.void Com_EnableReceptionDM (Com_IpduGroupIdType IpduGroupId);Enables the reception deadline monitoring for the I - PDUs within the given I - PDU group.void Com_DisableReceptionDM (Com_IpduGroupIdType IpduGroupId);Disables the reception deadline monitoring for the I - PDUs within the given I - PDU group.Com_StatusType Com_GetStatus (void);Returns the status of the AUTOSAR COM module.void Com_GetVersionInfo (Std_VersionInfoType* versioninfo);Returns the version information of this module.uint8 Com_SendSignal (Com_SignalIdType SignalId, const void* SignalDataPtr);The service Com_ Send Signal updates the signal object identified by Signal Id with the signal referenced by the Signal Data...uint8 Com_SendDynSignal (Com_SignalIdType SignalId, const void* SignalDataPtr, uint16 Length);The service Com_ Send Dyn Signal updates the signal object identified by Signal Id with the signal referenced by the Signal...uint8 Com_ReceiveSignal (Com_SignalIdType SignalId, void* SignalDataPtr);Com_ Receive Signal copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr.uint8 Com_ReceiveDynSignal (Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length);Com_ Receive Dyn Signal copies the data of the signal identified by Signal Id to the lo cation specified by Signal Data Ptr...uint8 Com_SendSignalGroup (Com_SignalGroupIdType SignalGroupId);The service Com_ Send Si gnal Group copies the content of the associated shadow buffer to the associated I - PDU.uint8 Com_ReceiveSignalGroup (Com_SignalGroupIdType SignalGroupId);The service Com_ Receive Signal Group copies the received signal group from the I - PDU to the shadow buffer.uint8 Com_SendSignalGroupArray (Com_SignalGroupIdType SignalGroupId, const uint8* SignalGroupArrayPtr);The service Com_ Send Signal Group Array copies the conte nt of the provided Signal Group Array Ptr to the associated I - PDU.uint8 Com_ReceiveSignalGroupArray (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr);The service Com_ Receive Signal Group Array copies the re ceived signal group arrayuint8 Com_ReceiveSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint8* MetaDataPtr);Com_ Receive Signal With Meta Data copies the data of the signal identified by Signal Id to the location specified by Signal...uint8 Com_ReceiveDynSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length, uint8* MetaDataPtr);Com_ Receive Dyn Signal With Meta Da ta copies the data of the signal identified by Signal Id to the location specified by...uint8 Com_ReceiveSignalGroupWith MetaData (Com_SignalGroupIdType SignalGroupId, uint8* MetaDataPtr); ⚠️The service Com_ Receive Signal Group With Meta Data copies the received signal group from the I - PDU to the shadow buffer.void Com_ReceiveSignalGroupArrayWith MetaData (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr, uint8* MetaDataPtr); ⚠️The service Com_ Receive Signal Group Array With Meta Data copies the received si gnal group array representation from the PDU...uint8 Com_SendSignalWith MetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint8* MetaDataPtr); ⚠️The service Com_ Send Si gnal With Meta Data updates the signal object identified by Signal Id with the signal referenced by...uint8 Com_SendDynSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint16 Length, uint8* MetaDataPtr);The service Com_ Send Dyn Signal With Meta Data updates the signal object identified by Signal Id wit h the signal referenced...uint8 Com_SendSignalGroupWith MetaData (Com_SignalGroupIdType SignalGroupId, uint8* MetaDataPtr); ⚠️The service Com_ Send Signal Group With Meta Data copies the content of the associated shadow buffer to the associated I - PDU.uint8 Com_SendSignalGroupArrayWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr, uint8* MetaDataPtr);The service Com_ Send Signal Group Array With Meta Data copies the content of the provided Signal Group Array Ptr to the...uint8 Com_InvalidateSignal (Com_SignalIdType SignalId);The service Com_ In validate Signal invalidates the signal with the given Signal Id by setting its value to its configured Com...uint8 Com_InvalidateSignalGroup (Com_SignalGroupIdType SignalGroupId);The service Co m_ Invalidate Signal Group invalidates all group signals of the signal group with the given Signal Group Id by...Std_ReturnType Com_TriggerIPDUSend (PduIdType PduId);By a call to Com_ Trigger IPDUSend the I - PDU with the given ID is triggered for transmission.Std_ReturnType Com_TriggerIPDUSendWithMetaData (PduIdType PduId, const uint8* MetaData);By a call to Com_ Trigger IPDUSend With Meta Data the AUTOSAR COM module updates its internal metadata for the I - PDU with...void Com_SwitchIpduTxMode (PduIdType PduId, booleanMode); ⚠️The service Com_ Switch Ipdu Tx Mode sets the transmi ssion mode of the I - PDU refe- renced by Pdu Id to Mode.Std_ReturnType Com_TriggerTransmit (PduIdType TxPduId, PduInfoType* PduInfoPtr);Within this API , the upper layer module (called module) shall check whether the available data fits into the buffer size...void Com_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);Indication of a received PDU from a lower layer communication interface module.void Com_TpRxIndication (PduIdType id, Std_ReturnType result);Called after an I - PDU has been received via the TP API, the result indicates whe- ther the transmission was successful or not.void Com_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);The lower layer communication interface module confirms the transmission of avoid Com_TpTxConfirmation (PduIdType id, Std_ReturnType result);This function is called after the I - PDU has been transmitted on its network, the result indicates whether the transmission...BufReq_ReturnType Com_StartOfReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);Service Com_StartReception.BufReq_ReturnType Com_CopyRxData (PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);Service Com_CopyRxData.BufReq_ReturnType Com_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);Service Com_CopyTxData.void Com_MainFunctionRx (void);This function performs the processing of the AUTOSAR COM module's receive processing that are not directly handled within the...void Com_MainFunctionTx (void);This function performs the processing of the AUTOSAR COM module's transmissi- on activities that are not directly handled...void Com_MainFunction RouteSignals (void); ⚠️Calls the signal gateway part of the AUTOSAR COM module to forward received signals to be routed.void Com_CbkTxAck (void);This callback represents notification class 2 of [17].void Com_CbkTxErr (void);This callback corresponds to notification class 4 of [17].void Com_CbkTxTOut (void);This callback corresponds to notification class 4 of [17].void Com_CbkRxAck (void);This callback represents notification class 1 of [17].void Com_CbkRxTOut (void);This callback corresponds to notification class 3 of [17].void Com_CbkInv (void);This callback function corresponds to SWS_ Com_00680.void Com_CbkCounterErr (PduIdType ComPduId, uint8 ExpectedCounter, uint8 ReceivedCounter);This function is called immediately, if the AUTOSAR COM module receives an I - PDU counter that differs from the expected one.void Com_CbkTxPrep (void);This callback function indicates that the signals/ signal groups of a dedicated Com_ Main Function Tx instance will now be...boolean Com_RxIpduCallout (PduIdType PduId, const PduInfoType* PduInfoPtr);The I - PDU callout on receiver side can be configured to implement user - defined receive filtering mechanisms.boolean Com_TxIpduCallout (PduIdType PduId, PduInfoType* PduInfoPtr);The I - PDU callout on sender side can be configured for example to implement user - defined transmission filtering or user -...
Typen — Übersicht
enum Com_StatusTypeThis is a status value returned by the API service Com_ Get Status().Com_SignalIdTypeThe AUTOSAR COM module's signal object identifier.Com_SignalGroupIdTypeThe AUTOSAR COM module's signal group object identifier.Com_IpduGroupIdTypeThe AUTOSAR COM I - PDU module's group object identifier.struct Com_ConfigTypeThis is the type of the data structure containing the initialization data for COM.
Funktionen & Typen — Detailansicht
دالة Com_Init [SWS_Com_00432] 📄 PDF
void Com_Init (const Com_ConfigType* config);
This service initializes internal and external interfaces and variables of the AUTO- SAR COM module layer for the further processing. After calling this function the inter - ECU communication is still disabled. In configurations, in which Com is assigned to mo re than one partition (i.e. Com_ Main Functions are mapped to partitions), Com may provide one init function per AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM partition.
الاستخدام والدلالات
تقوم الدالة Com_Init بتهيئة الواجهات والمتغيرات الداخلية والخارجية لطبقة AUTOSAR COM للمعالجة اللاحقة ([SWS_Com_00432]). يتم الاستدعاء بشكل متزامن وهو غير قابل لإعادة الدخول (Non Reentrant) ([SWS_Com_00432]). وتُستخدم config كمعلمة تمرير كمؤشر إلى بيانات تهيئة مكوّن COM (const Com_ConfigType* config)؛ ولا توجد قيمة إرجاع ([SWS_Com_00432]). في تكوينات الأقسام المتعددة (Multi-Partition)، حيث تُعيّن الوظائف الرئيسية لمكوّن COM لعدة أقسام، يمكن لـ COM توفير دالة تهيئة خاصة بكل قسم ([SWS_Com_00432]).
شروط الترتيب ومعالجة الأخطاء
تعد التهيئة عبر Com_Init هي المتطلب الوظيفي للاستخدام المنتظم لواجهات COM: إذا تم استدعاء خدمة API قبل Com_Init أو بعد استدعاء Com_DeInit، يتم إنشاء رمز الخطأ COM_E_UNINIT (0x02) ([SWS_Com_00804]). ويُستثنى من فحص الخطأ هذا فقط استدعاءات Com_GetStatus وCom_GetVersionInfo وCom_MainFunctionRx وCom_MainFunctionTx وCom_MainFunctionRouteSignals ([SWS_Com_00804]).
التفاعل أثناء تهيئة PDU والإشارة
بعد تنفيذ Com_Init، يظل الاتصال الفعلي بين وحدات التحكم الإلكترونية (Inter-ECU) معطلاً في البداية ([SWS_Com_00432]). تفسير: لذلك، يُرجح أن يكون التنشيط اللاحق لمجموعات I-PDU المعنية مطلوبًا لعملية الإرسال والاستقبال العادية. سؤال Q-8407f9a6281c3764 (مفتوح) ومع ذلك، ينفذ Com_Init بالفعل تهيئات مباشرة لهياكل بيانات معينة:
- إذا لم تكن I-PDU مخصصة لأي مجموعة I-PDU، فإن COM يبدأ تشغيل I-PDU هذه بالفعل ضمن
Com_Initكما لو تم تشغيلها عبرCom_IpduGroupStartمع ضبط معلمة التهيئة ([SWS_Com_00840]). - بالنسبة لمجموعات الإشارات ذات الوصول إلى المصفوفة الذي تم تكوينه (
ComSignalGroupArrayAccess)، يقومCom_Initبتهيئة منطقة المخزن المؤقت المقابلة لـ I-PDU بناءً على القيم الأولية (ComSignalInitValue) لجميع إشارات المجموعة المضمنة ([SWS_Com_00850]).
تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي استنادًا إلى مواصفة AUTOSAR R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I2)
دالة Init [SWS_Com_00130] 📄 PDF
void Com_DeInit (void);
This service stops the inter - ECU communication. All started I - PDU groups are stop- ped and have to be started again, if needed, after Com_ Init is called. By a call to Com_ De Init the AUTOSAR COM module is put into an not initialized state.
الاستخدام وسياق الاستدعاء
تنهي الدالة المتزامنة [SWS_Com_00130] (تفسير: مُدرجة في الحمولة كـ 'Init'، ولكنها تحدد التوقيع void Com_DeInit(void)) الاتصال بين وحدات التحكم الإلكترونية (Inter-ECU) وتضع وحدة AUTOSAR COM في الحالة غير المهيأة ([SWS_Com_00130]). سؤال Q-3e91d7d0a140cee0 (مفتوح) تمتلك الخدمة Service-ID 0x02، ولا تتطلب معلمات تمرير، ولا تُرجع أي قيمة، ويتم توفيرها عبر ملف الرأس Com.h ([SWS_Com_00130]).
التزامن والقيود
فيما يتعلق بسياق الاستدعاء، تم تعريف الدالة على أنها غير قابلة لإعادة الدخول (Non Reentrant) ([SWS_Com_00130]). وبالتالي، فإن الاستدعاء المتوازي أو المتعدد دون إعادة تهيئة مسبقة غير مسموح به.
التفاعل ودورة الحياة
تؤدي إزالة التهيئة إلى إيقاف كافة مجموعات I-PDU التي بدأت سابقًا ([SWS_Com_00130]). لاستئناف الاتصال لاحقًا، تنطبق شروط الترتيب التالية:
- يجب إعادة تهيئة الوحدة عبر الخدمة المتزامنة وغير القابلة لإعادة الدخول
Com_Initمع تمرير مؤشر التكوينconfig([SWS_Com_00432]). - نظرًا لأن الاتصال بين وحدات التحكم الإلكترونية (Inter-ECU) يظل معطلاً بعد استدعاء
Com_Init([SWS_Com_00432])، يجب بعد ذلك إعادة بدء مجموعات I-PDU المطلوبة صراحةً ([SWS_Com_00130]).
تم توليد ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR CP R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_IpduGroupStart [SWS_Com_91001] 📄 PDF
void Com_IpduGroupStart (Com_IpduGroupIdType IpduGroupId, boolean initialize);
Starts a preconfigured I - PDU group. For example, cyclic I - PDUs will be sent out cyclically after the call of Com_ Ipdu Group Start(). If Initialize is true all I - PDUs of the I - PDU group shall be (r e - )initialized before the I - PDU group is started. That is they shall behave like after a start - up of COM, for example the old_ value of the filter ob- jects and shadow buffers of signal groups have to be (re - )initialized.
تُستخدم الدالة المتزامنة Com_IpduGroupStart (معرّف الخدمة 0x03، الترويسة Com.h) لبدء تشغيل مجموعة I-PDU مسبقة التهيئة [SWS_Com_91001]. وبعد الاستدعاء، يتم تفعيل نقل وحدات I-PDU التابعة؛ على سبيل المثال، يتم إرسال وحدات I-PDU الدورية بشكل دوري من الآن فصاعدًا [SWS_Com_91001].
الاستخدام والمعلمات
ليس للدالة أي قيمة معادة وتستقبل معلمتي دخل [SWS_Com_91001]:
IpduGroupId: معرّف فريد لمجموعة I-PDU مسبقة التهيئة المراد بدء تشغيلها [SWS_Com_91001].initialize: راية منطقية لطلب تهيئة بيانات وحدات I-PDU لهذه المجموعة قبل البدء [SWS_Com_91001].
إذا تم ضبط initialize على true، فيجب (إعادة) تهيئة جميع وحدات I-PDU للمجموعة قبل البدء [SWS_Com_91001]. تتصرف وحدات I-PDU بعد ذلك كما لو كانت مباشرة بعد بدء تشغيل وحدة COM [SWS_Com_91001]. ويشمل ذلك على وجه الخصوص إعادة تهيئة القيمة السابقة (old_value) لكائنات التصفية بالإضافة إلى المخازن المؤقتة الظلية (shadow buffers) لمجموعات الإشارات [SWS_Com_91001].
التزامن والقيود
فيما يتعلق بالتزامن، فإن Com_IpduGroupStart قابلة لإعادة الدخول لمجموعات I-PDU مختلفة، لكنها صراحةً غير قابلة لإعادة الدخول لنفس مجموعة I-PDU [SWS_Com_91001].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي استنادًا إلى مواصفات AUTOSAR R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I2)
دالة Com_IpduGroupStop [SWS_Com_91002] 📄 PDF
void Com_IpduGroupStop (Com_IpduGroupIdType IpduGroupId);
Stops a preconfigured I - PDU group. For example, cyclic I - PDUs will be stopped after the call of Com_ Ipdu Group Stop().
الاستخدام
تُستخدم الدالة Com_IpduGroupStop لإيقاف مجموعة I-PDU مسبقة التهيئة في وحدة AUTOSAR COM [SWS_Com_91002]. يتوفر الإعلان عبر ملف الترويسة Com.h وله معرّف الخدمة 0x04 [SWS_Com_91002].
- صيغة الاستدعاء:
void Com_IpduGroupStop (Com_IpduGroupIdType IpduGroupId)[SWS_Com_91002]. - المعلمات: تُمرَّر معلمة الدخل
IpduGroupIdمن النوعCom_IpduGroupIdTypeكمعلمة وحيدة، والتي تحدد معرّف مجموعة I-PDU المراد إيقافها [SWS_Com_91002]. لا توجد معلمات إضافية للدخل/الخرج (inout) أو للخرج (out) [SWS_Com_91002]. - القيمة المرجعة: لا تُرجع الواجهة أي قيمة (
void) [SWS_Com_91002]. - سلوك التنفيذ: تتم معالجة الاستدعاء بشكل متزامن [SWS_Com_91002]. بعد استدعاء
Com_IpduGroupStop، يتوقف اتصال المجموعة المعنية؛ ويؤدي هذا على سبيل المثال إلى عدم إرسال وحدات I-PDU الدورية للمجموعة بعد الآن [SWS_Com_91002].
التزامن والقيود
فيما يتعلق بالتزامن وإمكانية إعادة الدخول، تم تحديد أن Com_IpduGroupStop قابلة لإعادة الدخول لمجموعات I-PDU مختلفة، ولكن لا يجوز تنفيذها بشكل غير قابل لإعادة الدخول لنفس مجموعة I-PDU [SWS_Com_91002]. وإذا تم استدعاء الدالة في بيئات متعددة المهام أو متعددة النوى، فيجب على البرمجيات المستدعية ضمان استبعاد الاستدعاءات المتزامنة لنفس معرّف المجموعة.
تم توليد هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR CP R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_EnableReceptionDM [SWS_Com_91004] 📄 PDF
void Com_EnableReceptionDM (Com_IpduGroupIdType IpduGroupId);
Enables the reception deadline monitoring for the I - PDUs within the given I - PDU group.
تُستخدم الدالة المتزامنة Com_EnableReceptionDM لتفعيل مراقبة الموعد النهائي للاستلام (Reception Deadline Monitoring) لجميع وحدات I-PDU داخل مجموعة I-PDU محددة [SWS_Com_91004].
الاستخدام وسياق الاستدعاء: أُعلنت الدالة عبر ملف الترويسة Com.h ولها معرّف الخدمة 0x06 [SWS_Com_91004]. كمعلمة تمرير وحيدة، تتوقع البنية void Com_EnableReceptionDM (Com_IpduGroupIdType IpduGroupId) معلمة الدخل IpduGroupId من النوع Com_IpduGroupIdType، والتي تمثل معرّف مجموعة I-PDU المراد تفعيل مراقبة المواعيد النهائية لوحدات I-PDU المتضمنة فيها [SWS_Com_91004]. ويتم التنفيذ بشكل متزامن [SWS_Com_91004]. لا توجد معلمات دخل/خرج ولا معلمات خرج، ولا يتم إرجاع أي قيمة (نوع الإرجاع void) [SWS_Com_91004].
التزامن والقيود: فيما يتعلق بالتزامن، فإن Com_EnableReceptionDM قابلة لإعادة الدخول لمجموعات I-PDU مختلفة، ولكنها غير قابلة لإعادة الدخول لنفس مجموعة I-PDU [SWS_Com_91004]. ولذلك، فإن الاستدعاءات المتزامنة لنفس معرّف المجموعة غير مسموح بها ويجب تجنبها في سياق الاستدعاء [SWS_Com_91004].
تم إنشاء ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى مواصفات AUTOSAR Classic الإصدار R20-11.
دالة Com_DisableReceptionDM [SWS_Com_91003] 📄 PDF
void Com_DisableReceptionDM (Com_IpduGroupIdType IpduGroupId);
Disables the reception deadline monitoring for the I - PDUs within the given I - PDU group.
تعطل الدالة المتزامنة Com_DisableReceptionDM مراقبة الموعد النهائي للاستلام (Reception Deadline Monitoring) لجميع وحدات I-PDU داخل مجموعة I-PDU الممررة [SWS_Com_91003].
الاستخدام
يتم الاستدعاء عبر الواجهة void Com_DisableReceptionDM(Com_IpduGroupIdType IpduGroupId) مع معرّف مجموعة I-PDU المعنية كمعلمة دخل IpduGroupId [SWS_Com_91003]. لا تحتوي الدالة على معلمات دخل/خرج ولا معلمات خرج ولا تُرجع أي قيمة (void) [SWS_Com_91003]. الخدمة مُعلنة بمعرّف الخدمة 0x05 في ملف الترويسة Com.h [SWS_Com_91003].
التزامن والقيود
فيما يتعلق بسلوك التزامن، فإن الخدمة قابلة لإعادة الدخول لمجموعات I-PDU مختلفة، ولكن لا يجوز استدعاؤها بشكل متزامن (non-reentrant) لنفس مجموعة I-PDU [SWS_Com_91003].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.
دالة Com_GetStatus [SWS_Com_00194] 📄 PDF
Com_StatusType Com_GetStatus (void);
Returns the status of the AUTOSAR COM module. Availab le via Com.h
دالة Com_GetVersionInfo [SWS_Com_00426] 📄 PDF
void Com_GetVersionInfo (Std_VersionInfoType* versioninfo);
Returns the version information of this module.
دالة Com_SendSignal [SWS_Com_00197] 📄 PDF
uint8 Com_SendSignal (Com_SignalIdType SignalId, const void* SignalDataPtr);
The service Com_ Send Signal updates the signal object identified by Signal Id with the signal referenced by the Signal Data Ptr parameter. Avai lable via Com.h
تُستخدم الدالة Com_SendSignal لتحديث كائن إشارة تم تحديده بواسطة SignalId بالبيانات التي يشير إليها المؤشر SignalDataPtr [SWS_Com_00197]. وتتم معالجة الاستدعاء بشكل غير متزامن [SWS_Com_00197].
قيم الإرجاع ومعالجة الأخطاء
تعيد الدالة حالة من النوع uint8 [SWS_Com_00197]:
E_OK: تم قبول الخدمة [SWS_Com_00197].COM_SERVICE_NOT_AVAILABLE: تم إيقاف مجموعة I-PDU المقترنة أو فشل الاستدعاء بسبب خطأ في التطوير [SWS_Com_00197].COM_BUSY: يحدث عندما يكون المخزن المؤقت لـ TP مقفلاً لمعالجة أنواع البيانات الكبيرة [SWS_Com_00197].
التزامن والقيود
فيما يتعلق بقابلية إعادة الدخول، فإن Com_SendSignal غير قابلة لإعادة الدخول لنفس الإشارة، ولكن يجوز استدعاؤها بالتزامن لإشارات مختلفة [SWS_Com_00197]. ويتم توفير الواجهة عبر الرأس Com.h [SWS_Com_00197].
التفاعل والتكوين
إذا تم تحديد التكوين ComSignalGroupArrayAccess لمجموعة إشارات، فلن يتم دعم استدعاء Com_SendSignal لإشارات المجموعة الخاصة بمجموعة الإشارات هذه [SWS_Com_00843].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفات AUTOSAR.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_SendDynSignal [SWS_Com_00627] 📄 PDF
uint8 Com_SendDynSignal (Com_SignalIdType SignalId, const void* SignalDataPtr, uint16 Length);
The service Com_ Send Dyn Signal updates the signal object identified by Signal Id with the signal referenced by the Signal Data Ptr parameter.
تُستخدم دالة AUTOSAR الكلاسيكية Com_SendDynSignal لتحديث كائن إشارة ذي طول ديناميكي استنادًا إلى البيانات المفيدة المُمررة ([SWS_Com_00627]). تمتلك الخدمة معرف الخدمة 0x21 وتعمل بشكل غير متزامن ([SWS_Com_00627]). كمعلمات دخل، تتوقع الواجهة معرف الإشارة الهدف (SignalId)، ومؤشرًا إلى البيانات المفيدة للإشارة المراد إرسالها (SignalDataPtr)، بالإضافة إلى الطول الحالي للإشارة الديناميكية (Length)؛ ولا توجد معلمات خرج ([SWS_Com_00627]).
تُبلغ قيمة الإرجاع من النوع uint8 عن نتيجة قبول الطلب ([SWS_Com_00627]):
E_OK: تم قبول استدعاء الخدمة بنجاح ([SWS_Com_00627]).E_NOT_OK: المعلمةLengthتتجاوز الحد الأقصى للطول المكوّن لهذه الإشارةComSignalLength([SWS_Com_00627]).COM_SERVICE_NOT_AVAILABLE: تم إيقاف مجموعة I-PDU المقترنة أو فشلت الخدمة بسبب خطأ في التطوير ([SWS_Com_00627]).COM_BUSY: ذاكرة TP المؤقتة مقفلة ([SWS_Com_00627]).
فيما يتعلق بالتزامن، فإن Com_SendDynSignal قابلة لإعادة الدخول للإشارات المختلفة، ولكنها غير قابلة لإعادة الدخول لنفس الإشارة ([SWS_Com_00627]). يتوفر تصريح الدالة عبر ملف الرأس Com.h ([SWS_Com_00627]).
تم إنشاء هذا النص بواسطة ذكاء اصطناعي ويُستخدم كدليل توجيهي. المرجع المعتمد هو المواصفة.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_ReceiveSignal [SWS_Com_00198] 📄 PDF
uint8 Com_ReceiveSignal (Com_SignalIdType SignalId, void* SignalDataPtr);
Com_ Receive Signal copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr.
تنسخ الدالة المتزامنة Com_ReceiveSignal بيانات الإشارة المحددة عبر SignalId إلى عنوان الذاكرة المقدم عبر المؤشر SignalDataPtr ([SWS_Com_00198]).
الاستخدام والدلالات
يعالج الاستدعاء تسليم الإشارة بشكل متزامن ويستقبل كمعلمة إدخال المعرّف SignalId (من النوع Com_SignalIdType) وكمعلمة إخراج المؤشر SignalDataPtr (void*) إلى المخزن المؤقت للوجهة ([SWS_Com_00198]). الواجهة متاحة عبر ملف الرأس Com.h ([SWS_Com_00198]).
قيم الإرجاع ومعالجة الأخطاء
تشير قيمة الإرجاع من النوع uint8 إلى نتيجة تنفيذ الدالة ([SWS_Com_00198]):
E_OK: قُبلت الخدمة ونُفذت بنجاح ([SWS_Com_00198]).COM_SERVICE_NOT_AVAILABLE: تم إيقاف مجموعة I-PDU المقابلة أو فشلت الخدمة نتيجة لخطأ في التطوير ([SWS_Com_00198]).COM_BUSY: يحدث إذا كان مخزن TP المؤقت مقفلاً لمعالجة أنواع البيانات الكبيرة ([SWS_Com_00198]).
التزامن والقيود
فيما يتعلق بإعادة الدخول، فإن Com_ReceiveSignal غير قابلة لإعادة الدخول لنفس الإشارة، لكنها قابلة لإعادة الدخول لإشارات مختلفة ([SWS_Com_00198]). وبالتالي، في حالة الوصول المتوازي إلى معرفات إشارات متطابقة، يجب على المستدعين ضمان المزامنة المناسبة.
بالإضافة إلى ذلك، هناك قيد تهيئة جوهري: إذا تم تكوين الوصول القائم على المصفوفة ComSignalGroupArrayAccess لمجموعة إشارات، فلن يتم دعم استدعاء Com_ReceiveSignal لإشارات المجموعة المضمنة في مجموعة الإشارات هذه ([SWS_Com_00843]).
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على متطلبات المواصفة.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_ReceiveDynSignal [SWS_Com_00690] 📄 PDF
uint8 Com_ReceiveDynSignal (Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length);
Com_ Receive Dyn Signal copies the data of the signal identified by Signal Id to the lo cation specified by Signal Data Ptr and stores the length of the dynamical length signal at the position given by the Length parameter.
الاستخدام والدلالات
تُستخدم الدالة المتزامنة Com_ReceiveDynSignal لاستقبال إشارة ذات طول ديناميكي استنادًا إلى SignalId الخاصة بها [SWS_Com_00690]. يتم نسخ بيانات الإشارة المستلمة إلى موقع الذاكرة الذي يشير إليه SignalDataPtr [SWS_Com_00690]. ومن خلال معلمة الدخل والخرج Length، يمرر المستدعي الحد الأقصى للطول القابل للاستيعاب كقيمة دخل؛ وبعد نجاح عملية النسخ، يتم تخزين الطول الفعلي للإشارة الديناميكية المستلمة هناك [SWS_Com_00690].
قيم الإرجاع ومعالجة الأخطاء
تُرجع الدالة قيمة حالة من النوع uint8 [SWS_Com_00690]:
E_OK: تم قبول استدعاء الخدمة ونُسخت البيانات بنجاح [SWS_Com_00690].E_NOT_OK: الذاكرة المؤقتة المقدمة صغيرة جدًا، لأن قيمة الدخل لـLengthأصغر من الطول الفعلي للإشارة المستلمة [SWS_Com_00690].COM_SERVICE_NOT_AVAILABLE: تم إيقاف مجموعة I-PDU المقابلة أو فشلت الخدمة نتيجة لخطأ في التطوير [SWS_Com_00690].COM_BUSY: ذاكرة TP المؤقتة مقفلة حاليًا [SWS_Com_00690].
التزامن والتكامل
فيما يتعلق بقابلية إعادة الدخول، فإن Com_ReceiveDynSignal غير قابلة لإعادة الدخول لنفس الإشارة، ولكن يمكن استدعاؤها بشكل قابل لإعادة الدخول لإشارات مختلفة [SWS_Com_00690]. يتوفر التصريح عبر Com.h [SWS_Com_00690].
تم توليد هذا النص بواسطة نظام ذكاء اصطناعي بناءً على مواصفة AUTOSAR CP R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_SendSignalGroup [SWS_Com_00200] 📄 PDF
uint8 Com_SendSignalGroup (Com_SignalGroupIdType SignalGroupId);
The service Com_ Send Si gnal Group copies the content of the associated shadow buffer to the associated I - PDU.
تُستخدم الدالة غير المتزامنة Com_SendSignalGroup لنسخ محتوى المخزن المؤقت المظلل المخصص إلى I-PDU المقابلة [SWS_Com_00200]. وتستقبل كمعلمة إدخال المعرّف SignalGroupId الخاص بمجموعة الإشارات المراد نقلها [SWS_Com_00200].
قيم الإرجاع ومعالجة الأخطاء
تشير قيمة الإرجاع إلى حالة تنفيذ الخدمة [SWS_Com_00200]:
E_OK: تم قبول استدعاء الخدمة بنجاح [SWS_Com_00200].COM_SERVICE_NOT_AVAILABLE: تم إيقاف مجموعة I-PDU المقابلة أو فشلت الخدمة نتيجة لخطأ في التطوير [SWS_Com_00200].COM_BUSY: مخزن TP المؤقت مقفل مؤقتًا لنقل أنواع البيانات الكبيرة [SWS_Com_00200].
التزامن والقيود
فيما يتعلق بالتزامن، فإن الاستدعاء غير قابل لإعادة الدخول لنفس إشارة المجموعة، ولكنه قابل لإعادة الدخول لإشارات مجموعات مختلفة [SWS_Com_00200]. تفسير: يُرجح أن يشير هذا القيد إلى الوصول المتزامن إلى نفس مجموعة الإشارات. سؤال Q-2f3a6da092b51794 (مفتوح) بالإضافة إلى ذلك، لا يتم دعم استدعاء Com_SendSignalGroup لمجموعة إشارات إذا تم تكوين ComSignalGroupArrayAccess لها [SWS_Com_00843].
تفاعل
يعامل مكوّن AUTOSAR COM استدعاء Com_SendSignalGroupArray بمكافأة استدعاء Com_SendSignalGroup فيما يتعلق بخصائص النقل واختيار وضع إرسال I-PDU وكذلك تدفق الإشارة [SWS_Com_00847].
تم إنشاء ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى مواصفات AUTOSAR.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_ReceiveSignalGroup [SWS_Com_00201] 📄 PDF
uint8 Com_ReceiveSignalGroup (Com_SignalGroupIdType SignalGroupId);
The service Com_ Receive Signal Group copies the received signal group from the I - PDU to the shadow buffer.
الاستخدام
تُستخدم الدالة المتزامنة Com_ReceiveSignalGroup لاستقبال مجموعات الإشارات. حيث تقوم بنسخ بيانات مجموعة الإشارات المستلمة من I-PDU المعنية إلى المخزن المؤقت الخفي (Shadow Buffer) المخصص لها [SWS_Com_00201]. كمعلمة إدخال، تتوقع الدالة معرف مجموعة الإشارات SignalGroupId من النوع Com_SignalGroupIdType [SWS_Com_00201]. تم التصريح عن الخدمة في ملف الترويسة Com.h [SWS_Com_00201].
معالجة الأخطاء وقيم الإرجاع
تُرجع الخدمة قيمة حالة من النوع uint8، والتي توفر معلومات حول النجاح أو سبب الخطأ [SWS_Com_00201]:
E_OK: تم قبول الخدمة بنجاح وتم نسخ مجموعة الإشارات [SWS_Com_00201].COM_SERVICE_NOT_AVAILABLE: تم إيقاف مجموعة I-PDU المقترنة أو فشل الاستدعاء بسبب خطأ في التطوير [SWS_Com_00201].COM_BUSY: تبلغ الخدمة عن هذه الحالة إذا كان مخزن TP المؤقت مقفلاً لمعالجة أنواع البيانات الكبيرة [SWS_Com_00201].
التزامن والقيود
فيما يتعلق بسلوك التزامن، تم تنفيذ Com_ReceiveSignalGroup كغير قابلة لإعادة الدخول لنفس مجموعة الإشارات، ولكنها قابلة لإعادة الدخول لمجموعات إشارات مختلفة [SWS_Com_00201].
بالإضافة إلى ذلك، هناك قيد جوهري عند التفاعل مع الوصول إلى المصفوفة (Array-Zugriff): إذا تم تحديد التكوين ComSignalGroupArrayAccess (ECUC_Com_10003) لمجموعة إشارات، فلن يكون استدعاء Com_ReceiveSignalGroup مدعومًا لمجموعة الإشارات هذه وفقًا للمواصفة [SWS_Com_00843].
تم إنشاء ملاحظة الاستخدام هذه تلقائيًا وتستند إلى مواصفة AUTOSAR Classic R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_SendSignalGroupArray [SWS_Com_00851] 📄 PDF
uint8 Com_SendSignalGroupArray (Com_SignalGroupIdType SignalGroupId, const uint8* SignalGroupArrayPtr);
The service Com_ Send Signal Group Array copies the conte nt of the provided Signal Group Array Ptr to the associated I - PDU. The provided data shall correspond to the array representation of the signal group.
تنسخ الدالة غير المتزامنة Com_SendSignalGroupArray بيانات مجموعة إشارات عبر المؤشر SignalGroupArrayPtr مباشرة إلى I-PDU المخصصة [SWS_Com_00851]. ويجب أن تتطابق البيانات الممررة بدقة مع تمثيل المصفوفة لمجموعة الإشارات المعنية [SWS_Com_00851]، [SWS_Com_00852].
يتم تمرير معرّف مجموعة الإشارات (SignalGroupId) بالإضافة إلى مرجع مصفوفة مجموعة الإشارات (SignalGroupArrayPtr) كمعلمات دخل [SWS_Com_00851]. تُرجع الخدمة القيم المعادة التالية [SWS_Com_00851]:
E_OK: تم قبول استدعاء الخدمة بنجاح.COM_SERVICE_NOT_AVAILABLE: تم إيقاف مجموعة I-PDU المقترنة أو فشل الاستدعاء بسبب خطأ في التطوير.COM_BUSY: تم قفل مخزن بروتوكول النقل المؤقت (مخزن TP المؤقت) لمعالجة أنواع البيانات الكبيرة.
فيما يتعلق بالتزامن، فإن الدالة غير قابلة لإعادة الدخول لنفس مجموعة الإشارات، ولكن يجوز استدعاؤها بشكل قابل لإعادة الدخول لمجموعات إشارات مختلفة [SWS_Com_00851]. لا يتوفر الاستدعاء إلا إذا تم تفعيل مفتاح التهيئة ComEnableSignalGroupArrayApi [SWS_Com_00853].
فيما يتعلق بخصائص نقل مجموعات الإشارات وتحديد وضع نقل I-PDU وتدفق الإشارة، تعامل وحدة AUTOSAR COM الدالة Com_SendSignalGroupArray بشكل مماثل تمامًا لـ Com_SendSignalGroup [SWS_Com_00847].
تم إنشاء هذا النص بواسطة آلية مدعومة بالذكاء الاصطناعي استنادًا إلى مواصفة AUTOSAR R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_ReceiveSignalGroupArray [SWS_Com_00854] 📄 PDF
uint8 Com_ReceiveSignalGroupArray (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr);
The service Com_ Receive Signal Group Array copies the re ceived signal group array AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM representation from the PDU to the location designated by Signal Group Ar - ray Ptr.
الاستخدام والتهيئة
تنسخ الدالة المتزامنة Com_ReceiveSignalGroupArray مجموعة الإشارات المستلمة كتمثيل مصفوفة بايتات من I-PDU إلى مساحة الذاكرة التي يشير إليها SignalGroupArrayPtr [SWS_Com_00854]، [SWS_Com_00855]. تتوفر الدالة فقط عند تفعيل مفتاح التهيئة ComEnableSignalGroupArrayApi [SWS_Com_00856]. وهي تدعم تصفية الاستلام و Transmission Mode Selection باستخدام المرشحات ALWAYS وNEVER وMASKED_NEW_EQUALS_X وMASKED_NEW_DIFFERS_X وMASKED_NEW_DIFFERS_MASKED_OLD وONE_EVERY_N [SWS_Com_00848].
نسخ البيانات ومعالجة الأخطاء
عند الاستدعاء، يتم تمرير SignalGroupId بالإضافة إلى مؤشر إلى المصفوفة الهدف، التي تنسخ وحدة AUTOSAR COM بيانات I-PDU إلى موضعها [SWS_Com_00849]. حتى إذا تم إيقاف مجموعة I-PDU وأرجعت الخدمة COM_SERVICE_NOT_AVAILABLE، فإن الوحدة تنسخ دائمًا آخر بيانات معروفة أو القيم الأولية ComSignalInitValues إذا لم تكن هناك بيانات قد كُتبت من قبل [SWS_Com_00857].
القيم المعادة والتزامن
القيم المعادة المحتملة للخدمة هي [SWS_Com_00854]:
E_OK: تم قبول الخدمة بنجاح.COM_SERVICE_NOT_AVAILABLE: مجموعة I-PDU المقترنة متوقفة أو فشلت الخدمة بسبب خطأ في التطوير.COM_BUSY: مخزن TP المؤقت مقفل لمعالجة أنواع البيانات الكبيرة.
فيما يتعلق بالتزامن، فإن الدالة قابلة لإعادة الدخول لمجموعات إشارات مختلفة، لكنها غير قابلة لإعادة الدخول لنفس مجموعة الإشارات [SWS_Com_00854].
تم إنشاء ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى مواصفات AUTOSAR CP R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_ReceiveSignalWithMetaData [SWS_Com_91005] 📄 PDF
uint8 Com_ReceiveSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint8* MetaDataPtr);
Com_ Receive Signal With Meta Data copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr. The received meta data is stored at the position given by the Meta Data Ptr parameter. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM
تُستخدم الدالة المتزامنة Com_ReceiveSignalWithMetaData لقراءة بيانات الإشارة المستلمة مع بياناتها الوصفية من وحدة الاتصال Com [SWS_Com_91005]. وعند الاستدعاء، تنسخ الخدمة بيانات الإشارة المعنونة عبر SignalId إلى موقع الذاكرة الذي يشير إليه SignalDataPtr، وتضع البيانات الوصفية المستلمة في الموضع MetaDataPtr [SWS_Com_91005].
المعلمات وسياق الاستدعاء
تتوفر الواجهة عبر الرأس Com.h ويتم تحديدها عبر معرّف الخدمة 0x49 [SWS_Com_91005]. ويتم تنظيم بنية المعاملات على النحو التالي:
SignalId(in): معرّف الإشارة المراد استلامها [SWS_Com_91005].SignalDataPtr(out): مؤشر إلى موقع الذاكرة لتخزين بيانات الإشارة المستلمة [SWS_Com_91005].MetaDataPtr(out): مؤشر إلى نطاق الذاكرة لاستيعاب البيانات الوصفية للإشارة [SWS_Com_91005].
تُرجع الدالة قيمة إرجاع من النوع uint8، والتي لم يتم توثيق أي قيم خطأ محددة لها في قسم المعيار الحالي [SWS_Com_91005].
التزامن والقيود
فيما يتعلق بقابلية إعادة الدخول، فإن الخدمة قابلة لإعادة الدخول لإشارات مختلفة، ولكنها غير قابلة لإعادة الدخول لنفس الإشارة [SWS_Com_91005]. وبالتالي، في حالة الاستدعاءات المتوازية أو المقاطعة ذات SignalId متطابقة، يُرجح أن تكون هناك حاجة لتأمين خارجي من جانب المتصل لضمان اتساق البيانات. سؤال Q-51cbdce3d4f59f24 (مفتوح)
تم إنشاء إشعار الاستخدام هذا بواسطة ذكاء اصطناعي ويستند حصريًا إلى مواصفات AUTOSAR.
دالة Com_ReceiveDynSignalWithMetaData [SWS_Com_91006] 📄 PDF
uint8 Com_ReceiveDynSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length, uint8* MetaDataPtr);
Com_ Receive Dyn Signal With Meta Da ta copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr and stores the length of the dy- namical length signal at the position given by the Length parameter. The received meta data is stored at the position given by the Meta Data Ptr parameter.
الاستخدام والدلالات
تتوفر الدالة Com_ReceiveDynSignalWithMetaData عبر ملف الرأس Com.h وتُستخدم للاستقبال المتزامن للإشارات ذات الطول الديناميكي بما في ذلك بيانات التعريف الخاصة بها [SWS_Com_91006]. عند الاستدعاء، تنسخ الخدمة بيانات الإشارة المحددة عبر SignalId إلى الذاكرة المؤقتة المشار إليها بواسطة SignalDataPtr [SWS_Com_91006]. ويتم تخزين بيانات التعريف المستلمة عند المؤشر MetaDataPtr، بينما يُكتب الطول الفعلي للإشارة الديناميكية المستلمة في موضع Length [SWS_Com_91006].
قيم الإرجاع ومعالجة الأخطاء
تُرجع الخدمة قيمة حالة من النوع uint8 [SWS_Com_91006]:
E_OK: تم قبول خدمة الاستقبال بنجاح [SWS_Com_91006].E_NOT_OK: تحدث عندما تكون القيمة المُمررة لـLengthأصغر من الطول الفعلي للإشارة الديناميكية المستلمة [SWS_Com_91006]. تفسير: يجب على المستدعي توفير حجم الذاكرة المؤقتة مسبقًا عبرLength، بحيث تعمل المعلمة فعليًا كدخل وخرج مدمجين. سؤال Q-8ad420c74748f219 (مفتوح)COM_SERVICE_NOT_AVAILABLE: مجموعة I-PDU المرتبطة متوقفة أو فشل الاستدعاء بسبب خطأ في التطوير [SWS_Com_91006].COM_BUSY: ذاكرة TP المؤقتة مقفلة حاليًا [SWS_Com_91006].
التزامن والقيود
فيما يتعلق بالتزامن، فإن الدالة قابلة لإعادة الدخول لإشارات مختلفة، ولكن لا يجوز استدعاؤها بشكل قابل لإعادة الدخول لنفس الإشارة [SWS_Com_91006]. لذلك، يجب مزامنة الاستدعاءات المتوازية لنفس SignalId على مستوى المستدعي.
تم إنشاء ملاحظة الاستخدام هذه تلقائيًا وتستند حصريًا إلى بيانات المواصفة من إصدار AUTOSAR R20-11.
دالة Data [SWS_Com_91007] 📄 PDF
uint8 Com_ReceiveSignalGroupWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* MetaDataPtr);
The service Com_ Receive Signal Group With Meta Data copies the received signal group from the I - PDU to the shadow buffer. The received meta data is stored at the position given by the Meta Data Ptr parameter.
تُستخدم الدالة المتزامنة Com_ReceiveSignalGroupWithMetaData لاستقبال مجموعة إشارات بما في ذلك بيانات التعريف المرتبطة بها عبر الواجهة Com.h [SWS_Com_91007]. تأخذ المعرف SignalGroupId كمعلمة دخل وتنسخ البيانات المستلمة لمجموعة الإشارات من I-PDU إلى الذاكرة المؤقتة للظل المحلية [SWS_Com_91007]. في الوقت نفسه، تحفظ الخدمة بيانات التعريف المستلمة في عنوان الوجهة المشار إليه عبر معلمة الخرج MetaDataPtr [SWS_Com_91007].
يتضمن سلوك الخطأ والإرجاع ثلاث قيم حالة: E_OK تشير إلى القبول الناجح للخدمة [SWS_Com_91007]. تشير قيمة الإرجاع COM_SERVICE_NOT_AVAILABLE إلى أن مجموعة I-PDU المرتبطة متوقفة أو يوجد خطأ في التطوير [SWS_Com_91007]. في حالة حدوث رمز الخطأ COM_BUSY، تكون ذاكرة TP المؤقتة مقفلة لمعالجة أنواع البيانات الكبيرة [SWS_Com_91007]. فيما يتعلق بالتزامن، فإن الدالة قابلة لإعادة الدخول لمجموعات إشارات مختلفة، ولكنها غير قابلة لإعادة الدخول لنفس مجموعة الإشارات [SWS_Com_91007]. ونظرًا لأن المواصفة لا تذكر أي قيود على ISR، فمن المفترض أن يتم الاستدعاء بشكل متزامن على مستوى المهمة (Task level) بواسطة مكون البرمجيات الأعلى. سؤال Q-a23cf67bae724ae1 (مفتوح)
في إطار التفاعل المتبادل، توسع الدالة مسار الاستقبال ببيانات التعريف بشكل مماثل لـ Com_ReceiveSignalWithMetaData للإشارات الفردية [SWS_Com_91005]. تتوافق بيانات التعريف المقدمة مع معلومات PDU المستلمة سابقًا عبر Com_RxIndication عند الواجهة [SWS_Com_00123]. للإشارة إلى محتويات البيانات غير الصالحة، يمكن أيضًا استخدام Com_InvalidateSignalGroup في سير العمل الكلي [SWS_Com_00557].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.
دالة Data [SWS_Com_91008] 📄 PDF
void Com_ReceiveSignalGroupArrayWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr, uint8* MetaDataPtr);
The service Com_ Receive Signal Group Array With Meta Data copies the received si gnal group array representation from the PDU to the location designated by Signal Group Ar - ray Ptr. The received meta data is stored at the position given by the Meta Data Ptr parameter.
الاستخدام
تنسخ الخدمة المتزامنة Com_ReceiveSignalGroupArrayWithMetaData (معرف الخدمة 0x4c، المتوفرة عبر Com.h) تمثيل مصفوفة مجموعات الإشارات المستلمة من I-PDU إلى موقع الذاكرة المقدم عبر المؤشر SignalGroupArrayPtr [SWS_Com_91008]. في الوقت نفسه، تُكتب بيانات التعريف المستلمة في الموضع المحدد بواسطة المعلمة MetaDataPtr [SWS_Com_91008]. لا تمتلك الدالة أي قيمة إرجاع (void) [SWS_Com_91008].
معالجة الأخطاء
لا تحدد المواصفة أي قيم إرجاع لهذه الخدمة ولا تدرج أي رموز خطأ محددة [SWS_Com_91008]. تفسير: من المفترض أن يتم اعتراض أي حالات خطأ في معلمات الاستدعاء داخليًا ومعالجتها عبر نظام الإبلاغ عن الأخطاء في الوحدة؛ ومع ذلك، لا تظهر أي رسائل محددة لـ DET أو DEM من مقتطف المواصفة. سؤال (مفتوح)
التزامن والقيود
فيما يتعلق بالتزامن، فإن الدالة قابلة لإعادة الدخول لمجموعات إشارات مختلفة، ولكنها غير قابلة لإعادة الدخول لنفس مجموعة الإشارات [SWS_Com_91008]. يجب منع الاستدعاءات المتوازية ذات SignalGroupId المتطابقة من جهة المستدعي. تفسير: من المفترض أيضًا أن يكون المستدعون ملزمين بتوفير ذواكر مؤقتة للوجهة ذات أبعاد كافية، نظرًا لأن الواجهة لا تتضمن معلمات طول. سؤال (مفتوح)
تفاعل
يتطلب توفير البيانات في ذاكرة PDU المؤقتة أن يكون إشعار استقبال قد حدث مسبقًا عبر Com_RxIndication، والذي يزود وحدة COM أيضًا ببيانات التعريف [SWS_Com_00123]. توسع الدالة واجهات الاستقبال لبيانات التعريف بشكل مماثل لـ Com_ReceiveSignalWithMetaData للإشارات الفردية [SWS_Com_91005] وتختلف عن جلب الإشارات العادي عبر Com_ReceiveSignal [SWS_Com_00198].
تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR.
دالة Data [SWS_Com_91009] 📄 PDF
uint8 Com_SendSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint8* MetaDataPtr);
The service Com_ Send Si gnal With Meta Data updates the signal object identified by Signal Id with the signal referenced by the Signal Data Ptr parameter. The meta data is provided via the Meta Data Ptr parameter.
تُستخدم الدالة Com_SendSignalWithMetaData ([SWS_Com_91009]) للتحديث غير المتزامن لكائن إشارة محدد بواسطة SignalId ببيانات مفيدة عبر SignalDataPtr وكذلك بيانات التعريف المرتبطة بها عبر MetaDataPtr. تتوفر الخدمة عبر ملف الرأس Com.h.
- الاستدعاء والتزامن: يتم الاستدعاء بشكل غير متزامن ([SWS_Com_91009]). الدالة قابلة لإعادة الدخول لإشارات مختلفة، ولكنها غير قابلة لإعادة الدخول لنفس معرف الإشارة (
SignalId) ([SWS_Com_91009]). - قيم الإرجاع ومعالجة الأخطاء: تُرجع الدالة قيمة حالة من النوع
uint8([SWS_Com_91009]):E_OK: قبلت الوحدة طلب الإرسال بنجاح ([SWS_Com_91009]).COM_SERVICE_NOT_AVAILABLE: تم إيقاف مجموعة I-PDU المقترنة أو فشل الاستدعاء بسبب خطأ في التطوير ([SWS_Com_91009]).COM_BUSY: المخزن المؤقت لـ TP مقفل لمعالجة أنواع البيانات الكبيرة ([SWS_Com_91009]).
- التفاعل المتبادل: على عكس خدمة الإرسال الأساسية
Com_SendSignal([SWS_Com_00197])، تمرر هذه الدالة بيانات تعريف صريحة. وهي تشكل النظير من جهة الإرسال لخدمة الاستقبالCom_ReceiveSignalWithMetaData([SWS_Com_91005]) وتكمل الخدمات المتعلقة ببيانات التعريف لـ I-PDU مثلCom_TriggerIPDUSendWithMetaData([SWS_Com_00858]).
تم إنشاء ملاحظة الاستخدام هذه آليًا استنادًا إلى المواصفة.
دالة Com_SendDynSignalWithMetaData [SWS_Com_91010] 📄 PDF
uint8 Com_SendDynSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint16 Length, uint8* MetaDataPtr);
The service Com_ Send Dyn Signal With Meta Data updates the signal object identified by Signal Id wit h the signal referenced by the Signal Data Ptr parameter. The meta data is provided via the Meta Data Ptr parameter. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM
الاستخدام والدلالات
تُستخدم الدالة Com_SendDynSignalWithMetaData للتحديث غير المتزامن لكائن إشارة محدد عبر SignalId (النوع Com_SignalIdType) ببيانات إشارة ذات طول ديناميكي بالإضافة إلى بيانات التعريف المرتبطة بها [SWS_Com_91010]. يُشار إلى البيانات المفيدة المراد إرسالها عبر المؤشر SignalDataPtr (النوع void*)، بينما يشير MetaDataPtr (النوع uint8*) إلى بيانات التعريف [SWS_Com_91010]. ويتم تمرير الطول الفعلي للإشارة الديناميكية المراد إرسالها عبر المعلمة Length (النوع uint16) [SWS_Com_91010].
قيم الإرجاع ومعالجة الأخطاء
تشير قيمة الإرجاع من النوع uint8 إلى ما إذا كانت الخدمة قد قُبلت أو إلى الخطأ الموجود [SWS_Com_91010]:
E_OK: تم قبول استدعاء الخدمة بنجاح للمعالجة [SWS_Com_91010].E_NOT_OK: القيمة المُمررة لـLengthتتجاوزComSignalLengthالمكوّنة لهذه الإشارة [SWS_Com_91010].COM_SERVICE_NOT_AVAILABLE: تم إيقاف مجموعة I-PDU المرتبطة أو فشل الاستدعاء بسبب خطأ في التطوير [SWS_Com_91010].COM_BUSY: ذاكرة TP المؤقتة مقفلة حاليًا، ولهذا السبب لا يمكن إرسال الإشارة [SWS_Com_91010].
التزامن والتكامل
فيما يتعلق بالتزامن، فإن الدالة قابلة لإعادة الدخول لإشارات مختلفة، ولكنها غير قابلة لإعادة الدخول لنفس الإشارة [SWS_Com_91010]. تمتلك الواجهة معرف الخدمة 0x4e وتتوفر في الوحدة Com عبر ملف الرأس Com.h [SWS_Com_91010].
أُنشئت ملاحظة الاستخدام بناءً على عناصر المواصفة من إصدار AUTOSAR R20-11.
دالة Data [SWS_Com_91011] 📄 PDF
uint8 Com_SendSignalGroupWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* MetaDataPtr);
The service Com_ Send Signal Group With Meta Data copies the content of the associated shadow buffer to the associated I - PDU. The meta data is provided via the Meta Data Ptr parameter.
تُستخدم الدالة Com_SendSignalGroupWithMetaData (المسماة في نموذج البيانات بـ Data) للإرسال غير المتزامن لمجموعة إشارات مع بيانات التعريف إلى الوحدة Com [SWS_Com_91011]. عند الاستدعاء، تنسخ الخدمة المحتوى الحالي لذاكرة الظل المؤقتة المخصصة إلى I-PDU المرتبطة، مع توفير بيانات التعريف عبر المؤشر MetaDataPtr [SWS_Com_91011].
تشمل معلمات التمرير معرف مجموعة الإشارات (SignalGroupId) بالإضافة إلى المؤشر إلى بيانات التعريف (MetaDataPtr) [SWS_Com_91011]. وتبلغ قيم الإرجاع عن نتيجة طلب الخدمة:
E_OK: تم قبول الخدمة بنجاح [SWS_Com_91011].COM_SERVICE_NOT_AVAILABLE: تم إيقاف مجموعة I-PDU المقترنة أو فشل التنفيذ بسبب خطأ في التطوير [SWS_Com_91011].COM_BUSY: تم حظر مخزن TP المؤقت لنقل أنواع البيانات الكبيرة [SWS_Com_91011].
فيما يتعلق بالتزامن، يكون الاستدعاء قابلاً لإعادة الدخول (reentrant) للإشارات المختلفة، ولكنه غير قابل لإعادة الدخول لنفس إشارة المجموعة؛ ومن المرجح أن ينطبق هذا، على نحو مماثل للمعامل SignalGroupId، على مجموعة الإشارات المعنية [SWS_Com_91011]. سؤال Q-91171d77370ae50a (مفتوح) وبالتكامل مع الوحدة Com، تُكمل الخدمة إرسال الإشارات الفردية مثل Com_SendSignal [SWS_Com_00197] بالإضافة إلى إبطال مجموعات الإشارات عبر Com_InvalidateSignalGroup [SWS_Com_00557]. علاوة على ذلك، فهي تتوافق مع خدمة الاستقبال Com_ReceiveSignalWithMetaData [SWS_Com_91005] واستدعاء الإرسال المستند إلى PDU Com_TriggerIPDUSendWithMetaData [SWS_Com_00858].
تم توليد ملاحظة الاستخدام هذه تلقائياً بناءً على المواصفة.
دالة Com_SendSignalGroupArrayWithMetaData [SWS_Com_91012] 📄 PDF
uint8 Com_SendSignalGroupArrayWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr, uint8* MetaDataPtr);
The service Com_ Send Signal Group Array With Meta Data copies the content of the provided Signal Group Array Ptr to the associated I - PDU. The provided data shall c orrespond to the array representation of the signal group. The meta data is provi- ded via the Meta Data Ptr parameter.
الاستخدام والمعلمات
تُستخدم الدالة Com_SendSignalGroupArrayWithMetaData لنقل مجموعة إشارات بشكل غير متزامن مع البيانات الوصفية المقترنة بها [SWS_Com_91012]. عند الاستدعاء، تقوم الخدمة بنسخ محتوى المؤشر الممرر SignalGroupArrayPtr مباشرةً إلى I-PDU المعينة [SWS_Com_91012]. ويجب أن تتطابق البيانات المقدمة بالضرورة مع تمثيل المصفوفة لمجموعة الإشارات، والتي يتم تحديدها عبر المعامل SignalGroupId من النوع Com_SignalGroupIdType [SWS_Com_91012]. وتُمرر البيانات الوصفية الإضافية لمجموعة الإشارات عبر المؤشر MetaDataPtr إلى طبقة الاتصال [SWS_Com_91012].
قيم الإرجاع ومعالجة الأخطاء
تُرجع الدالة قيمة حالة من النوع uint8 تشير إلى نجاح التسليم أو سبب الخطأ المعني [SWS_Com_91012]:
E_OK: تم قبول استدعاء الخدمة بنجاح بواسطة طبقة COM [SWS_Com_91012].COM_SERVICE_NOT_AVAILABLE: مجموعة I-PDU المرتبطة متوقفة أو فشل الاستدعاء بسبب خطأ في التطوير [SWS_Com_91012].COM_BUSY: تم حظر المخزن المؤقت لبروتوكول النقل (TP-Buffer) لمعالجة أنواع البيانات الكبيرة [SWS_Com_91012].
التزامن والقيود
وفقًا للمواصفة، صُنفت الخدمة على أنها غير قابلة لإعادة الدخول (Non Reentrant)، ولهذا السبب فإن الاستدعاءات المتزامنة أو المقاطِعة غير مسموح بها [SWS_Com_91012]. تمتلك الواجهة معرّف الخدمة 0x50 ويتم توفيرها عبر ملف الرأس Com.h [SWS_Com_91012].
تم توليد ملاحظة الاستخدام هذه تلقائيًا على أساس حالة مواصفة AUTOSAR R20-11.
دالة Com_InvalidateSignal [SWS_Com_00203] 📄 PDF
uint8 Com_InvalidateSignal (Com_SignalIdType SignalId);
The service Com_ In validate Signal invalidates the signal with the given Signal Id by setting its value to its configured Com Signal Data Invalid Value.
تُستخدم الدالة Com_InvalidateSignal لإبطال صلاحية إشارة في وحدة الاتصال [SWS_Com_00203]. وتقوم بضبط قيمة الإشارة الممررة على قيمة عدم الصلاحية المحفوظة في التهيئة Com Signal Data Invalid Value [SWS_Com_00203]. وتتم المعالجة بشكل غير متزامن [SWS_Com_00203]. ويتم تمرير معامل الإدخال SignalId كمعامل التمرير الوحيد لتحديد الإشارة؛ ولا توجد معاملات إدخال/إخراج أو إخراج [SWS_Com_00203].
كقيمة إرجاع، يقدم الاستدعاء حالة من النوع uint8، والتي تمثل سلوك القبول والخطأ [SWS_Com_00203]:
E_OK: تم قبول خدمة الإبطال (Invalidation-Service) بنجاح [SWS_Com_00203].COM_SERVICE_NOT_AVAILABLE: الخدمة غير متوفرة. يحدث هذا إذا كانت مجموعة I-PDU المقترنة متوقفة، أو إذا لم تتم تهيئةCom Signal Data Invalid ValueلـSignalIdالمحددة، أو إذا فشل التنفيذ نتيجة لخطأ أثناء التطوير [SWS_Com_00203].COM_BUSY: لا يمكن تنفيذ الخدمة حالياً لأن ذاكرة TP المؤقتة مقفلة [SWS_Com_00203].
فيما يتعلق بالتزامن، فإن Com_InvalidateSignal غير قابلة لإعادة الدخول لنفس الإشارة، ولكن يجوز تنفيذها بشكل متوازٍ وقابل لإعادة الدخول لإشارات مختلفة [SWS_Com_00203]. الخدمة مصرح عنها تحت معرّف الخدمة 0x10 ومتاحة عبر ملف الرأس Com.h [SWS_Com_00203].
تم توليد ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR CP R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_InvalidateSignalGroup [SWS_Com_00557] 📄 PDF
uint8 Com_InvalidateSignalGroup (Com_SignalGroupIdType SignalGroupId);
The service Co m_ Invalidate Signal Group invalidates all group signals of the signal group with the given Signal Group Id by setting their values to their configured Com Signal Data Invalid Values.
تُستخدم الدالة Com_InvalidateSignalGroup لضبط جميع إشارات المجموعة لمجموعة الإشارات الممررة على قيم ComSignalDataInvalidValue المكونة لكل منها، وبالتالي إبطال صلاحية مجموعة الإشارات [SWS_Com_00557].
الاستخدام والدلالات
تتوقع الخدمة كمعلمة إدخال معرّف مجموعة الإشارات المراد إبطال صلاحيتها (SignalGroupId من النوع Com_SignalGroupIdType) [SWS_Com_00557]. وتتم معالجة الاستدعاء بشكل غير متزامن ويعيد قيمة حالة من النوع uint8 [SWS_Com_00557].
قيم الإرجاع ومعالجة الأخطاء
تم تحديد قيم الإرجاع التالية [SWS_Com_00557]:
E_OK: تم قبول طلب إبطال الصلاحية بنجاح.COM_SERVICE_NOT_AVAILABLE: الخدمة غير متاحة لأن مجموعة I-PDU المقابلة متوقفة، أو لم يتم تكوينComSignalDataInvalidValueلأي من إشارات المجموعة، أو فشل الاستدعاء نتيجة لخطأ في التطوير.COM_BUSY: المخزن المؤقت لبروتوكول النقل (TP-Buffer) مقفل حاليًا.
التزامن وإعادة الدخول
الدالة غير قابلة لإعادة الدخول لنفس مجموعة الإشارات، ولكن يجوز استدعاؤها بشكل متزامن (قابلة لإعادة الدخول) لمجموعات إشارات مختلفة [SWS_Com_00557]. التصريح متاح عبر Com.h [SWS_Com_00557].
تستند ملاحظة الاستخدام هذه حصريًا إلى بيانات المواصفة من AUTOSAR CP R20-11.
دالة Com_TriggerIPDUSend [SWS_Com_00348] 📄 PDF
Std_ReturnType Com_TriggerIPDUSend (PduIdType PduId);
By a call to Com_ Trigger IPDUSend the I - PDU with the given ID is triggered for transmission.
تُطلق الدالة المتزامنة Com_TriggerIPDUSend نقل وحدة I-PDU المحددة بواسطة المعلمة PduId [SWS_Com_00348]. وهي متاحة عبر ملف الترويسة Com.h [SWS_Com_00348].
شروط الاستدعاء وقيم الإرجاع
لا يطلق الاستدعاء عملية الإرسال إلا إذا كانت وحدة I-PDU المعنية قد بدأت [SWS_Com_00861]. وبناءً على ذلك، تميز قيمة الإرجاع من النوع Std_ReturnType حالة وحدة I-PDU [SWS_Com_00348]:
E_OK: تم إطلاق وحدة I-PDU بنجاح للنقل [SWS_Com_00348].E_NOT_OK: توجد وحدة I-PDU في حالة إيقاف، وبالتالي تعذر إطلاق عملية النقل [SWS_Com_00348].
سلوك التخزين المؤقت والتزامن
تم تحديد الدالة على أنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_Com_00348]. بالنسبة لوحدات I-PDU الكبيرة، تتوفر آلية تخزين مؤقت: إذا تم إطلاق وحدة I-PDU كبيرة عبر Com_TriggerIPDUSend أثناء قفل المخزن المؤقت الخاص بها، يقوم AUTOSAR COM بحفظ طلب الإرسال مؤقتًا ولا ينقل وحدة I-PDU إلا بمجرد أن يصبح المخزن المؤقت متاحًا مرة أخرى [SWS_Com_00867].
تم إنشاء ملاحظة الاستخدام هذه آليًا استنادًا إلى بيانات المواصفة الخاصة بـ AUTOSAR Classic R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I2)
دالة Com_TriggerIPDUSendWithMetaData [SWS_Com_00858] 📄 PDF
Std_ReturnType Com_TriggerIPDUSendWithMetaData (PduIdType PduId, const uint8* MetaData);
By a call to Com_ Trigger IPDUSend With Meta Data the AUTOSAR COM module updates its internal metadata for the I - PDU with the given ID by copying the metada- ta from the given position and with respect to length of the globally configured Meta Data Type of this I - PDU. Then the I - PDU is triggered for transmission.
تُستخدم الدالة Com_TriggerIPDUSendWithMetaData لبدء إرسال I-PDU بشكل متزامن وتحديث بياناتها الوصفية الداخلية مسبقًا في وحدة AUTOSAR COM [SWS_Com_00858]. يتوقع الاستدعاء كمعلمة PduId مُعرّف I-PDU المراد إرسالها، بالإضافة إلى مؤشر يشير إلى البيانات الوصفية المراد توفيرها عبر MetaData [SWS_Com_00858]. وتنسخ وحدة COM البيانات بدءًا من العنوان المشار إليه، مع مراعاة الطول المكوّن عالميًا لنوع البيانات الوصفية لـ I-PDU، إلى مخزن بياناتها الداخلي وتطلق الإرسال فورًا بعد ذلك [SWS_Com_00858].
وفقًا لـ [SWS_Com_00862]، لا يجوز لوحدة COM إطلاق إرسال I-PDU إلا إذا كانت I-PDU في حالة البدء (gestartet). أما إذا كانت I-PDU متوقفة (gestoppt)، فيتم الامتناع عن بدء الإرسال.
تتم الإشارة إلى نتيجة التنفيذ عبر قيمة الإرجاع:
E_OK: تم بدء إرسال I-PDU بنجاح [SWS_Com_00858].E_NOT_OK: الـ I-PDU متوقفة؛ تعذر بدء الإرسال [SWS_Com_00858].
لم يتم توثيق رموز خطأ محددة لـ DET أو DEM لهذه الخدمة في الحمولة (Payload).
فيما يتعلق بالتزامن، تم تعريف الواجهة على أنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_Com_00858]، ولهذا يجب استبعاد الاستدعاءات المتوازية أو مزامنتها. ويُرجح أن تقع على عاتق المستدعي مسؤولية ضمان صلاحية المؤشر MetaData وتوفير حجم مخزن مؤقت كافٍ وفقًا لطول البيانات الوصفية المكوّن. سؤال Q-66c6abae0bbde275 (مفتوح)
تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي استنادًا إلى مواصفات AUTOSAR R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I2)
دالة Com_SwitchIpduTxMode [SWS_Com_00784] 📄 PDF
void Com_SwitchIpduTxMode (PduIdType PduId, booleanMode); ⚠️
The service Com_ Switch Ipdu Tx Mode sets the transmi ssion mode of the I - PDU refe- renced by Pdu Id to Mode. In case the transmission mode changes, the new mode shall immediately be effective (see SWS_ Com_00239). In case the requested transmission mode was already active for this I - PDU, the call will have no effect.
تُستخدم الواجهة المتزامنة Com_SwitchIpduTxMode لتبديل وضع إرسال I-PDU وهي محددة في ملف الرأس Com.h تحت معرّف الخدمة 0x27 [SWS_Com_00784]. يُمرر كمعلمات معرّف I-PDU المعنية (PduId) ووضع الإرسال المطلوب كقيمة منطقية (Mode)؛ ولا توجد قيمة إرجاع أو معلمة إخراج [SWS_Com_00784]. يبدل الاستدعاء خصائص الإرسال بشكل متزامن ومباشر أثناء التنفيذ [SWS_Com_00784].
تحدد المواصفة حالتين لفاعلية تغيير الوضع:
- إذا تغير وضع الإرسال من خلال الاستدعاء، فإن وضع التشغيل الجديد لـ I-PDU المشار إليها يسري فورًا [SWS_Com_00784]، [SWS_Com_00239].
- إذا كان وضع الإرسال المطلوب نشطًا بالفعل لـ I-PDU المعنية، فإن الاستدعاء يظل عديم التأثير تمامًا [SWS_Com_00784].
فيما يتعلق بإجراء الإرسال الإضافي، ينطبق على التفاعل مع الإرسال الدوري ما يلي: إذا تم ضبط وضع إرسال I-PDU صراحةً عبر Com_SwitchIpduTxMode، فإن مكوّن AUTOSAR COM يؤخر عمليات الإرسال الدورية اللاحقة لـ I-PDU هذه بمقدار الإزاحة الزمنية ComTxModeTimeOffset [SWS_Com_00881].
فيما يتعلق بالتزامن، صُممت الدالة لتكون قابلة لإعادة الدخول لمثيلات I-PDU المختلفة [SWS_Com_00784]. وعلى النقيض من ذلك، يُعرّف الاستدعاء المتزامن أو المتوازي لنفس PduId بأنه غير قابل لإعادة الدخول ويجب منعه من قبل المستدعي [SWS_Com_00784].
أُنشئت ملاحظة الاستخدام هذه آليًا بناءً على وثائق المواصفات.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_TriggerTransmit [SWS_Com_00001] 📄 PDF
Std_ReturnType Com_TriggerTransmit (PduIdType TxPduId, PduInfoType* PduInfoPtr);
Within this API , the upper layer module (called module) shall check whether the available data fits into the buffer size reported by Pdu Info Ptr - >Sdu Length. If it fits, it shall copy its data into the buffer provided by Pdu Info Ptr - >Sdu Data Ptr and update the length of the actual copied data in Pdu Info Ptr - >Sdu Length. If not, it returns E_ NOT_ OK without changing Pdu Info Ptr.
تُستخدم الدالة المتزامنة [SWS_Com_00001] للاسترداد والنسخ المتزامن لبيانات SDU الخاصة بـ PDU للإرسال المراد نقلها (TxPduId) إلى المخزن المؤقت المقدم من المستدعي. يمرر المستدعي عبر معلمة الإدخال والإخراج PduInfoPtr كلاً من عنوان الوجهة SduDataPtr والحد الأقصى لسعة المخزن المؤقت المتاحة في SduLength. طالما أن بيانات SDU تتسع تمامًا في المخزن المؤقت، يتم نسخها، ويتم تحديث PduInfoPtr->SduLength بعدد البايتات المنسوخة فعليًا وتكتمل الخدمة بنجاح مع E_OK [SWS_Com_00001].
معالجة الأخطاء والشروط الحدية
تجهض الدالة التنفيذ، ولا تنسخ أي بيانات، وترجع E_NOT_OK إذا تحقق أحد الشروط التالية:
- حجم المخزن المؤقت المقدم في
PduInfoPtr->SduLengthأصغر من الطول الفعلي لـ PDU [SWS_Com_00001]، [SWS_Com_00869]. في هذه الحالة، يبقىPduInfoPtrدون تغيير [SWS_Com_00001]. - I-PDU المقابلة موجودة في الحالة متوقفة [SWS_Com_00884].
في حالة الخطأ (E_NOT_OK)، لا يجوز للمستدعي تقييم المؤشر PduInfoPtr أو إعادة استخدامه، لأنه قد يشير إلى بيانات غير صالحة أو يمثل مؤشرًا فارغًا (NULL) [SWS_Com_00001].
التزامن
فيما يتعلق بالتزامن، صُممت الواجهة لتكون قابلة لإعادة الدخول لمعرّفات PDU مختلفة، ولكن لا يجوز استدعاؤها بشكل متزامن لنفس TxPduId [SWS_Com_00001].
تم توليد ملاحظة الاستخدام هذه تلقائيًا على أساس مواصفة AUTOSAR.
دليل المنفِّذ قيد الإعداد (التعقيد I2)
دالة Com_RxIndication [SWS_Com_00123] 📄 PDF
void Com_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);
Indication of a received PDU from a lower layer communication interface module.
تُستخدم الدالة Com_RxIndication للإشارة إلى PDU مستلمة وتمريرها من وحدة واجهة اتصال تابعة إلى وحدة AUTOSAR-COM [SWS_Com_00123]. ويتم توفير إعلان الدالة عبر ملف الرأس Com.h ولها معرّف الخدمة 0x42 [SWS_Com_00123].
يتم الاستدعاء بدلالات متزامنة ولا يُرجع قيمة إرجاع (void) [SWS_Com_00123]. ولا تحدد الواجهة معاملات دخل/خرج ولا معاملات خرج فقط، بل تحدد حصريًا معاملي دخل [SWS_Com_00123]:
RxPduId(نوع البياناتPduIdType): يمثل المعرّف الفريد لـ PDU المستلمة [SWS_Com_00123].PduInfoPtr(مؤشر إلىPduInfoTypeثابت): يشير إلى بنية البيانات التي تحتوي على طول PDU المستلمة (SduLength)، ومؤشر إلى المخزن المؤقت مع بيانات PDU (SduDataPtr) بالإضافة إلى بيانات وصفية مرتبطة [SWS_Com_00123].
فيما يتعلق بسلوك التزامن، تم تعريف Com_RxIndication على أنها قابلة لإعادة الدخول (reentrant) للاستدعاءات ذات معرّفات PDU المختلفة، ولكنها صراحةً غير قابلة لإعادة الدخول لنفس معرّف PDU [SWS_Com_00123]. التفسير: لذلك يُرجح أن تكون الوحدات المستدعية لواجهة الاتصال التابعة ملزمة بمزامنة أو تسلسل الاستدعاءات المتنافسة لمعرّفات PDU المتطابقة من أجل الحفاظ على اتساق البيانات. سؤال Q-f3b6194f96c15091 (مفتوح)
تم توليد هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR Classic R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_TpRxIndication [SWS_Com_00650] 📄 PDF
void Com_TpRxIndication (PduIdType id, Std_ReturnType result);
Called after an I - PDU has been received via the TP API, the result indicates whe- ther the transmission was successful or not.
يتم استدعاء دالة الخدمة المتزامنة Com_TpRxIndication بمجرد استلام I-PDU عبر TP-API [SWS_Com_00650]. وهي تبلغ وحدة AUTOSAR-COM بإتمام عملية الاستلام ونتيجتها. وتحدد المعلمة id وحدة I-PDU المعنية، بينما توضح المعلمة result ما إذا كان النقل ناجحًا أم فاشلاً [SWS_Com_00650]. لا تملك الدالة قيمة إرجاع وتكون معرفة في الترويسة Com.h بمعرف الخدمة Service-ID 0x45 [SWS_Com_00650]. ويُرجح أن تعمل طبقة نقل تابعة، مثل PduR أو وحدة TP، كجهة استدعاء. سؤال Q-d7006169cd162db4 (مفتوح)
معالجة الأخطاء
إذا تم استدعاء Com_TpRxIndication بقيمة النتيجة E_NOT_OK للمعلمة result، فإن وحدة COM تعامل جميع إشارات وحدة I-PDU الكبيرة المستلمة تمامًا مثل الإشارات التي أصبحت غير صالحة [SWS_Com_00838]. وتنفذ الوحدة في حالة الخطأ هذه كافة ComDataInvalidActions المكونة لجميع الإشارات ومجموعات الإشارات المتضمنة [SWS_Com_00838].
التزامن والشروط الحدية
تم تحديد الدالة على أنها قابلة لإعادة الدخول وتعمل بشكل متزامن [SWS_Com_00650]. وبالتالي يمكن استدعاؤها بالتوازي لوحدات I-PDU مختلفة، ولكن ينبغي معالجتها في سياق النموذج المستدعي دون تأخير.
تم توليد ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى مواصفة AUTOSAR R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I2)
دالة Com_TxConfirmation [SWS_Com_00124] 📄 PDF
void Com_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);
The lower layer communication interface module confirms the transmission of a AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM PDU, or the failure to transmit a PDU.
يُصرَّح عن دالة الرد المتزامنة Com_TxConfirmation عبر ملف الرأس Com.h وتعمل كواجهة تأكيد مركزية لمكوّن AUTOSAR COM [SWS_Com_00124]. يُبلغ مكوّن واجهة الاتصال الأدنى مكوّن Com من خلالها بنجاح إرسال PDU أو بفشل عملية الإرسال [SWS_Com_00124].
سياق الاستدعاء والمعلمات
تُنفذ الدالة بشكل متزامن، ولديها معرف الخدمة 0x40 ولا تُرجع أي قيمة إرجاع (void) [SWS_Com_00124]. وهي تتوقع معلمتي إدخال:
TxPduId(من النوعPduIdType): المعرّف الفريد لـ PDU التي اكتمل إرسالها أو فشل [SWS_Com_00124].result(من النوعStd_ReturnType): حالة نتيجة عملية الإرسال [SWS_Com_00124]. تؤكد القيمةE_OKإتمام إرسال PDU، بينما تشيرE_NOT_OKإلى فشل إرسال PDU [SWS_Com_00124].
التزامن والقيود
Com_TxConfirmation قابلة لإعادة الدخول لمعرّفات PDU المختلفة، لكنها غير قابلة لإعادة الدخول لنفس معرّف PDU [SWS_Com_00124]. تفسير: يُرجح أنه يتعين على المستدعين من الطبقة الأدنى تجنب الاستدعاءات المتتالية أو المقاطعة التي تستخدم نفس TxPduId من سياقات تنفيذ مختلفة، لكي تظل حالة المعالجة الداخلية لمكوّن Com متسقة. سؤال Q-146c1c92403b64fa (مفتوح)
معالجة الأخطاء
لا تحدد المواصفة أي قيم إرجاع محددة لهذه الخدمة ولا تشير إلى رسائل خطأ منفصلة لـ DET أو DEM [SWS_Com_00124]. تُنقل عمليات الإرسال الخاطئة حصريًا عبر المعلمة result بقيمة الخطأ E_NOT_OK إلى مكوّن Com [SWS_Com_00124].
أُنشئت ملاحظة الاستخدام هذه آليًا بناءً على مواصفة AUTOSAR R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_TpTxConfirmation [SWS_Com_00725] 📄 PDF
void Com_TpTxConfirmation (PduIdType id, Std_ReturnType result);
This function is called after the I - PDU has been transmitted on its network, the result indicates whether the transmission was successful or not.
الاستخدام والدلالات
يتم استدعاء الدالة Com_TpTxConfirmation بعد نقل I-PDU على الشبكة لإخطار وحدة COM بنتيجة عملية الإرسال [SWS_Com_00725]. عبر المعلمة id من النوع PduIdType، يتم تحديد I-PDU المنقولة، بينما تشير result من النوع Std_ReturnType إلى ما إذا كان النقل ناجحًا أم قد فشل [SWS_Com_00725]. ليس للدالة أي قيمة معادة (void) وتتميز بدلالات تنفيذ متزامنة [SWS_Com_00725]. تتوفر الدالة عبر ملف الترويسة Com.h ولها معرّف الخدمة 0x48 [SWS_Com_00725].
معالجة الأخطاء
يتم إرسال الخطأ في هذه الواجهة حصريًا عبر المعلمة result، والتي تعكس نجاح أو فشل نقل I-PDU [SWS_Com_00725]. لم تُحدد مواصفة الدالة رموز أخطاء معينة ولا رسائل خطأ إلى وحدة Default Error Tracer (DET) أو وحدة Diagnostic Event Manager (DEM) [SWS_Com_00725].
التزامن والشروط الحدية
تم تحديد الواجهة على أنها قابلة لإعادة الدخول (reentrant) وبالتالي يجوز تنفيذها بالتوازي [SWS_Com_00725]. كقيد زمني، لا يجوز إجراء الاستدعاء إلا بعد اكتمال نقل I-PDU على الشبكة [SWS_Com_00725]. تفسير: استنادًا إلى اصطلاح التسمية وهيكل الوحدة، يُرجح أن يبدأ الاستدعاء عادةً بواسطة وحدة بروتوكول نقل أساسية تابعة. سؤال Q-8320e76ff63f62ce (مفتوح)
يستند هذا النص إلى مواصفة AUTOSAR R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I2)
دالة Com_StartReception [SWS_Com_00691] 📄 PDF
BufReq_ReturnType Com_StartOfReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);
Service Com_StartReception.
يتم استدعاء الدالة المتزامنة والقابلة لإعادة الدخول Com_StartReception (المتاحة عبر Com.h، ومعرف الخدمة 0x46) في بداية استقبال N-SDU، والتي تُنقل إما غير مجزأة كإطار مفرد (SF) أو مجزأة عبر إطار أول (FF) يليه أطر متتالية (CF) [SWS_Com_00691].
يتم تحديد I-PDU عبر المعلمة id ويحدد TpSduLength الطول الإجمالي لـ N-SDU المراد استقبالها [SWS_Com_00691]. يشير المؤشر info إلى بيانات الحمولة والطول المفيد للإطار الأول أو المفرد وكذلك إلى البيانات الوصفية المرتبطة به؛ وإذا لم تكن بيانات الإطار أو البيانات الوصفية متاحة، يتم تمرير NULL_PTR [SWS_Com_00691]. وعبر معلمة الإخراج bufferSizePtr توفر الدالة حجم المخزن المؤقت المتاح الذي يستخدمه مكوّن بروتوكول النقل لتحديد حجم الكتلة (BS) [SWS_Com_00691]. وإذا تم استدعاء الخدمة بقيمة 0 لـ TpSduLength، فإنها ترجع أقصى حجم متاح حاليًا للمخزن المؤقت [SWS_Com_00691].
تُرجع نتيجة الطلب كـ BufReq_ReturnType [SWS_Com_00691]:
BUFREQ_OK: يتم قبول الاتصال ومواصلة الاستقبال؛ يشيرbufferSizePtrإلى المخزن المؤقت المتاح أو يشير إلى 0 إذا لم يكن هناك مخزن مؤقت متاح بالحجم المطلوب [SWS_Com_00691].BUFREQ_E_NOT_OK: يتم رفض الاتصال وإلغاء الاستقبال؛ تبقى قيمةbufferSizePtrدون تغيير [SWS_Com_00691].BUFREQ_E_OVFL: لا يمكن توفير مخزن مؤقت بالطول المطلوب، مما يؤدي إلى إلغاء الاستقبال؛ تبقىbufferSizePtrدون تغيير [SWS_Com_00691].
أُنشئ هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_CopyRxData [SWS_Com_00692] 📄 PDF
BufReq_ReturnType Com_CopyRxData (PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);
Service Com_CopyRxData.
الاستخدام ودلالات الاستدعاء
يتم استدعاء الدالة المتزامنة Com_CopyRxData لتسليم البيانات المستلمة لمقطع I-PDU (N-PDU) إلى الطبقة العليا [SWS_Com_00692]. في عمليات الإرسال المجزأة، يوفر كل استدعاء متتالي لهذه الواجهة الجزء التالي من إجمالي بيانات I-PDU [SWS_Com_00692].
المعلمات وإدارة المخزن المؤقت
id: يعرّف I-PDU المستلمة بشكل فريد [SWS_Com_00692].info: مؤشر إلى هيكل من النوعPduInfoType. يمرر عبرSduDataPtrالمؤشر إلى المخزن المؤقت للمصدر وعبرSduLengthعدد البايتات المراد نسخها [SWS_Com_00692]. يُستخدم تحديد0لـSduLengthللاستعلام عن حجم المخزن المؤقت المتاح حاليًا للطبقة العليا؛ وفي حالة الاستعلام الخالصة هذه، يجوز تعيينSduDataPtrعلىNULL_PTR[SWS_Com_00692].bufferSizePtr: مؤشر إلى متغير من النوعPduLengthType، يُكتب فيه الحجم المتبقي من مخزن الاستقبال المؤقت بعد عملية النسخ [SWS_Com_00692].
قيم الإرجاع والخصائص
تعيد الدالة حالة من النوع BufReq_ReturnType [SWS_Com_00692]:
BUFREQ_OK: تم نسخ البيانات بنجاح إلى المخزن المؤقت للوجهة [SWS_Com_00692].BUFREQ_E_NOT_OK: فشل نسخ البيانات بسبب حدوث خطأ [SWS_Com_00692].
تمتلك الواجهة معرّف الخدمة 0x44، وهي محددة بأنها قابلة لإعادة الدخول ومتاحة عبر ملف الرأس Com.h [SWS_Com_00692].
أُنشئ هذا النص بواسطة ذكاء اصطناعي ويستند إلى معيار AUTOSAR R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_CopyTxData [SWS_Com_00693] 📄 PDF
BufReq_ReturnType Com_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);
Service Com_CopyTxData.
تُستدعى الدالة المتزامنة والقابلة لإعادة الدخول Com_CopyTxData بواسطة الوحدات السفلية (مثل بروتوكولات النقل) لجلب بيانات الإرسال لأجزاء (N-PDUs) الخاصة بوحدة I-PDU تدريجيًا من المخزن المؤقت للإرسال في وحدة COM [SWS_Com_00693].
الاستخدام والمعلمات
يوفر كل استدعاء الجزء التالي من بيانات I-PDU [SWS_Com_00693]:
id: يحدد وحدة I-PDU المراد نقلها [SWS_Com_00693].info: يحدد المخزن المؤقت للوجهة عبرSduDataPtrوعدد البايتات المراد نسخها عبرSduLength. يُسمح بطول قدره 0 لنقل تغييرات الحالة عبرretryأو للاستعلام عن حجم البيانات المتاح؛ في هذه الحالة، يجوز أن يكونSduDataPtrعبارة عنNULL_PTR[SWS_Com_00693].retry: يؤكد البيانات المرسلة أو يطلب إعادة الإرسال. إذا كانretryعبارة عنNULL_PTR، يجوز إزالة البيانات من المخزن المؤقت مباشرة بعد النسخ. إذا كانretryيشير إلى بنيةRetryInfoType، فإنTpDataStateيتحكم في الاحتفاظ بالمخزن المؤقت:TP_CONFPENDINGيُبقي البيانات في المخزن المؤقت لتصحيح الأخطاء، وTP_DATACONFيؤكد البيانات المنسوخة قبل الاستدعاء لحذفها، وTP_DATARETRYينسخ البيانات المقروءة سابقًا مرة أخرى بدءًا من الإزاحةTxTpDataCnt[SWS_Com_00693].availableDataPtr: يُرجع العدد المتبقي من البايتات المتاحة في المخزن المؤقت للإرسال، مما يتيح على سبيل المثال لبروتوكولات النقل الديناميكية (مثل FrIsoTp) تحديد أحجام الأجزاء اللاحقة [SWS_Com_00693].
قيم الإرجاع ومعالجة الأخطاء
تشير نتيجة الدالة إلى نجاح طلب المخزن المؤقت عبر BufReq_ReturnType [SWS_Com_00693]:
BUFREQ_OK: تم نسخ البيانات بالكامل كما هو مطلوب إلى المخزن المؤقت للوجهة [SWS_Com_00693].BUFREQ_E_BUSY: كمية البيانات المطلوبة ليست جاهزة في المخزن المؤقت للإرسال. لا يتم نسخ أي بيانات، ويجوز للوحدة السفلية تكرار الاستدعاء في وقت لاحق [SWS_Com_00693].BUFREQ_E_NOT_OK: فشل الطلب؛ لم يتم نسخ أي بيانات [SWS_Com_00693].
تم إنشاء ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى مواصفات AUTOSAR CP R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_MainFunctionRx [SWS_Com_00398] 📄 PDF
void Com_MainFunctionRx (void);
This function performs the processing of the AUTOSAR COM module's receive processing that are not directly handled within the COM's functions invoked by the PDU - R, for example Com_ Rx Indication. Per configured Com Main Function Rx instance one Com_ Main F unction Rx_
الاستخدام
تتولى الدالة المتزامنة Com_MainFunctionRx معالجة الاستقبال الداخلية لوحدة AUTOSAR COM للعمليات التي لا تتم معالجتها مباشرة في سياق تنفيذ واجهات برمجة التطبيقات (APIs) المستدعاة بواسطة موجه PDU (PduR) مثل Com_RxIndication [SWS_Com_00398]. ليس لها معلمات إدخال أو إخراج ولا تُرجع أي قيمة [SWS_Com_00398]. يتم التصريح عنها عبر ملف الترويسة SchM_Com.h؛ لذلك، من المرجح أن يتم سياق الاستدعاء دوريًا بواسطة مدير الجدولة (SchM) [SWS_Com_00398]. سؤال Q-48d121e36f62c6de (مفتوح)
معالجة الأخطاء والتهيئة
إذا تم تنفيذ الدالة قبل تهيئة الوحدة بواسطة Com_Init أو بعد استدعاء Com_DeInit، فلن يتم إنشاء خطأ COM_E_UNINIT (0x02)، على عكس معظم واجهات برمجة التطبيقات (APIs) العادية لـ COM، حيث تم استثناء Com_MainFunctionRx صراحةً من ذلك [SWS_Com_00804]. لا توجد رموز أخطاء أو رموز إرجاع محددة لهذه الواجهة [SWS_Com_00398].
التزامن والتشغيل متعدد النماذج (Multi-Instanz)
فيما يتعلق بسياق التنفيذ وإمكانية إعادة الدخول، تنطبق المتطلبات التالية [SWS_Com_00398]:
- إمكانية إعادة الدخول: الدالة غير قابلة لإعادة الدخول لنفس النموذج، ولكن يجوز استدعاؤها بشكل متوازٍ لنماذج مختلفة [SWS_Com_00398].
- التنفيذ الخاص بالنموذج: لكل حاوية
ComMainFunctionRxمحددة في تكوين وحدة التحكم الإلكترونية (ECU)، يتم تنفيذ دالة مستقلة بالصيغةCom_MainFunctionRx_<shortName>، حيث يطابق<shortName>الاسم القصير (Short-Name) لحاوية التكوين [SWS_Com_00398].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي وهو مخصص للتوجيه. المواصفات المرجعية لـ AUTOSAR هي الأساس المعتمد.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_MainFunctionTx [SWS_Com_00399] 📄 PDF
void Com_MainFunctionTx (void);
This function performs the processing of the AUTOSAR COM module's transmissi- on activities that are not directly handled within the COM's function invoked by the AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM RTE, for example Com_ Send Signal. Per configured Com Main Function Tx instance one Com_ Main F unction Tx_
الاستخدام وطريقة العمل
تنفذ الدالة Com_MainFunctionTx أنشطة الإرسال الخاصة بوحدة AUTOSAR COM التي لا تتم تسويتها مباشرة داخل دوال COM المستدعاة بواسطة RTE (مثل Com_SendSignal على سبيل المثال) ([SWS_Com_00399]). يتم التنفيذ بشكل متزامن. ليس لها معلمات إدخال أو إدخال/إخراج أو إخراج ولا تُرجع أي قيمة إرجاع ([SWS_Com_00399]). يتم التصريح عن الواجهة عبر SchM_Com.h؛ تفسير: نظرًا لانتماء هذا الترويسة، يُرجح أن يكون سياق الاستدعاء ضمن إدارة الجدولة (SchM). سؤال Q-c33cfcf81700bcc5 (مفتوح)
لكل حاوية مكونة من Com Main Function Tx في تكوين وحدة التحكم الإلكترونية (ECU)، يجب تنفيذ دالة نموذج محددة وفقًا لمخطط التسمية Com_MainFunctionTx_<shortName>، حيث يطابق <shortName> الاسم القصير لحاوية التكوين ([SWS_Com_00399]).
التزامن والقيود
فيما يتعلق بإمكانية إعادة الدخول، تم تصميم Com_MainFunctionTx لتكون قابلة لإعادة الدخول لنماذج مختلفة، ولكن لا يجوز استدعاؤها لنفس النموذج بشكل غير قابل لإعادة الدخول ([SWS_Com_00399]).
معالجة الأخطاء وحالة التهيئة
وفقًا لـ [SWS_Com_00804]، يؤدي استدعاء خدمات COM قبل التهيئة عبر Com_Init أو بعد إزالة التهيئة عبر Com_DeInit بصفة منتظمة إلى الخطأ COM_E_UNINIT (0x02). ومع ذلك، تم استثناء Com_MainFunctionTx صراحةً من ذلك، ولا ينتج عنها مثل هذا الخطأ في التهيئة في هذه الحالات ([SWS_Com_00804]).
تم إنشاء هذا النص بواسطة ذكاء اصطناعي ويستند إلى مواصفة AUTOSAR R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Signals [SWS_Com_00400] 📄 PDF
void Com_MainFunctionRouteSignals (void);
Calls the signal gateway part of the AUTOSAR COM module to forward received signals to be routed. Per configured Com Main Function Route Signals instance one Com_ Main Functi on Route Signals_
تُستخدم الدالة الرئيسية Com_MainFunctionRouteSignals (معرف الخدمة 0x1a) في وحدة AUTOSAR COM كواجهة متزامنة مركزية لإعادة توجيه الإشارات ([SWS_Com_00400]). وتتمثل مهمتها في استدعاء جزء بوابة الإشارات (Signal-Gateway) في وحدة COM، بحيث تتم إعادة توجيه الإشارات المستلمة المخصصة للتوجيه إلى وجهاتها المكونة ([SWS_Com_00400]).
الاستدعاء والدلالات
تمتلك واجهة C عديمة المعلمات التوقيع void Com_MainFunctionRouteSignals(void) ([SWS_Com_00400]). ويتم تنفيذها بشكل متزامن وليس لها معلمات للإدخال أو الإدخال/الإخراج أو الإخراج ولا قيمة إرجاع ([SWS_Com_00400]). يتم توفير التصريح عن الدالة الرئيسية عبر ملف الترويسة SchM_Com.h ([SWS_Com_00400]). تفسير: بسبب توفيرها عبر SchM_Com.h، يُرجح أن يتم الاستدعاء المخطط له في سياق المهمة دوريًا بواسطة مجدول BSW (SchM). سؤال Q-0f0b57034d6d6bf1 (مفتوح)
إنشاء النماذج وإمكانية إعادة الدخول
بالنسبة للتكامل والتسمية والتزامن، يحدد [SWS_Com_00400] المتطلبات الملزمة التالية:
- التنفيذ الخاص بالنموذج: لكل نموذج موجود في تكوين وحدة التحكم الإلكترونية (ECU) لحاوية التكوين
ComMainFunctionRouteSignals، يجب تنفيذ دالة خاصة وفقًا لمخطط التسميةCom_MainFunctionRouteSignals_<shortName>([SWS_Com_00400]). وفي هذه الحالة، يطابق<shortName>الاسم القصير لحاوية التكوين المعنية. - سلوك إمكانية إعادة الدخول: الدالة قابلة لإعادة الدخول لاستدعاءات النماذج المختلفة ([SWS_Com_00400]). ومع ذلك، بالنسبة لنفس النموذج تمامًا، فهي غير قابلة لإعادة الدخول صراحةً وبالتالي لا يجوز تنفيذها بشكل متزامن ([SWS_Com_00400]).
تم إنشاء ملاحظة الاستخدام هذه تلقائيًا بناءً على المواصفة.
تُستخدم هذه الوظيفة المتزامنة ضمن موديول AUTOSAR COM لتفعيل جزء بوابة الإشارات (Signal Gateway)، بهدف إعادة توجيه وتمرير الإشارات المستلمة التي تقرر مسارها [SWS_Com_00400]. تتوفر الدالة للاستخدام عبر ملف الترويسة SchM_Com.h وتعمل تحت معرّف الخدمة 0x1a بصيغة متزامنة (Synchronous) دون معلمات دخل أو خرج وبدون قيمة إرجاع (void) [SWS_Com_00400].
يتم تنفيذ دالة مخصصة لكل نسخة تم تكوينها من حاوية توجيه الإشارات في تهيئة وحدة التحكم الإلكترونية (ECU Configuration)، بحيث يتبع الاسم النمط Com_MainFunctionRouteSignals_<shortName>؛ حيث يمثل <shortName> الاسم المختصر لحاوية التكوين المحددة [SWS_Com_00400]. يُرجَّح استدعاء هذه الدوال دورياً من خلال مدير الجدول الزمني (Schedule Manager) لمعالجة التوجيه في المواعيد المقررة.
فيما يتعلق بجوانب التزامن والقيود التشغيلية:
- إعادة الدخول (Reentrancy): تُعد الدالة قابلة لإعادة الدخول عبر النسخ المختلفة (Reentrant for different instances)، بينما لا يُسمح بإعادة الدخول إطلاقاً لنفس النسخة بالتوازي (Non reentrant for the same instance) [SWS_Com_00400].
- معالجة الأخطاء: لا تتضمن مواصفة الدالة تعريفاً لرموز أخطاء خاصة أو تقارير موجهة إلى DET أو DEM [SWS_Com_00400].
تم إنشاء هذا المحتوى التوثيقي آلياً بالاعتماد حصرياً على المواصفة المرجعية لـ AUTOSAR.
دالة Com_CbkTxAck [SWS_Com_00468] 📄 PDF
void Com_CbkTxAck (void);
This callback represents notification class 2 of [17]. It is called immediately after successful transmission of the I - PDU containing the message.
تُستخدم دالة الاستدعاء الذاتي Com_CbkTxAck في الوحدة Com للإشعار بنجاح إرسال رسالة ما [SWS_Com_00468]. وهي تمثل فئة الإشعار 2 (notification class 2) ويتم استدعاؤها مباشرة بعد الإرسال الناجح لـ I-PDU التي تحتوي على الرسالة المعنية [SWS_Com_00468].
تنطبق المتطلبات التالية لسياق الاستدعاء وخصائص الواجهة وفقاً للمواصفات [SWS_Com_00468]:
- التوقيع والمعاملات: تمتلك دالة الاستدعاء الذاتي التوقيع
void Com_CbkTxAck (void). وهي لا تقبل معاملات إدخال أو إدخال/إخراج أو إخراج، ولا تُرجع أي قيمة إرجاع [SWS_Com_00468]. - التزامنية: تم تحديد الاستدعاء على أنه متزامن (Synchronous) [SWS_Com_00468].
- إعادة الدخول: تم تصنيف سلوك إعادة الدخول بـ don't care [SWS_Com_00468].
- التهيئة: تم التصريح عن الواجهة بأنها قابلة للتهيئة (configurable) [SWS_Com_00468]. تفسير: يُرجح تحديد الاسم الفعلي لدالة الاستدعاء الذاتي في أداة التهيئة لكل رسالة أو إشارة على حدة. سؤال Q-3670b7b04fd7c74c (مفتوح)
لم يتم تحديد رموز أخطاء معينة أو ردود أفعال تجاه الأخطاء أو رسائل إلى DET أو DEM لهذا العنصر في المواصفات [SWS_Com_00468]. كما لا يتم ذكر شروط ترتيب لاحقة مقارنة بالاستدعاءات الأخرى [SWS_Com_00468].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي استناداً إلى AUTOSAR R20-11.
دالة Com_CbkTxErr [SWS_Com_00491] 📄 PDF
void Com_CbkTxErr (void);
This callback corresponds to notification class 4 of [17]. It is called in case the transmission is not possible because the corresponding I - PDU group is stopped.
يتم استدعاء دالة الاستدعاء الذاتي Com_CbkTxErr بشكل متزامن عندما يتعذر الإرسال بسبب توقف مجموعة I-PDU المقترنة [SWS_Com_00491]. وهي تتوافق مع فئة الإشعار 4 وفقاً للمواصفات الأساسية [SWS_Com_00491].
الاستدعاء والدلالات
- التوقيع والمعاملات: لا تمتلك الدالة معاملات إدخال أو إدخال/إخراج أو إخراج (
void Com_CbkTxErr (void)) ولا تُرجع أي قيمة إرجاع [SWS_Com_00491]. - سلوك التنفيذ: يتم الاستدعاء بشكل متزامن («Synchronous»)، بينما تم تحديد «don't care» لإعادة الدخول [SWS_Com_00491].
- التوفر: واجهة الاستدعاء الذاتي قابلة للتهيئة («configurable») [SWS_Com_00491].
معالجة الأخطاء والتفاعل
تُستخدم الدالة تحديداً للإشارة إلى حالة الخطأ المتمثلة في منع طلب الإرسال بسبب توقف مجموعة I-PDU إلى الطبقة المستدعية أو الطبقة الأعلى [SWS_Com_00491]. ونظراً لعدم تمرير أي معاملات، فمن المحتمل أن يكون سياق الإشارة المتأثرة أو I-PDU محدداً مسبقاً عبر التهيئة أو التعيينات الخاصة بالوحدة. سؤال Q-d7153324d2eb2995 (مفتوح)
تم إنشاء ملاحظة الاستخدام هذه آلياً بواسطة نظام ذكاء اصطناعي بناءً على بيانات المواصفات.
دالة Com_CbkTxTOut [SWS_Com_00554] 📄 PDF
void Com_CbkTxTOut (void);
This callback corresponds to notification class 4 of [17]. It is called immediately after a message transmission error has been detected by the deadline monitoring mechanism.
الاستخدام وسياق الاستدعاء
تُستخدم دالة الاستدعاء المرجعي Com_CbkTxTOut كواجهة إشعار بعدم حدوث إرسال ناجح. ووفقًا لـ [SWS_Com_00554]، يتم استدعاؤها مباشرةً بعد أن تكتشف آلية مراقبة المهلة الزمنية (deadline monitoring mechanism) خطأ في إرسال رسالة. يتم الاستدعاء بشكل متزامن ويتوافق مع فئة الإشعار 4. ونظرًا لأن البنية void Com_CbkTxTOut(void) لا تحتوي على معلمات تمرير أو قيم إرجاع، فإن الإشارة إلى الطبقة الأعلى تتم بدون معلمات.
التزامن والتكوين
فيما يتعلق بقابلية إعادة الدخول (Reentrancy)، تم تحديد الدالة وفقًا لـ [SWS_Com_00554] بأنها don't care. لذلك، من المفترض أن يقع على عاتق برمجية التطبيق المُستدعاة اتخاذ التدابير المناسبة لأمان الخيوط (Thread safety) في حال إمكانية وصول أحداث المراقبة بشكل متزامن. سؤال Q-793a6c18d81de85e (مفتوح) توفر دالة الاستدعاء المرجعي قابل للتهيئة في وحدة الاتصال ويتم تكييفه وفقًا لمتطلبات المراقبة المعنية.
معالجة الأخطاء
لم يتم في [SWS_Com_00554] تحديد أي رسائل خطأ خاصة بـ DET أو DEM أو قيم إرجاع لتأكيد الخطأ بالنسبة لـ Com_CbkTxTOut. ويمثل إطلاق الاستدعاء المرجعي بحد ذاته استجابة الخطأ لتجاوز المهلة الزمنية المحددة للإرسال.
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.
دالة Com_CbkRxAck [SWS_Com_00555] 📄 PDF
void Com_CbkRxAck (void);
This callback represents notification class 1 of [17]. It is called immediately after the message has been stored in the receiving message object.
تُستخدم دالة الاستدعاء المرجعي Com_CbkRxAck في وحدة COM الخاصة بـ AUTOSAR كتأكيد استلام قابل للتهيئة وتمثل فئة الإشعار 1 وفقًا لـ [17] [SWS_Com_00555]. تستدعي وحدة COM روتين الاستدعاء المرجعي هذا مباشرةً بعد تخزين رسالة مستلمة وحفظها بنجاح في كائن رسائل الاستقبال المخصص لذلك [SWS_Com_00555].
الاستخدام وسياق الاستدعاء
- سلوك التنفيذ المتزامن: تم تحديد الدالة بأنها متزامنة [SWS_Com_00555]. ويتم تنفيذها مباشرةً أثناء عملية الحفظ، بحيث ينتظر سياق الاستدعاء لوحدة COM اكتمال تنفيذ الاستدعاء المرجعي.
- المعلمات وقيم الإرجاع: وفقًا للبنية
void Com_CbkRxAck (void)، لا يتم تمرير معلمات دخل، ولا معلمات دخل/خرج، ولا معلمات خرج [SWS_Com_00555]. بالإضافة إلى ذلك، لا تُرجع الدالة أي قيمة إرجاع إلى الوحدة المستدعية [SWS_Com_00555]. - التوفر: تتوفر آلية الاستدعاء للنظام كواجهة قابلة للتهيئة [SWS_Com_00555].
التزامن ومعالجة الأخطاء
تم تحديد الخاصية ”don't care“ لقابلية إعادة الدخول [SWS_Com_00555]. ومن المرجح أن يعني هذا أن مواصفة COM لا تفرض أي متطلبات على الاستدعاء القابل لإعادة الدخول، وأن آليات الحماية ضد الوصول المتزامن تقع على عاتق المستخدم. سؤال (مفتوح) ونظرًا لعدم تحديد قيم إرجاع أو رموز أخطاء أو رسائل خطأ محددة لـ DET أو DEM [SWS_Com_00555]، فمن المرجح وجوب معالجة أي أخطاء أثناء المعالجة محليًا بالكامل داخل دالة الاستدعاء المرجعي.
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على المواصفة R20-11.
دالة Com_CbkRxTOut [SWS_Com_00556] 📄 PDF
void Com_CbkRxTOut (void);
This callback corresponds to notification class 3 of [17]. It is called immediately after a message reception error has been detected by the deadline monitoring mechanism.
الاستخدام والدلالات
تُستخدم دالة الاستدعاء المرجعي Com_CbkRxTOut للإشعار بعدم وصول رسالة متوقعة. ووفقًا لـ [SWS_Com_00556]، يتم استدعاؤها مباشرةً بمجرد أن تكتشف آلية مراقبة المهلة الزمنية للوحدة خطأً في استقبال الرسالة. يتوافق هذا الإشعار مع فئة الإبلاغ 3 («notification class 3 of [17]») ويتوفر كواجهة قابلة للتهيئة [SWS_Com_00556].
يتم الاستدعاء بشكل متزامن (Synchronous) بدون معلمات تمرير وبدون قيمة إرجاع (void Com_CbkRxTOut(void)) [SWS_Com_00556]. وبالتالي، تشير الدالة إلى المستقبل المستدعي أو طبقة البرمجيات الأعلى بحدوث حدث انتهاء المهلة نفسه فقط، دون إرسال بيانات سياقية مباشرة في الاستدعاء.
التزامن والقيود
تم تحديد don't care في المواصفة لقابلية إعادة الدخول للدالة [SWS_Com_00556]. ونظرًا لأن الاستدعاء يتم بشكل متزامن وفوري بعد اكتشاف الخطأ، فمن المفترض أنه يجب تصميم تنفيذ روتين الاستدعاء المرجعي ليعمل بأقل قدر من الحظر، لتجنب تأخير مراقبة المهلة الزمنية لوحدة COM بشكل غير مسموح به. سؤال Q-88055efc50f5843b (مفتوح)
تم إنشاء هذا النص بواسطة ذكاء اصطناعي وهو بمثابة دليل توجيهي. المرجع المعتمد هو مواصفات AUTOSAR المشار إليها.
دالة Com_CbkInv [SWS_Com_00536] 📄 PDF
void Com_CbkInv (void);
This callback function corresponds to SWS_ Com_00680. It is called after recepti- on of an invalid signal or signal group respectively.
تُخطر دالة الاستدعاء الذاتي Com_CbkInv طبقات البرمجيات الأعلى باستلام بيانات اتصال معيبة أو غير صالحة في وحدة AUTOSAR COM [SWS_Com_00536]. ويتم استدعاؤها مباشرة بعد استلام إشارة غير صالحة أو مجموعة إشارات غير صالحة، وتُخطر المستقبل بوجود قيمة إشارة غير صالحة [SWS_Com_00536].
تمتلك الواجهة التوقيع void Com_CbkInv(void)، وبالتالي لا تقبل أي معاملات تمرير ولا تُرجع أي قيمة إرجاع إلى المستدعي [SWS_Com_00536]. يتم الاستدعاء بشكل متزامن، بينما يشار إلى سلوك إعادة الدخول في المواصفات بـ «don't care» [SWS_Com_00536]. ونظراً لعدم تمرير أي معاملات لتحديد الإشارة المتأثرة، فمن المحتمل أن يُستخدم المعرّف Com_CbkInv كقالب توقيع قابل للتهيئة للإشعارات الخاصة بكل إشارة. سؤال Q-6e02e6bcf324eb93 (مفتوح)
تنطبق الشروط الحدية التالية فيما يتعلق بالدمج وسلوك النظام:
- توفير الدالة قابل للتهيئة، مما يتيح تفعيل الإشعار عند الحاجة لكل إشارة أو مجموعة إشارات [SWS_Com_00536].
- من الناحية الوظيفية، تتوافق الدالة مع المتطلب
SWS_Com_00680لمعالجة إبطال الإشارات المستلمة في وحدة COM [SWS_Com_00536]. - لم يتم تحديد إجراءات معالجة أخطاء معينة أو رموز أخطاء أو رسائل خطأ إلى وحدات التطوير أو التشخيص مثل DET أو DEM لهذه الواجهة [SWS_Com_00536].
تم إنشاء ملاحظة الاستخدام هذه بشكل آلي استناداً إلى بيانات المواصفات.
دالة Com_CbkCounterErr [SWS_Com_00726] 📄 PDF
void Com_CbkCounterErr (PduIdType ComPduId, uint8 ExpectedCounter, uint8 ReceivedCounter);
This function is called immediately, if the AUTOSAR COM module receives an I - PDU counter that differs from the expected one. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM
تُستخدم دالة الاستدعاء الذاتي القابلة للتهيئة Com_CbkCounterErr للإشارة إلى الأخطاء أثناء مراقبة عداد I-PDU وفقًا لـ [SWS_Com_00726]. ويتم استدعاؤها مباشرة وبشكل متزامن بواسطة وحدة AUTOSAR COM عند اكتشاف قيمة عداد في I-PDU المستلمة لا تتطابق مع قيمة العداد المتوقعة. ويتيح ذلك الاكتشاف المبكر لأخطاء التسلسل عند استلام الرسائل.
ليس للواجهة أي قيمة معادة (void) وتمرر عند الاستدعاء ثلاث معلمات دخل لتحليل الأخطاء ([SWS_Com_00726]):
ComPduId(PduIdType): معرّف I-PDU المعنية التي حدث فيها خطأ العداد.ExpectedCounter(uint8): قيمة عداد I-PDU المتوقعة بواسطة وحدة COM.ReceivedCounter(uint8): قيمة العداد الموجودة فعليًا في الرسالة المستلمة.
فيما يتعلق بالتزامن، تم الإعلان عن قابلية إعادة الدخول للدالة في المواصفة على أنها \"don't care\" ([SWS_Com_00726]). لا تحدد [SWS_Com_00726] رسائل خطأ DET أو DEM معينة لهذه الواجهة. وبما أن دالة الاستدعاء الذاتي مُعرَّفة على أنها قابلة للتهيئة، فمن المفترض أنه يتم تنفيذها في طبقة أعلى مثل التطبيق للاستجابة لأخطاء النقل أو فقدان الحزم وفقًا لمتطلبات التطبيق. تفسير: نظرًا لأن الاستدعاء يتم مباشرة وبشكل متزامن في سياق معالجة استلام COM ([SWS_Com_00726])، فيُرجح ألا تنفذ الروتين المُستدعاة أي عمليات حظر (blocking). سؤال Q-a745eb5416fc156b (مفتوح)
تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي استنادًا إلى مواصفة AUTOSAR R20-11.
دالة Com_CbkTxPrep [SWS_Com_91013] 📄 PDF
void Com_CbkTxPrep (void);
This callback function indicates that the signals/ signal groups of a dedicated Com_ Main Function Tx instance will now be prepared for transmission.
تعمل دالة الاستدعاء الذاتي Com_CbkTxPrep كإشعار بأن إشارات أو مجموعات إشارات مثيل مخصص من Com_MainFunctionTx يتم إعدادها الآن للنقل [SWS_Com_91013]. يتم تنفيذ الدالة بشكل متزامن مع المثيل المستدعي [SWS_Com_91013]. وفقًا لبنيتها void Com_CbkTxPrep(void)، فإنها لا تستقبل معلمات دخل ولا معلمات دخل وخرج ولا معلمات خرج، وليس لها قيمة معادة [SWS_Com_91013].
يتوفر توفير الواجهة عبر التهيئة [SWS_Com_91013]. إذا تم تكوين معلمة التهيئة ComPreparationNotification، فيجب استدعاء الدالة المعنية Com_CbkTxPrep داخل MainFunctionTx المرتبطة بها [SWS_Com_00886]. وفي هذا السياق، يجب الالتزام الصارم بشرط ترتيب زمني محدد: يجب أن يتم الاستدعاء بالكامل قبل بدء المعالجة الفعلية لوحدات I-PDU داخل دالة Tx الرئيسية [SWS_Com_00886].
فيما يتعلق بسلوك التزامن والقيود المحتملة، تم تحديد Com_CbkTxPrep على أنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_Com_91013]. يرتبط سياق الاستدعاء ارتباطًا وثيقًا بسير تنفيذ المثيل المعني من MainFunctionTx [SWS_Com_91013]. ونظرًا لأنه يجب تنفيذ دالة الرد الفوري مباشرةً قبل بدء معالجة I-PDU، تم دمج الدالة بشكل متزامن في روتين الإرسال المقابل [SWS_Com_00886].
تم إنشاء ملاحظة الاستخدام هذه تلقائيًا بناءً على مواصفة AUTOSAR R20-11.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
دالة Com_RxIpduCallout [SWS_Com_00700] 📄 PDF
boolean Com_RxIpduCallout (PduIdType PduId, const PduInfoType* PduInfoPtr);
The I - PDU callout on receiver side can be configured to implement user - defined receive filtering mechanisms.
الدالة Com_RxIpduCallout هي استدعاء خارجي (Callout) قابل للتكوين في جانب الاستقبال، ويُستخدم لتنفيذ آليات ترشيح استقبال مخصصة للمستخدم لوحدات I-PDU [SWS_Com_00700]. يتم التنفيذ بشكل متزامن، وفيما يتعلق بإمكانية إعادة الدخول، تم تحديد الواجهة على أنها don't care [SWS_Com_00700].
يتم تمرير المعرف وبيانات PDU المستلمة إلى الاستدعاء [SWS_Com_00700]:
PduId: معرف وحدة I-PDU المستلمة [SWS_Com_00700].PduInfoPtr: مؤشر إلى بنيةPduInfoType، والتي توفر الطول (SduLength) بالإضافة إلى مؤشر إلى البيانات المفيدة (SduDataPtr) لوحدة I-PDU المستلمة [SWS_Com_00700].
فيما يتعلق بتوفير البيانات، يتطلب [SWS_Com_00816] أن تقوم وحدة AUTOSAR COM بإعادة توجيه جميع بيانات I-PDU المستلمة بالكامل إلى Com_RxIpduCallout، تمامًا كما تم توفيرها بواسطة طبقة موجه PDU (PduR).
من خلال القيمة المعادة المنطقية (Boolean)، يتحكم الاستدعاء (callout) في المعالجة اللاحقة لـ I-PDU في وحدة COM [SWS_Com_00700]:
true: تتم متابعة معالجة I-PDU المستلمة بصورة طبيعية [SWS_Com_00700].false: لا تتم متابعة معالجة I-PDU وبالتالي يتم إسقاطها [SWS_Com_00700].
لا تنص المواصفة على رموز أخطاء محددة أو ثوابت لرموز الاستجابة أو رسائل DET وDEM لهذا الاستدعاء [SWS_Com_00700].
ملاحظة: تم إنشاء ملاحظة الاستخدام هذه تلقائيًا بواسطة نظام ذكاء اصطناعي استنادًا إلى مواصفة AUTOSAR R20-11.
دالة Com_TxIpduCallout [SWS_Com_00346] 📄 PDF
boolean Com_TxIpduCallout (PduIdType PduId, PduInfoType* PduInfoPtr);
The I - PDU callout on sender side can be configured for example to implement user - defined transmission filtering or user - defined pre - transmission - processing of the outgoing I - PDU.
تُستخدم الدالة Com_TxIpduCallout كاستدعاء خارجي (Callout) قابل للتكوين في جانب الإرسال، وتُستدعى بشكل متزامن لإجراء معالجة مسبقة خاصة بالمستخدم أو ترشيح نقل لوحدة I-PDU صادرة [SWS_Com_00346].
المعلَمات وقيمة الإرجاع
PduId(in): يمرر معرف وحدة I-PDU المراد نقلها [SWS_Com_00346].PduInfoPtr(inout): يحتوي على طول البيانات المفيدة (SduLength) بالإضافة إلى مؤشر إلى البيانات المفيدة (SduDataPtr) لوحدة I-PDU [SWS_Com_00346]. يمكن من خلال هذا فحص بيانات I-PDU أو تعديلها قبل الإرسال.- قيمة الإرجاع (
boolean): تتحكم في المعالجة الإضافية لوحدة I-PDU [SWS_Com_00346]. تؤدي قيمة الإرجاعtrueإلى بدء الإرسال المنتظم لوحدة I-PDU، بينما تلغيfalseأي معالجة إضافية وبالتالي تلغي عملية النقل [SWS_Com_00346].
التزامن والتكوين
يمتلك الاستدعاء الخارجي معرف الخدمة (Service-ID) 0x29 وتم تحديد إمكانية إعادة الدخول الخاصة به في المواصفة بـ «don't care» [SWS_Com_00346]. تفسير: نظرًا لأن إمكانية إعادة الدخول غير مقيدة، فمن المرجح أن تتم الاستدعاءات في سياقات مهام مختلفة اعتمادًا على أمر الإرسال المُطلق، ولهذا السبب ينبغي أن تكون عمليات التنفيذ من جانب المستخدم آمنة خيطيًا (Thread-safe) عند مشاركة الموارد. سؤال Q-3ce35701879bb60c (مفتوح)
تم إنشاء هذا النص تلقائيًا. تستند جميع المعلومات حصريًا إلى إصدار مواصفة AUTOSAR R20-11.
نوع Com_StatusType [SWS_Com_00819] 📄 PDF
This is a status value returned by the API service Com_ Get Status().
يُعرّف نوع التعداد Com_StatusType قيمة الحالة لوحدة AUTOSAR COM ويتم توفيره عبر ملف الترويسة Com.h [SWS_Com_00819]. يعمل هذا النوع كقيمة معادة لخدمة API Com_GetStatus()، والتي يمكن للمستدعين من خلالها الاستعلام عن حالة التهيئة والتشغيل الحالية لوحدة الاتصال [SWS_Com_00819].
يميز نطاق القيم المحدد لـ Com_StatusType بين حالتين اثنتين بالضبط [SWS_Com_00819]:
COM_UNINIT: يشير إلى أن وحدة AUTOSAR COM غير مهيأة أو غير قابلة للاستخدام [SWS_Com_00819]. تمتلك هذه الحالة إلزاميًا القيمة العددية0x00(أو القيمة0) وتشكّل القيمة الافتراضية الإلزامية مباشرة بعد إعادة تعيين النظام [SWS_Com_00819].COM_INIT: يشير إلى أنه تمت تهيئة وحدة AUTOSAR COM بشكل صحيح وبالتالي فهي جاهزة للتشغيل وقابلة للاستخدام [SWS_Com_00819].
بالنسبة للبرمجيات المستدعية، يُستخدم تقييم هذه القيمة المعادة للتحقق من جاهزية وحدة الاتصال للعمل قبل استخدامها [SWS_Com_00819]. طالما ترجع الخدمة Com_GetStatus() القيمة COM_UNINIT، تُعتبر وحدة COM غير مهيأة أو غير قابلة للاستخدام [SWS_Com_00819]. وفقط عندما تصبح قيمة الحالة COM_INIT، تكون الوحدة مهيأة وجاهزة للتشغيل [SWS_Com_00819]. لم يتم تحديد رموز أخطاء أو قيم معادة أخرى لنوع التعداد هذا [SWS_Com_00819].
تم إنشاء ملاحظة الاستخدام هذه تلقائياً استناداً إلى المواصفة.
دليل المنفِّذ قيد الإعداد (التعقيد I1)
نوع Com_SignalIdType [SWS_Com_00820] 📄 PDF
The AUTOSAR COM module's signal object identifier.
نوع Com_SignalGroupIdType [SWS_Com_00821] 📄 PDF
The AUTOSAR COM module's signal group object identifier.
نوع Com_IpduGroupIdType [SWS_Com_00822] 📄 PDF
The AUTOSAR COM I - PDU module's group object identifier.
نوع Com_ConfigType [SWS_Com_00825] 📄 PDF
This is the type of the data structure containing the initialization data for COM.
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/CP_MOD_Com- Status
- unspecified
- Version
AUTOSAR/AP/record/CP_MOD_Com@rel:R20-11#f4ad5b5c- Content hash
f4ad5b5c- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_COM.pdf#nameddest=SWS_Com_00432
gemini-3.8-flash-low· 2026-10-13 · الأصل الألماني