DEENESPTFRRUARHIKOZHNL

LIN Interface (LinIf)

ModulLinIf (LIN Interface)
BSW-Modul-ID62
Standard-Header#include "LinIf.h"
SWS-SpezifikationAUTOSAR_SWS_LINInterface.pdf
ClusterLIN

دليل الوحدةمولَّد بالذكاء الاصطناعي

يُمرّر أطر LIN بين الطبقات العليا ومشغّل LIN، ويتحكم في الجداول الزمنية، والسكون، والاستيقاظ، وLIN-TP.
مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: claude-opus-5-5 · الجهد: high · درجة الحرارة: غير قابل للتحكم · الموجّه: 2c16f0f64a13 المصدر أسئلة مفتوحة (2)
المرساة السببية: R20-11 صالح اعتبارًا من R20-11 مُركَّب حديثًا لهذا الإصدار من المواصفة.
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يُمرّر أطر LIN بين الطبقات العليا ومشغّل LIN، ويتحكم في الجداول الزمنية، والسكون، والاستيقاظ، وLIN-TP.

تربط واجهة LIN وحدات الاتصال العليا بمشغّل LIN وجهاز الإرسال والاستقبال، وتتضمن أيضاً بروتوكول نقل LIN. وبصفته رئيسياً (Master)، تقوم القناة بمعالجة جداول المواعيد المحددة عبر LinIf_ScheduleRequest [SWS_LinIf_00202]. أما كونه تابعاً (Slave)، فإنه يستجيب فقط لرسائل الترويسة الصادرة من المشغّل [SWS_LinIf_91004]. علاوة على ذلك، يتحكم لكل قناة في السكون والاستيقاظ، ونقل التشخيص، وفي حالة التابع في Node Configuration. وتعتمد الخدمات المتاحة على نوع العقدة المكوّن للقنوات.

تُمرّر واجهة LIN‏ (LinIf) بين وحدات الاتصال العليا ومشغّل LIN وتتضمن في الوقت نفسه بروتوكول نقل LIN‏ [SWS_LinIf_00351]. وبالنسبة للطبقات العليا، تستدعي في R20-11 عمليات الاستدعاء القابلة للتكوين <User_TriggerTransmit> و<User_TxConfirmation> و<User_RxIndication> [SWS_LinIf_00528] [SWS_LinIf_00529] [SWS_LinIf_00530]؛ والمستخدم هو PduR أو CDD. وتُبلّغ عن تغييرات الوضع عبر عمليات استدعاء <User>_…Confirmation إلى LinSM‏ [SWS_LinIf_00521]. وتستخدم للطبقات السفلى Lin واختيارياً LinTrcv‏ [SWS_LinIf_00359].

kontext Nutzer PduR / CDD (<User_…>-Callouts) LinIf LinIf (inkl. LinTp) Nutzer->LinIf LinIf_Transmit, LinTp_Transmit LinSM LinSM (<User>-Callouts) LinSM->LinIf LinIf_ScheduleRequest, LinIf_GotoSleep, LinIf_Wakeup BswM BswM Com Com EcuM EcuM EcuM->LinIf LinIf_CheckWakeup Mirror Mirror (Bus Mirroring) Det Det LinIf->Nutzer <User_TriggerTransmit>, <User_TxConfirmation>, <User_RxIndication> LinIf->LinSM <User>_ScheduleRequestConfirmation, <User>_GotoSleepConfirmation, <User>_WakeupConfirmation LinIf->BswM BswM_LinTp_RequestMode (LinTp_Mode) LinIf->Com Com_SendSignal (response_error) LinIf->Mirror Mirror_ReportLinFrame LinIf->Det Det_ReportError, Det_ReportRuntimeError Lin Lin (LIN-Treiber) LinIf->Lin Lin_SendFrame, Lin_GetStatus, Lin_GoToSleepInternal, Lin_Wakeup LinTrcv LinTrcv (optional) LinIf->LinTrcv خدمات النمط والإيقاظ (LinTrcv_SetOpMode وغيرها) Lin->LinIf LinIf_HeaderIndication, LinIf_RxIndication, LinIf_TxConfirmation, LinIf_LinErrorIndication, LinIf_WakeupConfirmation

مخطط السياق: LinIf بين المستخدمين وLinSM وBswM وEcuM وMirror وكذلك Lin وLinTrcv. المصادر: [SWS_LinIf_00360] [SWS_LinIf_00469]

بعد LinIf_Init [SWS_LinIf_00198] تكون كل قناة في LINIF_CHANNEL_SLEEP. لا يُعالج LinIf الأطر إلا في LINIF_CHANNEL_OPERATIONAL SWS LinIf ص. 45. ويتم تنفيذ العمل لكل قناة عبر MainFunction خاصة بها [SWS_LinIf_00384].

linif_zustand cluster_init ‏LINIF_INIT (حالات فرعية لكل قناة) Reset Reset UNINIT LINIF_UNINIT Reset->UNINIT SLEEP LINIF_CHANNEL_SLEEP UNINIT->SLEEP ‏LinIf_Init (بدون أمر الانتقال إلى السكون) OP LINIF_CHANNEL_OPERATIONAL SLEEP->OP LinIf_Wakeup OP->SLEEP ‏LinIf_GotoSleep (التابع: بعد أمر الانتقال إلى السكون أو مهلة خمول الناقل)

مخطط الحالة: تؤدي التهيئة إلى حالة السكون؛ وتتنقل LinIf_Wakeup وLinIf_GotoSleep بين حالات القناة. المصادر: SWS LinIf ص. 45

يعمل السيد والتابع بصورة مختلفة تماماً. تُعالج قناة السيد جداول المواعيد، المختارة عبر LinIf_ScheduleRequest بالفهرس 1..255؛ بينما يمثل 0 NULL_SCHEDULE [SWS_LinIf_00197] [SWS_LinIf_00202]. ويقوم LinIf_Transmit بتمييز الأطر المتفرقة فقط؛ ولا يجلب LinIf البيانات إلا عند حلول الفتحة الزمنية المستحقة [SWS_LinIf_00706]. وفي المقابل، لا يستجيب التابع إلا لـ LinIf_HeaderIndication. ويقرر بناءً على PID بشأن الإرسال أو الاستقبال أو التجاهل [SWS_LinIf_00738] [SWS_LinIf_00733] [SWS_LinIf_00748]، ويدير إشارة response_error بشكل مستقل [SWS_LinIf_00763].

يدخل التابع في وضع السكون بعد أمر Go-to-sleep أو بعد مهلة خمول الناقل [SWS_LinIf_00750] [SWS_LinIf_00755]. ولا يؤكد الاستيقاظ إلا مع أول ترويسة يتم استقبالها [SWS_LinIf_00761]. ولأغراض التشخيص، يقوم LinTp في السيد بتبديل الجداول الزمنية عبر BswM_LinTp_RequestMode [SWS_LinIf_00629]. وفي التابع، يخدم LinIf تكوين العقدة (Node Configuration) وفقاً للمعيار ISO 17987-3 [SWS_LinIf_00771]. ويُبلّغ LinIf عن الأخطاء إلى DET، مثل LINIF_E_RESPONSE [SWS_LinIf_00729]. كما يُلغي عمليات نقل TP عند انتهاء المهل بـ E_NOT_OK [SWS_LinIf_00801] [SWS_LinIf_00806].

دور واجهة LIN بين المستخدمين والمشغّل وجهاز الإرسال والاستقبال

تُمرّر واجهة LIN‏ (LinIf) بين وحدات الاتصال العليا ومشغّل LIN. وتتضمن في الوقت نفسه بروتوكول نقل LIN: وتتوفر أيضاً خدماته مثل LinTp_Init وLinTp_Transmit عبر LinIf.h [SWS_LinIf_00350] [SWS_LinIf_00351]. وللطبقات السفلى، يستخدم LinIf خدمات المشغّل مثل Lin_GoToSleepInternal وLin_Wakeup وLin_WakeupInternal [SWS_LinIf_00359]. واختيارياً، يُضاف مشغّل LIN Transceiver، الذي يُعيّن LinIf خدمات الوضع والاستيقاظ الخاصة به لواجهات موحدة لجميع أجهزة الإرسال والاستقبال SWS LinIf ص. 24. ولتحقيق ذلك، تُمرّر LinIf_SetTrcvMode وLinIf_GetTrcvMode وLinIf_GetTrcvWakeupReason وLinIf_SetTrcvWakeupMode الاستدعاءات إلى مشغّل جهاز الإرسال والاستقبال [SWS_LinIf_00544] [SWS_LinIf_00545] [SWS_LinIf_00547] [SWS_LinIf_00550].

تستدعي LinIf مستخدميها نحو الأعلى عبر استدعاءات قابلة للتكوين: <User_TriggerTransmit> و<User_TxConfirmation> و<User_RxIndication> [SWS_LinIf_00528] [SWS_LinIf_00529] [SWS_LinIf_00530]. والمستخدم إما أن يكون PduR، وحينها يجب إدخال PduR_LinIfTriggerTransmit [SWS_LinIf_00722]، أو CDD، الذي تُضمّن LinIf ترويسة الاستدعاء العكسي الخاصة به [SWS_LinIf_00669]. وتُبلّغ LinIf عن تغييرات الوضع عبر <User>_ScheduleRequestConfirmation و<User>_GotoSleepConfirmation و<User>_WakeupConfirmation [SWS_LinIf_00520] [SWS_LinIf_00521] [SWS_LinIf_00522]. والمستلم لهذه البلاغات هو LinSM‏ SWS LinSM ص. 24. بالإضافة إلى ذلك، تحتاج LinIf إلى الخدمات BswM_LinTp_RequestMode وCom_SendSignal وDet_ReportError [SWS_LinIf_00360]. واعتباراً من R24-11، يحل LSduR محل PduR أو CDD كمستخدم علوي SWS LinIf ص. 1. وبالنسبة للإصدار R20-11، تنطبق استدعاءات <User_…>.

كل قناة تكون إما سيداً وإما تابعاً. ولا توجد خدمات التابع مثل LinIf_HeaderIndication أو LinIf_GetConfiguredNAD إلا في حال تكوين قناة تابع واحدة على الأقل [SWS_LinIf_00863] [SWS_LinIf_00861]. ولا يوجد LinIf_ScheduleRequest إلا مع وجود قناة سيد واحدة على الأقل [SWS_LinIf_00858]. وتعمل المعالجة الدورية في LinIf_MainFunction_<LinIfChannel.ShortName> [SWS_LinIf_00384]. وتتواجد هذه الوظيفة مرة واحدة لكل قناة SWS LinIf ص. 119 وتُستدعى بالدورة LinIfMainFunctionPeriod. وفي السيد، تستعلم عن مدير جدول المواعيد، بينما تراقب في التابع الشروط الزمنية SWS LinIf ص. 45. ويتم تفعيل Bus Mirroring لكل قناة بواسطة LinIf_EnableBusMirroring؛ وبعدها تُبلّغ LinIf عن الأطر المستلمة والمُرسلة إلى وحدة Mirror‏ [SWS_LinIf_00876] [SWS_LinIf_00838] [SWS_LinIf_00873].

kontext Nutzer PduR / CDD (<User_…>-Callouts) LinIf LinIf (inkl. LinTp) Nutzer->LinIf LinIf_Transmit, LinTp_Transmit LinSM LinSM (<User>-Callouts) LinSM->LinIf LinIf_ScheduleRequest, LinIf_GotoSleep, LinIf_Wakeup BswM BswM Com Com EcuM EcuM EcuM->LinIf LinIf_CheckWakeup Mirror Mirror (Bus Mirroring) Det Det LinIf->Nutzer <User_TriggerTransmit>, <User_TxConfirmation>, <User_RxIndication> LinIf->LinSM <User>_ScheduleRequestConfirmation, <User>_GotoSleepConfirmation, <User>_WakeupConfirmation LinIf->BswM BswM_LinTp_RequestMode (LinTp_Mode) LinIf->Com Com_SendSignal (response_error) LinIf->Mirror Mirror_ReportLinFrame LinIf->Det Det_ReportError, Det_ReportRuntimeError Lin Lin (LIN-Treiber) LinIf->Lin Lin_SendFrame, Lin_GetStatus, Lin_GoToSleepInternal, Lin_Wakeup LinTrcv LinTrcv (optional) LinIf->LinTrcv خدمات النمط والإيقاظ (LinTrcv_SetOpMode وغيرها) Lin->LinIf LinIf_HeaderIndication, LinIf_RxIndication, LinIf_TxConfirmation, LinIf_LinErrorIndication, LinIf_WakeupConfirmation

مخطط السياق: تقع LinIf (مع LinTp) بين المستخدمين، وإدارة الوضع، وخدمات التشخيص/Mirror في الأعلى، وكذلك Lin وLinTrcv في الأسفل. المصادر: [SWS_LinIf_00359] [SWS_LinIf_00360] [SWS_LinIf_00469] [SWS_LinIf_00872] SWS LinIf (Abb.) ص. 17

التهيئة وآلات الحالة للقناة وLinTp

يتلقى LinIf_Init مؤشراً إلى LinIf_ConfigType [SWS_LinIf_00198] [SWS_LinIf_00668] وينقل الوحدة من LINIF_UNINIT إلى LINIF_INIT SWS LinIf ص. 47. وتمتلك كل قناة آلة حالة فرعية خاصة بها. وبعد التهيئة، تستقر في LINIF_CHANNEL_SLEEP دون إرسال أمر Go-to-sleep. ولا يعالج LinIf الترويسات والاستجابات إلا في LINIF_CHANNEL_OPERATIONAL SWS LinIf ص. 45. وتبدأ قنوات السيد بـ NULL_SCHEDULE SWS LinIf ص. 90. وتأخذ قنوات التابع معرّفات NAD الأولية والمكوّنة بالإضافة إلى PIDs من التكوين [SWS_LinIf_00767] [SWS_LinIf_00768] وتُتيح LIN Product Identification‏ [SWS_LinIf_00769].

linif_zustand cluster_init ‏LINIF_INIT (حالات فرعية لكل قناة) Reset Reset UNINIT LINIF_UNINIT Reset->UNINIT SLEEP LINIF_CHANNEL_SLEEP UNINIT->SLEEP ‏LinIf_Init (بدون أمر الانتقال إلى السكون) OP LINIF_CHANNEL_OPERATIONAL SLEEP->OP LinIf_Wakeup OP->SLEEP ‏LinIf_GotoSleep (التابع: بعد أمر الانتقال إلى السكون أو مهلة خمول الناقل)

مخطط الحالة: دورة حياة LinIf والحالات الفرعية للقناة؛ تؤدي التهيئة إلى حالة السكون، ويتنقل الاستيقاظ والسكون بين حالات القناة. المصادر: SWS LinIf ص. 45 [SWS_LinIf_00204] [SWS_LinIf_00205] [SWS_LinIf_00755]

يمتلك بروتوكول النقل آلة حالة خاصة به لكل قناة. يضبط LinTp_Init [SWS_LinIf_00350] الحالة LINTP_INIT مع الحالة الفرعية LINTP_CHANNEL_IDLE [SWS_LinIf_00710] SWS LinIf ص. 99. وتنتقل القناة بعد LINTP_CHANNEL_BUSY بمجرد التعرف على FF أو SF كرسالة TP‏ [SWS_LinIf_00322] [SWS_LinIf_00323] أو عند استدعاء LinTp_Transmit SWS LinIf ص. 108. ويغلق LinTp_Shutdown [SWS_LinIf_00355] جميع الاتصالات المفتوحة ويضبط جميع القنوات على LINTP_UNINIT SWS LinIf ص. 102. ويحدد LinIfTpSupported في وقت الترجمة ما إذا كان LinTp متضمناً أصلاً SWS LinIf ص. 61.

lintp_zustand cluster_init LINTP_INIT (je Kanal) Reset Reset UNINIT LINTP_UNINIT Reset->UNINIT IDLE LINTP_CHANNEL_IDLE UNINIT->IDLE LinTp_Init IDLE->UNINIT LinTp_Shutdown BUSY LINTP_CHANNEL_BUSY IDLE->BUSY بدء رسالة TP (اكتشاف LinTp_Transmit أو FF/SF) BUSY->UNINIT ‏LinTp_Shutdown (إغلاق الاتصالات) BUSY->IDLE TP-Nachricht beendet

مخطط الحالة: قناة LinTp بين IDLE وBUSY ضمن LINTP_INIT. المصادر: SWS LinIf (Abb.) ص. 43 [SWS_LinIf_00322] [SWS_LinIf_00710] [SWS_LinIf_00355]

القناة الرئيسية: تحدد جداول الجدولة الزمنية حركة مرور الناقل

في السيد، يشكل جدول المواعيد أساس كل عمليات الاتصال. وتمتلك كل قناة NULL_SCHEDULE فارغاً، والفواصل الزمنية بين الأطر هي مضاعفات لـ LinIfMainFunctionPeriod SWS LinIf ص. 44. ويُشفّر LinIf_SchHandleType الـ NULL_SCHEDULE كـ 0x00 والجداول المتبقية كفهرس 1..255. والفهرس فريد لكل قناة، ولكنه ليس فريداً لكل وحدة تحكم إلكترونية [SWS_LinIf_00197]. ويعمل LinIf_ScheduleRequest بشكل غير متزامن [SWS_LinIf_00202]؛ ويُبلّغ <User>_ScheduleRequestConfirmation عن اكتمال التبديل [SWS_LinIf_00520]. وفي التكوين، يتلقى كل جدول LinIfRunMode، وتحديداً RUN_CONTINUOUS أو RUN_ONCE ECUC-Parameter ص. 265. ولم تتم إعادة تسمية المعلمة Schedule إلا في R22-11 SWS LinIf ص. 1.

لا يؤدي LinIf_Transmit [SWS_LinIf_00201] إلى إرسال فوري. بل يقتصر على تمييز الأطر المتفرقة (في السيد) أو الأطر المحفزة بالأحداث (في التابع) بأنها معلقة SWS LinIf ص. 79. ومع ذلك فإنه يُرجع E_OK للأطر الأخرى [SWS_LinIf_00700]، بينما يُرجع E_NOT_OK أثناء NULL_SCHEDULE [SWS_LinIf_00719]. وإذا حلت فتحة إرسال مستحقة، يجلب LinIf البيانات عبر <User_TriggerTransmit> ويُسلّمها إلى المشغّل باستخدام Lin_SendFrame SWS LinIf ص. 37. وإذا قدّم المستخدم E_NOT_OK، يتم إسقاط الإطار [SWS_LinIf_00706]. ويتحقق LinIf من النتيجة عبر Lin_GetStatus، في أقرب وقت بعد الحد الأقصى لطول الإطار وعلى أبعد تقدير عند إدخال الجدول التالي SWS LinIf ص. 35. ويؤدي LIN_TX_ERROR وLIN_TX_BUSY إلى <User_TxConfirmation> مع E_NOT_OK [SWS_LinIf_00728]، بينما يؤدي LIN_TX_OK إلى E_OK SWS LinIf ص. 40.

نقل الإطار في القناة الرئيسية (Master)Nutzer (PduR/CDD)LinIfLinBSW-TaskUse Case: تسجيل (Sporadic Frame فقط)LinIf_Transmit(TxPduId, PduInfoPtr)CheckId()SetFlag()‏E_OK (E_NOT_OK عند NULL_SCHEDULE)Use Case: استحقاق فتحة الإرسالLinIf_MainFunction_<LinIfChannel.ShortName>()<User_TriggerTransmit>(TxPduId, PduInfoPtr)E_OK / E_NOT_OKaltE_OKLin_SendFrame(...)E_NOT_OKلا يتم إرسال الإطارUse Case: فحص الحالة بعد الحد الأقصى لطول الإطارLinIf_MainFunction_<LinIfChannel.ShortName>()Lin_GetStatus(...)LIN_TX_OK / LIN_TX_BUSY / LIN_TX_ERROR<User_TxConfirmation>(TxPduId, result)‏E_OK عند LIN_TX_OK، وإلا E_NOT_OK

مخطط التتابع: التسجيل، وجلب البيانات الموجّه بالفتحات، وتقييم الحالة عند إرسال السيد. المصادر: [SWS_LinIf_00201] [SWS_LinIf_00706] [SWS_LinIf_00728] SWS LinIf ص. 125 SWS PduR ص. 107

قناة التابع: الاستجابة لترويسات السيد

لا يعرف التابع أي جدول مواعيد. وهو يستجيب حصرياً لـ LinIf_HeaderIndication [SWS_LinIf_91004] SWS LinIf ص. 39. ويُقيّم LinIf أولاً معرّف PID:

  • إطار الإرسال: يكتب <User_TriggerTransmit> مباشرة في ذاكرة المشغّل المؤقتة [SWS_LinIf_00738]. وبعد ذلك يضبط LinIf‏ Cs وDl ويُبلّغ LIN_FRAMERESPONSE_TX [SWS_LinIf_00739]. وإذا قدّم المستخدم E_NOT_OK، يُبلّغ LinIf‏ LIN_FRAMERESPONSE_IGNORE [SWS_LinIf_00740].
  • إطار الاستقبال: يُبلّغ LinIf عن LIN_FRAMERESPONSE_RX [SWS_LinIf_00733].
  • إطار غير ذي صلة: يُبلّغ LinIf عن LIN_FRAMERESPONSE_IGNORE [SWS_LinIf_00748].

بعد الاستقبال الناجح، يستدعي المشغّل LinIf_RxIndication، وتُمرّر LinIf البيانات إلى <User_RxIndication> [SWS_LinIf_91005] [SWS_LinIf_00734]. وبعد الإرسال الناجح، يستدعي المشغّل LinIf_TxConfirmation، وتؤكد LinIf بـ E_OK [SWS_LinIf_91006] [SWS_LinIf_00741]. وفي الأطر المحفزة بالأحداث (Event-triggered Frames)، يوجد معرّف PID الخاص بالإطار غير المشروط المرتبط في بايت البيانات الأول [SWS_LinIf_00731]. وتُمسح راية التعليق بعد النقل الناجح [SWS_LinIf_00732].

تُدير LinIf إشارة response_error لكل قناة تابع بصورة مستقلة [SWS_LinIf_00763] وتُحدّثها عبر Com_SendSignal [SWS_LinIf_00764]. وتُمسح بعد النقل الناجح [SWS_LinIf_00747]. ويمكن اختيارياً الإبلاغ عن كل تغيير عبر <User_ResponseErrorSignalChanged> [SWS_LinIf_00765] [SWS_LinIf_00766]. ويمكن قراءة وكتابة NAD وقائمة PID في وقت التشغيل [SWS_LinIf_00829] [SWS_LinIf_00833] [SWS_LinIf_91002] [SWS_LinIf_91003]. وتُستثنى من ذلك معرّفات PID الخاصة بـ MRF وSRF [SWS_LinIf_00809] [SWS_LinIf_00824]. والمصدر النموذجي لهذه القيم هو الذاكرة غير المتطايرة SWS LinIf ص. 57.

معالجة الإطار الموجهة بالرأس في القناة التابعةLinController/UARTLinLinIfNutzer (PduR/CDD)Interrupt (Header empfangen)LinIf_HeaderIndication(Channel, PduPtr)EvaluatePID()altSende-Frame<User_TriggerTransmit>(TxPduId, PduInfoPtr)SduDataPtr = PduPtr->SduPtrE_OKCs, Dl setzenDrc = LIN_FRAMERESPONSE_TXEmpfangs-FrameCs, Dl setzenDrc = LIN_FRAMERESPONSE_RXغير ذي صلة أو TriggerTransmit = E_NOT_OKDrc = LIN_FRAMERESPONSE_IGNOREE_OKInterrupt (Response abgeschlossen)altResponse gesendetLinIf_TxConfirmation(Channel)<User_TxConfirmation>(TxPduId, E_OK)Response empfangenLinIf_RxIndication(Channel, Lin_SduPtr)<User_RxIndication>(RxPduId, PduInfoPtr)Fehler erkanntLinIf_LinErrorIndication(Channel, ErrorStatus)

مخطط التتابع: تقييم الترويسة في التابع مع تفريع بحسب اتجاه الإطار يليه تأكيد، أو إشعار استقبال، أو إشعار خطأ. المصادر: [SWS_LinIf_91004] [SWS_LinIf_00738] [SWS_LinIf_00733] [SWS_LinIf_00748] SWS LinIf ص. 121 SWS LinIf (Abb.) ص. 133

سكون قناة LIN واستيقاظها

يُرسل السيد أمر Go-to-sleep عند الطلب. ويدخل التابع في وضع السكون عند استقبال هذا الأمر أو عند بقاء الناقل خاملاً SWS LinIf ص. 48. ويُعد MRF مع NAD بقيمة 0 بمثابة أمر Go-to-sleep في التابع [SWS_LinIf_00750]. وتعمل مراقبة خمول الناقل في الحالة LINIF_CHANNEL_OPERATIONAL [SWS_LinIf_00751] [SWS_LinIf_00752] [SWS_LinIf_00753]. ويُعيد كل استدعاء عكسي للمشغّل تشغيل المؤقت [SWS_LinIf_00754]. وفي كلتا الحالتين، يستدعي LinIf‏ <User>_GotoSleepIndication [SWS_LinIf_00756]. وإذا استدعى المستخدم إثر ذلك LinIf_GotoSleep [SWS_LinIf_00204]، يتبع ذلك فوراً Lin_GoToSleepInternal [SWS_LinIf_00757]. وبعد ذلك، يمسح LinIf راية الاستيقاظ [SWS_LinIf_00758] ويؤكد بـ TRUE [SWS_LinIf_00759]. وفي السيد، تُرسل MainFunction الأمر عبر Lin_GoToSleep وفقاً للرسم التوضيحي وتؤكد بعد فحص الحالة SWS LinIf (Abb.) ص. 93 [SWS_LinIf_00521].

الانتقال إلى حالة السكون (قناة تابعة)LinLinIfLinTrcvLinIf User (LinSM)altGo-to-sleep-Kommando empfangenLinIf_RxIndication(Channel, Lin_SduPtr)‏MRF مع NAD = 0Bus-Idle-TimeoutBus-Idle-Timer abgelaufen<User>_GotoSleepIndication()LinIf_GotoSleep(Channel)Lin_GoToSleepInternal(Channel)فورًا، وليس في MainFunction فقطمسح راية الإيقاظ للقناة<User>_GotoSleepConfirmation(channel, TRUE)E_OKoptمشغل جهاز الإرسال والاستقبال يدعمLinIf_SetTrcvMode(LINTRCV_TRCV_MODE_SLEEP)LinTrcv_SetOpMode(LINTRCV_TRCV_MODE_SLEEP)

مخطط التتابع: انتقال قناة التابع إلى حالة السكون بعد أمر Go-to-sleep أو انتهاء مهلة خمول الناقل. المصادر: [SWS_LinIf_00750] [SWS_LinIf_00755] [SWS_LinIf_00756] [SWS_LinIf_00757] [SWS_LinIf_00759] SWS LinIf ص. 137

ينطلق الاستيقاظ إما من المستخدم عبر LinIf_Wakeup أو من استيقاظ ناقل مكتشف. ويتحقق LinIf من استيقاظ الناقل عبر LinIf_CheckWakeup SWS LinIf ص. 51. ويستدعي LinIf_CheckWakeup [SWS_LinIf_00378] لذلك Lin_CheckWakeup أو LinTrcv_CheckWakeup SWS LinIf ص. 112. وتُبلّغ المشغّلات عن الاستيقاظ المكتشف عبر LinIf_WakeupConfirmation [SWS_LinIf_00715]، وبناءً عليه يضبط LinIf راية استيقاظ القناة SWS LinIf ص. 98. ويتصرف LinIf_Wakeup [SWS_LinIf_00205] بشكل مختلف وفقاً للحالة؛ ففي قناة مستيقظة يحاكي النجاح، وفي قناة نائمة بدون راية استيقاظ يستدعي Lin_Wakeup SWS LinIf ص. 89. وإذا كانت راية الاستيقاظ مضبوطة، يُرجّح أن يُفعّل Lin_WakeupInternal القناة بدون نبضة استيقاظ [SWS_LinIf_00359]. سؤال Q-2efc22e03c8e284e (مفتوح)

يأتي التأكيد في السيد من MainFunction‏ SWS LinIf (Abb.) ص. 87. وفي التابع يأتي مع أول ترويسة يتم استقبالها [SWS_LinIf_00761]. وقبل إرجاع E_NOT_OK، يُبلّغ LinIf عن FALSE [SWS_LinIf_00762]. وإذا لم يُرسل السيد أي ترويسة، يغيب التأكيد ويدخل LinSM في مهلة زمنية SWS LinIf ص. 52. وإذا ورد طلب استيقاظ أثناء الدخول في السكون، يظل السيد قيد التشغيل SWS LinIf ص. 56. وفي هذه الحالة، يُعيد التابع بدء الاستيقاظ من جديد SWS LinIf ص. 53.

فحص الإيقاظ وطلب الإيقاظEcuMLinIf User (LinSM)LinIfLin / LinTrcvBSW-TaskUse Case: Bus-Wakeup (falls aufgetreten)LinIf_CheckWakeup(WakeupSource)Lin_CheckWakeup / LinTrcv_CheckWakeupLinIf_WakeupConfirmation(WakeupSource)تعيين راية الإيقاظ للقناةUse Case: WeckanforderungLinIf_Wakeup(Channel)altالقناة في وضع السكون، وراية الإيقاظ غير معينةLin_Wakeup(Channel)القناة في وضع السكون، وراية الإيقاظ معينة (افتراض)Lin_WakeupInternal(Channel)القناة مستيقظةkein Treiberaufruf, Erfolg simulierenE_OKVor E_NOT_OK ruft LinIf<User>_WakeupConfirmation(channel, FALSE)altMasterLinIf_MainFunction_<LinIfChannel.ShortName>()<User>_WakeupConfirmation(channel, TRUE)SlaveLinIf_HeaderIndication(Channel, PduPtr)الرأس الأول بعد LinIf_Wakeup<User>_WakeupConfirmation(channel, TRUE)

مخطط التتابع: فحص الاستيقاظ عبر EcuM، وطلب الاستيقاظ بواسطة المستخدم، والتأكيد المعتمد على العقدة. المصادر: [SWS_LinIf_00378] [SWS_LinIf_00715] [SWS_LinIf_00205] [SWS_LinIf_00761] [SWS_LinIf_00762] SWS EcuM ص. 182

التشخيص: LIN TP وتكوين العقدة (Node Configuration)

في السيد، يتحكم LinTp في جداول المواعيد عبر BswM_LinTp_RequestMode باستخدام LinTp_Mode [SWS_LinIf_00629]، ما دامت LinTpScheduleChangeDiag نشطة. وعند LinTp_Transmit [SWS_LinIf_00351]، يطلب LinTp جدول طلب التشخيص. وبعد الطلب الفعلي يتبع جدول استجابة التشخيص، وبعد الاستجابة يتبع الجدول التطبيقي SWS LinIf ص. 62. وبعد الطلب الوظيفي، تعود القناة إلى الجدول السابق [SWS_LinIf_00707]. ولا يتبع PduR_LinTpTxConfirmation إلا بعد انتهاء تغيير الجدول [SWS_LinIf_00702]. ويُنهي أي طلب فعلي جديد معالجة TP الجارية [SWS_LinIf_00708]. ويُعد LinTp_ChangeParameter [SWS_LinIf_00501] مجرد عنصر نائب ويرفض أي تغيير SWS LinIf ص. 103.

إرسال LIN-TP في الرئيسي مع تبديل الجدول الزمنيPduRLinIf (LinTp)BswMLinSMBSW-TaskLinTp_Transmit(TxPduId, PduInfoPtr)optLinTpScheduleChangeDiag = TRUEBswM_LinTp_RequestMode(Network, LINTP_DIAG_REQUEST)LinSM_ScheduleRequest(...)LinIf_ScheduleRequest(Channel, Schedule)‏E_OK (E_NOT_OK، إذا تم رفض تغيير الجدول الزمني)loopje MRF (SF, FF, CF)LinIf_MainFunction_<LinIfChannel.ShortName>()PduR_LinTpCopyTxData(...)إرسال MRF (مثل نقل الإطار العادي)optphysischer Request, Schedule-Wechsel aktiviertBswM_LinTp_RequestMode(Network, LINTP_DIAG_RESPONSE)PduR_LinTpTxConfirmation(id, result)بعد اكتمال تغيير الجدول الزمني

مخطط التتابع: إرسال TP في السيد مع تبديل الجدول عبر BswM وLinSM. المصادر: [SWS_LinIf_00351] [SWS_LinIf_00702] [SWS_LinIf_00878] SWS LinIf (Abb.) ص. 90 SWS LinIf ص. 139

يجب أن يكون LinIf جاهزاً للاستقبال في أي وقت. ويبدأ FF أو SF عملية الاستلام بـ PduR_LinTpStartOfReception. وأثناء ذلك، يُعيّن LinIf معرّف NAD إلى N-SDU-Id وينسخ كل إطار باستخدام PduR_LinTpCopyRxData SWS LinIf ص. 67. وفي التابع، تشترك طبقة النقل وNode Configuration في الإطارين MRF وSRF SWS LinIf ص. 54. لذلك يُقيّم LinIf كلّاً من NAD وPCI وSID لكل MRF‏ [SWS_LinIf_00771] ويوزعه وفقاً لذلك [SWS_LinIf_00772] [SWS_LinIf_00773] [SWS_LinIf_00774]. ويخدم معالج تكوين العقدة ترويسة SRF إذا كانت هناك استجابة معلقة؛ وإلا فإنها تذهب إلى طبقة النقل [SWS_LinIf_00775] [SWS_LinIf_00776]. ويتم دعم الخدمات التالية:

تخرج الاستجابات الإيجابية عند ترويسة SRF التالية [SWS_LinIf_00780].

nodecfg mrf MRF empfangen (LinIf_RxIndication) eval تقييم NAD وPCI وSID mrf->eval pci هل PCI صالح؟ eval->pci ign1 Frame ignorieren pci->ign1 لا func هل NAD وظيفي 0x7E مع طلب تهيئة العقدة؟ pci->func نعم ign2 Anfrage ignorieren func->ign2 نعم own هل يعنون العقدة الخاصة به؟ func->own لا fremd إبلاغ معالج تهيئة العقدة وطبقة النقل؛ وإلغاء الاستجابة المعلقة own->fremd لا nc طلب تهيئة عقدة صالح؟ own->nc نعم srf رأس SRF التالي: هل الاستجابة معلقة؟ fremd->srf acc Anfrage annehmen, N_As-Timer starten, Transportschicht informieren nc->acc نعم tp MRF an Transportschicht weiterleiten nc->tp لا acc->srf tp->srf resp Antwort durch Node-Configuration-Handler senden srf->resp نعم tpsrf SRF-Header an Transportschicht srf->tpsrf لا

مخطط النشاط: توزيع ترويسات MRF وSRF المستلمة في التابع على معالج تكوين العقدة وطبقة النقل. التفسير: تم اختيار ترتيب الفحوصات لأغراض العرض التوضيحي. المصادر: [SWS_LinIf_00771] [SWS_LinIf_00772] [SWS_LinIf_00774] [SWS_LinIf_00788] [SWS_LinIf_00790] [SWS_LinIf_00776] SWS LinIf ص. 59

التصرف في حالة الخطأ

يُبلّغ LinIf عن أخطاء التطوير إلى DET، من بين أمور أخرى عبر LINIF_E_UNINIT وLINIF_E_NONEXISTENT_CHANNEL وLINIF_E_PARAMETER وLINIF_E_PARAM_POINTER وLINIF_E_SCHEDULE_REQUEST_ERROR [SWS_LinIf_00376]. وتتحقق الاستدعاءات العكسية من القناة والمؤشرات [SWS_LinIf_00843] [SWS_LinIf_00844]. ويتجاهل LinIf الاستدعاءات غير المتوقعة لـ LinIf_RxIndication أو LinIf_TxConfirmation دون ترويسة سابقة [SWS_LinIf_00848] [SWS_LinIf_00852].

يعرف LinIf كأخطاء وقت التشغيل LINIF_E_RESPONSE وLINIF_E_NC_NO_RESPONSE [SWS_LinIf_00729]. وإذا استدعى المشغّل في التابع LinIf_LinErrorIndication، يُعتبر الإطار مفقوداً. ويُبلّغ LinIf حينها عن LINIF_E_RESPONSE، باستثناء حالة LIN_ERR_HEADER [SWS_LinIf_00735] [SWS_LinIf_00743]. بالإضافة إلى ذلك، فإنه يؤكد محاولة الإرسال بـ E_NOT_OK [SWS_LinIf_00742] ويضبط إشارة response_error عند حدوث أخطاء في الاستجابة [SWS_LinIf_00736] [SWS_LinIf_00744]. والترويسة الجديدة أثناء انتظار استجابة تجعل الإطار القديم باطلاً [SWS_LinIf_00846]. وعند تفعيل خاصية Mirroring، يُبلّغ LinIf عن مثل هذه الأخطاء برمز حالة مُحوّل [SWS_LinIf_00869] [SWS_LinIf_00870].

يراقب LinTp ثلاثة حدود زمنية، ويُلغي العملية مع إشعار E_NOT_OK إلى PduR عند تجاوزها:

يُلغي LinTp العملية أيضاً عند حدوث مشكلات في الذاكرة المؤقتة [SWS_LinIf_00676] [SWS_LinIf_00677]. ولا يحدث ذلك في السيد إلا بعد العودة إلى جدول المواعيد التطبيقي [SWS_LinIf_00792] [SWS_LinIf_00879]. وإذا كانت سعة الذاكرة المؤقتة غير كافية بفارق ضئيل، يقوم السيد بحجز ترويسات SRF‏ [SWS_LinIf_00679] SWS LinIf ص. 65. وبدلاً من ذلك، يُكرر LinIf محاولة النسخ بطول 0 حتى تتوفر مساحة أو يصل إطار CF التالي [SWS_LinIf_00793] [SWS_LinIf_00795]. ويتم الإلغاء بـ E_NOT_OK أيضاً عند ورود NAD غير صحيح [SWS_LinIf_00655]، أو رقم تسلسل غير صحيح [SWS_LinIf_00081]، أو FF أو SF بعد CF‏ [SWS_LinIf_00653]، وحدوث خطأ في استجابة SRF‏ [SWS_LinIf_00796]. وعند انتهاء مهلة P2، يطلب LinIf جدول المواعيد التطبيقي [SWS_LinIf_00877]. وإذا رفض LinIf_ScheduleRequest التبديل، يُرجع LinTp_Transmit E_NOT_OK [SWS_LinIf_00878].

في Node Configuration، يُلغي LinIf أي استجابة معلقة إذا انتهت مهلة N_As‏ [SWS_LinIf_00785] [SWS_LinIf_00786]، أو إذا ورد NAD غير معروف [SWS_LinIf_00787]، أو إذا ورد طلب جديد صالح [SWS_LinIf_00789]. وفي المقابل، فإن إطار MRF المشوّش يُبقي الاستجابة المعلقة قائمة [SWS_LinIf_00791]. ولم تتم إضافة Extended Production Errors لمهل LinTp وتبديلات الجداول المرفوضة إلا مع R23-11؛ ولا تنطبق على R20-11 SWS LinIf ص. 1 SWS LinIf ص. 74.

أدلة تفصيلية إضافية

دليل مُنشأ بواسطة الذكاء الاصطناعي استناداً إلى مقتطفات المواصفات الواردة في الحمولة لـ R20-11. وتكون المتطلبات المرتبطة هي الملزمة. وتم الرجوع إلى مواضع المستندات من الإصدارات اللاحقة بشكل تكميلي فقط، مع توضيح الفروق.

LIN Interface (LinIf)

Abstracts LIN hardware and manages schedule tables and frame transmission.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

دالة LinIf_Init [SWS_LinIf_00198] 📄 PDF

void LinIf_Init (const LinIf_ConfigType* ConfigPtr);

Initializes the LIN Interface.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 5afc2b05c058 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة المتزامنة LinIf_Init لتهيئة واجهة LIN وفقًا لـ [SWS_LinIf_00198]. تمتلك الواجهة معرّف الخدمة 0x01، وتتوفر عبر ملف الترويسة LinIf.h وتُنفذ بشكل متزامن.

سياق الاستدعاء والمعلمات

تتوقع الدالة معاملًا وحيدًا هو ConfigPtr (const LinIf_ConfigType*)، والذي يعمل كمؤشر إلى تكوين واجهة LIN [SWS_LinIf_00198]. ليس لها قيمة إرجاع ولا تمتلك معاملات إدخال/إخراج أو معاملات إخراج خالصة.

تسلسلات التهيئة والتفاعل

في إطار التهيئة، تُجري واجهة LIN إعدادات محددة للعقد التابعة (Slave):

  • وفقًا لـ [SWS_LinIf_00767]، تقوم الوحدة في LinIf_Init بتهيئة عنوان العقدة المبدئي (initial NAD) وعنوان العقدة المكوّن (configured NAD) للعقدة التابعة استنادًا إلى معاملي التكوين LinIfInitialNAD وLinIfConfiguredNAD.
  • وفقًا لـ [SWS_LinIf_00768]، تقوم الوحدة في LinIf_Init بتهيئة معرفات PIDs المكوّنة للعقدة التابعة من بيانات التكوين عبر معاملات التكوين LinIfFrameId.

التزامن والقيود

تم تحديد الدالة على أنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_LinIf_00198]. ولذلك، فإن الاستدعاء المتزامن أو المتداخل غير مسموح به. لم يتم تحديد رموز أخطاء معينة أو رسائل DET في نطاق المواصفة المقدم لهذه الخدمة.

تم إنشاء ملاحظة الاستخدام هذه بصورة آلية بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة LinIf_Transmit [SWS_LinIf_00201] 📄 PDF

Std_ReturnType LinIf_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);

Re quests transmission of a PDU.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 26fe69f012f5 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام وسياق الاستدعاء

تُستخدم الوظيفة LinIf_Transmit (معرف الخدمة 0x49) المعلنة في LinIf.h للطلب المتزامن لإرسال PDU [SWS_LinIf_00201]. كمعاملات إدخال، تتوقع TxPduId لتحديد هوية PDU المراد إرسالها بشكل فريد، بالإضافة إلى المؤشر PduInfoPtr إلى بنية PduInfoType، والتي يمكنها أيضاً الإشارة إلى البيانات الوصفية بالإضافة إلى طول البيانات وبيانات الحمولة الفعلية [SWS_LinIf_00201]. لا توجد معاملات إدخال/إخراج أو إخراج إضافية [SWS_LinIf_00201].

قيم الإرجاع ومتطلبات السلوك

كقيمة إرجاع، تقدم الخدمة الحالة Std_ReturnType [SWS_LinIf_00201]:

  • E_OK: تم قبول طلب الإرسال بنجاح بواسطة واجهة LIN [SWS_LinIf_00201].
  • E_NOT_OK: تعذر قبول طلب الإرسال [SWS_LinIf_00201].

تم توضيح التفاعل مع أنواع الإطارات بواسطة [SWS_LinIf_00700]: عند تهيئة واجهة LIN، تُرجع LinIf_Transmit أيضاً E_OK حتى لو كانت PDU تنتمي إلى إطار غير متفرق على عقدة رئيسية لـ LIN أو إلى إطار غير مدفوع بالأحداث على عقدة تابعة لـ LIN.

التزامن

فيما يتعلق ببيئة التنفيذ، فإن LinIf_Transmit قابلة لإعادة الدخول لمعرفات PDU مختلفة، ولكن لا يجوز استدعاؤها في الوقت نفسه أو بالتزامن لنفس TxPduId [SWS_LinIf_00201].

تم إنشاء ملاحظة الاستخدام هذه تلقائيًا بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة LinIf_ScheduleRequest [SWS_LinIf_00202] 📄 PDF

Std_ReturnType LinIf_ScheduleRequest (NetworkHandleType Channel, LinIf_SchHandleType Schedule);

Requests a schedule table to be executed. Only used for LIN master nodes.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 7aff69ddc1f7 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة LinIf_ScheduleRequest حصريًا على العقد الرئيسية لـ LIN لطلب تنفيذ جدول جدولة محدد [SWS_LinIf_00202]. تتم معالجة الاستدعاء بشكل غير متزامن ومصمم ليكون قابلاً لإعادة الدخول [SWS_LinIf_00202].

المعلمات وقيم الإرجاع

يُمرَّر عبر المعلمة Channel فهرس قناة LIN المعنية، بينما يحدد Schedule تعريف جدول الجدولة المراد تنفيذه حديثًا [SWS_LinIf_00202]. تُرجع الدالة الحالة كـ Std_ReturnType:

شروط الخطأ والقيود

تحدث القيمة المُرجعة E_NOT_OK وفقًا للمواصفة في حالات الخطأ التالية [SWS_LinIf_00202]:

  • واجهة LIN لم تتم تهيئتها بعد.
  • القناة المُشار إليها غير موجودة، أو أن الفهرس المُمرَّر يقع خارج نطاق القيم المسموح بها.
  • جدول الجدولة المُشار إليه غير موجود، أو أن مُعرِّفه غير صالح.
  • الحالة الحالية هي Sleep.

تفاعل

يؤثر فشل طلب الجدولة على عمليات النقل ذات المستوى الأعلى: إذا تم، في إطار استدعاء LinTp_Transmit عبر BswM_LinTp_RequestMode، بدء تبديل جدول الجدولة عبر LinIf_ScheduleRequest، فيجب على LinTp_Transmit إرجاع E_NOT_OK إلزاميًا عندما يستجيب LinIf_ScheduleRequest بـ E_NOT_OK [SWS_LinIf_00878].

تستند ملاحظة الاستخدام هذه حصريًا إلى بيانات مواصفة AUTOSAR Classic R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة LinIf_GotoSleep [SWS_LinIf_00204] 📄 PDF

Std_ReturnType LinIf_GotoSleep (NetworkHandleType Channel);

Initiates a transition into the Sleep Mode on the selected channel.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: e5eedba11183 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام

تبدأ الوظيفة LinIf_GotoSleep (معرف الخدمة 0x06، المعلنة في LinIf.h) الانتقال إلى وضع السكون على قناة LIN المحددة [SWS_LinIf_00204]. يتم الاستدعاء بشكل غير متزامن ويأخذ كمعامل إدخال Channel من النوع NetworkHandleType معرف القناة المعنية [SWS_LinIf_00204].

قيم الإرجاع ومعالجة الأخطاء

كقيمة إرجاع، تقدم الخدمة النوع Std_ReturnType بالمعاني التالية [SWS_LinIf_00204]:

  • E_OK: تم قبول طلب التبديل إلى وضع السكون بنجاح، أو أن انتقال الحالة إلى وضع السكون قيد التشغيل بالفعل، أو أن وحدة التحكم في حالة السكون بالفعل [SWS_LinIf_00204].
  • E_NOT_OK: لم يتم قبول الطلب. تشمل الأسباب المحتملة لذلك واجهة LIN لم تتم تهيئتها بعد، أو معرف قناة غير موجود أو يقع خارج نطاق القيم الصالحة [SWS_LinIf_00204].

التزامن وتفاعل النظام

تم تعريف الواجهة على أنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_LinIf_00204]. إذا تم استدعاء LinIf_GotoSleep، يجب على واجهة LIN استدعاء الوظيفة Lin_GotoSleepInternal على الفور ولا يجوز لها الانتظار حتى الدورة التالية للوظيفة الرئيسية [SWS_LinIf_00757].

تم إنشاء ملاحظة الاستخدام هذه بصورة آلية بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة LinIf_Wakeup [SWS_LinIf_00205] 📄 PDF

Std_ReturnType LinIf_Wakeup (NetworkHandleType Channel);

Initiates the wake up process.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: dd3e56a193fd المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تبدأ الوظيفة القابلة لإعادة الدخول LinIf_Wakeup عملية الاستيقاظ غير المتزامنة لقناة LIN المحددة بواسطة المعامل Channel [SWS_LinIf_00205]. وهي متاحة عبر الترويسة LinIf.h [SWS_LinIf_00205].

توفر قيمة الإرجاع Std_ReturnType معلومات حول قبول الطلب [SWS_LinIf_00205]:

  • يشير E_OK إلى أنه تم قبول طلب الاستيقاظ أو أن وحدة التحكم لم تعد بالفعل في حالة السكون [SWS_LinIf_00205].
  • يتم إرجاع E_NOT_OK إذا لم تكن واجهة LIN مهيأة، أو كان معرف القناة الممرر خارج النطاق الصالح، أو فشلت استدعاءات برامج التشغيل التابعة Lin_Wakeup أو Lin_WakeupInternal مع E_NOT_OK [SWS_LinIf_00205].

يتم التفاعل مع المستخدم عبر وظيفة الإشعار <User>_WakeupConfirmation:

  • في حالة حدوث خطأ، تستدعي واجهة LIN إجبارياً <User>_WakeupConfirmation(FALSE) قبل إرجاع E_NOT_OK [SWS_LinIf_00762].
  • عند القبول الناجح (E_OK)، تؤكد واجهة LIN الاستيقاظ بشكل غير متزامن: فقط عند استدعاء الوظيفة LinIf_HeaderIndication للمرة الأولى بعد ذلك، تُرسل الوحدة الاستدعاء <User>_WakeupConfirmation(TRUE) [SWS_LinIf_00761].

تم إنشاء هذا النص تلقائياً. وهو يستند إلى متطلبات مواصفة AUTOSAR.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة LinIf_SetTrcvMode [SWS_LinIf_00544] 📄 PDF

Std_ReturnType LinIf_SetTrcvMode (NetworkHandleType Channel, LinTrcv_TrcvModeType TransceiverMode);

Set the given LIN transceiver to the given mode.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: cb7567440122 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الوظيفة المتزامنة والقابلة لإعادة الدخول LinIf_SetTrcvMode (معرف الخدمة 0x08) لتبديل جهاز إرسال واستقبال LIN المحدد إلى وضع التشغيل المطلوب [SWS_LinIf_00544]. الواجهة متاحة عبر ملف الترويسة LinIf.h [SWS_LinIf_00544].

المعلمات وقيم الإرجاع

يتطلب الاستدعاء معاملي إدخال [SWS_LinIf_00544]:

  • Channel (NetworkHandleType): يحدد قناة LIN المراد التحكم فيها [SWS_LinIf_00544].
  • TransceiverMode (LinTrcv_TrcvModeType): يحدد انتقال الحالة المطلوب لجهاز الإرسال والاستقبال [SWS_LinIf_00544].

تشير قيمة الإرجاع من النوع Std_ReturnType إلى نتيجة عملية التبديل [SWS_LinIf_00544]:

  • E_OK: يتم إرجاعها عند تغيير حالة جهاز الإرسال والاستقبال بنجاح إلى الوضع المطلوب [SWS_LinIf_00544].
  • E_NOT_OK: تشير إلى فشل تغيير الحالة أو وجود معامل واحد على الأقل خارج النطاق المسموح به. تبقى الحالة السابقة لجهاز الإرسال والاستقبال دون تغيير [SWS_LinIf_00544].

التنفيذ وسلوك الخطأ

تُنفذ الوظيفة بشكل متزامن ومحددة كقابلة لإعادة الدخول [SWS_LinIf_00544]. لم يتم سرد رسائل خطأ DET أو DEM محددة بشكل منفصل في عنصر المواصفة؛ يؤدي فشل تغيير الوضع أو قيم المعاملات غير المسموح بها مباشرة إلى قيمة الإرجاع E_NOT_OK [SWS_LinIf_00544].

تم إنشاء ملاحظة الاستخدام هذه بصورة آلية بناءً على مواصفة AUTOSAR CP R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة LinIf_GetTrcvMode [SWS_LinIf_00545] 📄 PDF

Std_ReturnType LinIf_GetTrcvMode (NetworkHandleType Channel, LinTrcv_TrcvModeType* TransceiverModePtr);

Returns the actual sta te of a LIN Transceiver Driver.

دالة LinIf_GetTrcvWakeupReason [SWS_LinIf_00547] 📄 PDF

Std_ReturnType LinIf_GetTrcvWakeupReason (NetworkHandleType Channel, LinTrcv_TrcvWakeupReasonType* TrcvWuReasonPtr);

Returns the reason for the wake up that has been detected by the LIN Transceiver Driver.

دالة LinIf_SetTrcvWakeupMode [SWS_LinIf_00550] 📄 PDF

Std_ReturnType LinIf_SetTrcvWakeupMode (NetworkHandleType Channel, LinTrcv_TrcvWakeupModeType LinTrcvWakeupMode);

This API enables, disables and cl ears the notification for wakeup events on the addressed network

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: aabbd5422a4f المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة المتزامنة والقابلة لإعادة الدخول LinIf_SetTrcvWakeupMode لتفعيل أو تعطيل أو إعادة تعيين الإخطارات الخاصة بأحداث الاستيقاظ على قناة LIN المحددة [SWS_LinIf_00550]. يتوفر الإعلان عبر ملف الترويسة LinIf.h ويمتلك مُعرِّف الخدمة 0x0b [SWS_LinIf_00550].

تتوقع الواجهة معلمتي إدخال [SWS_LinIf_00550]:

  • Channel: مُعرِّف فريد لشبكة أو قناة LIN المراد مخاطبتها من النوع NetworkHandleType [SWS_LinIf_00550].
  • LinTrcvWakeupMode: وضع الاستيقاظ المطلوب لجهاز الإرسال والاستقبال من النوع LinTrcv_TrcvWakeupModeType [SWS_LinIf_00550].

تُرجع الدالة كقيمة مرجعة الحالة Std_ReturnType [SWS_LinIf_00550]:

  • E_OK: كان استدعاء خدمة API لبرنامج تشغيل جهاز إرسال واستقبال LIN ناجحًا وأرجع E_OK [SWS_LinIf_00550].
  • E_NOT_OK: فشلت خدمة API لبرنامج تشغيل جهاز إرسال واستقبال LIN (القيمة المُرجعة E_NOT_OK) أو أن معلمة واحدة على الأقل من المعلمات المُمرَّرة للقناة أو الوضع غير صالحة [SWS_LinIf_00550].

فيما يتعلق بالتفاعل، تفوض الدالة الطلب إلى برنامج تشغيل جهاز إرسال واستقبال LIN؛ ويُفترض أن LinIf يشكل هنا واجهة وسيطة بين الطبقات العليا وعتاد جهاز الإرسال والاستقبال [SWS_LinIf_00550]. سؤال Q-07b525a14a2c5fcd (مفتوح) نظرًا لأن الخدمة محددة على أنها قابلة لإعادة الدخول، فيجوز تنفيذها بالتوازي لقنوات مختلفة أو لنفس القناة [SWS_LinIf_00550].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي ويُستخدم كدليل توجيهي. وتعتبر وثائق مواصفات AUTOSAR الرسمية هي المرجع المعتمد.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة LinIf_GetPIDTable [SWS_LinIf_91002] 📄 PDF

Std_ReturnType LinIf_GetPIDTable (NetworkHandleType Channel, Lin_FramePidType* PidBuffer, uint8* PidBufferLength);

Retrieves all assigned PID values. The order is congruent to the LIN frame index. Only applicable for LIN slave nodes.

دالة LinIf_SetPIDTable [SWS_LinIf_91003] 📄 PDF

Std_ReturnType LinIf_SetPIDTable (NetworkHandleType Channel, Lin_FramePidType* PidBuffer, uint8 PidBufferLength);

Sets all assigned PID values. The order is congruent to the LIN frame index. Only applicable for LIN slave nodes.

دالة LinTp_Init [SWS_LinIf_00350] 📄 PDF

void LinTp_Init (const LinTp_ConfigType* ConfigPtr);

Initializes the LIN Transport Layer.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 24052c633b39 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام وسياق الاستدعاء

تُستخدم الدالة LinTp_Init لتهيئة طبقة النقل لبروتوكول LIN ([SWS_LinIf_00350]). وفقًا للمواصفة [SWS_LinIf_00350]، يعمل استدعاء الدالة بشكل متزامن.

توقيع الدالة هو void LinTp_Init (const LinTp_ConfigType* ConfigPtr). ويتم تمرير التكوين عبر معلمة الإدخال:

  • ConfigPtr (in): مؤشر إلى بيانات تكوين طبقة نقل LIN من النوع LinTp_ConfigType ([SWS_LinIf_00350]).

لا تُرجع الدالة أي قيمة (void) ولا تُحدد معلمات إخراج أو معلمات إدخال/إخراج ([SWS_LinIf_00350]). وهي تمتلك مُعرِّف خدمة سداسي عشري 0x40 وتتوفر عبر ملف الترويسة LinIf.h ([SWS_LinIf_00350]).

معالجة الأخطاء

لا يحدد المتطلب [SWS_LinIf_00350] لهذه الدالة أي رموز أخطاء محددة أو رسائل DET أو أحداث DEM. ولا يتم إرجاع أي حالة خطأ إلى جهة الاستدعاء ([SWS_LinIf_00350]).

التزامن والقيود

صُنفت الدالة LinTp_Init صراحةً على أنها غير قابلة لإعادة الدخول (Non Reentrant) ([SWS_LinIf_00350]). وبالتالي، لا يجوز استدعاؤها بشكل متزامن من عدة مسارات تنفيذ (threads) أو مهام (tasks) أو روتينات مقاطعة (interrupt routines). تفسير: يُرجَّح أن يتم الاستدعاء مركزيًا في إطار تسلسل تهيئة البرمجيات الأساسية (BSW)، قبل أن يمكن معالجة طلبات الاتصال اللاحقة. سؤال Q-6e391bdf8abb1a09 (مفتوح)

تفاعل

بالنسبة لـ LinTp_Init، لا تسرد هذه المقتطفات أي ارتباطات مباشرة بمتطلبات مواصفات أخرى أو دوال مجاورة ([SWS_LinIf_00350]). توفر الوحدة LinIf هذا الإعلان ([SWS_LinIf_00350]).

تم إنشاء ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى مواصفات AUTOSAR Classic الإصدار R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة LinTp_Transmit [SWS_LinIf_00351] 📄 PDF

Std_ReturnType LinTp_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);

Requests transmission of a PDU.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 444966ee5f38 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الوظيفة المتزامنة LinTp_Transmit لطلب إرسال PDU عبر بروتوكول نقل LIN ([SWS_LinIf_00351]). كمعاملات تمرير، تتوقع معرف PDU TxPduId بالإضافة إلى المؤشر PduInfoPtr، الذي يوفر طول البيانات بالإضافة إلى مؤشرات إلى بيانات PDU والبيانات الوصفية ([SWS_LinIf_00351]). قيمة الإرجاع هي E_OK عند قبول طلب الإرسال بنجاح وE_NOT_OK في حالة الرفض ([SWS_LinIf_00351]).

يخضع سلوك وقت التشغيل والتفاعل مع واجهة LIN للتعليمات التالية:

  • طلب الجدولة: إذا فشل تغيير الجدولة الذي تم البدء فيه في سياق الاستدعاء عبر BswM_LinTp_RequestMode عند LinIf_ScheduleRequest وأرجع E_NOT_OK، فيجب أيضاً على LinTp_Transmit الرد مباشرة بـ E_NOT_OK ([SWS_LinIf_00878]).
  • التأكيد: فقط إذا كان LinTp_Transmit ناجحاً (قيمة الإرجاع E_OK)، تستدعي واجهة LIN بعد تغيير جدول الجدولة الناجح أو الفاشل الوظيفة PduR_LinTpTxConfirmation بنتيجة إيجابية أو سلبية ([SWS_LinIf_00702]). في حالة رفض أمر الإرسال، يُلغى هذا الاستدعاء تماماً ([SWS_LinIf_00702]).
  • مقاطعة العمليات الجارية: إذا تم إطلاق طلب فيزيائي جديد عبر LinTp_Transmit أثناء انتظار استجابة فيزيائية أو أثناء استقبال الاستجابة، تلغي واجهة LIN معالجة TP الجارية بما في ذلك الاستقبال ومراقبة مهلة N_Cr وP2 وتقبل الطلب الجديد ([SWS_LinIf_00708]).

فيما يتعلق بالتزامن، فإن LinTp_Transmit قابلة لإعادة الدخول لمعرفات TxPduId مختلفة، ولكن لا يجوز تنفيذها بالتزامن لنفس TxPduId ([SWS_LinIf_00351]).

تستند ملاحظة الاستخدام هذه إلى مواصفة AUTOSAR Classic R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة LinTp_Shutdown [SWS_LinIf_00355] 📄 PDF

void LinTp_Shutdown (void);

Shutdowns the LIN TP.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: a1aa6e2da5f3 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة LinTp_Shutdown لإيقاف تشغيل بروتوكول نقل LIN بشكل مضبوط ([SWS_LinIf_00355]). وعبر استدعائها، يتم إنهاء تشغيل مكون LIN-TP ([SWS_LinIf_00355]). يتوفر إعلان الدالة عبر ملف الترويسة LinIf.h ([SWS_LinIf_00355]).

تنطبق خصائص المواصفة التالية على الاستخدام والتنفيذ ([SWS_LinIf_00355]):

  • المعلمات والقيمة المُرجعة: لا تحتوي الدالة على معلمات إدخال أو إدخال/إخراج أو إخراج (void) ولا تُرجع أي قيمة (void) ([SWS_LinIf_00355]).
  • تحديد الخدمة: تم تعريف الخدمة تحت مُعرِّف الخدمة 0x43 ([SWS_LinIf_00355]).
  • التزامنية: تتم معالجة الاستدعاء بشكل متزامن ([SWS_LinIf_00355]).
  • إعادة الدخول: الدالة غير قابلة لإعادة الدخول (Non Reentrant) ([SWS_LinIf_00355]). الاستدعاءات المتزامنة أو المتداخلة من سياقات مختلفة غير مسموح بها.

لم تصف المصادر رموز أخطاء محددة أو استجابات لـ Development Error Tracer (DET) أو معالجات خاصة للأخطاء لهذه الدالة ([SWS_LinIf_00355]). وبالمثل، تغيب المعلومات حول المتطلبات ذات الصلة أو جهة الاستدعاء الدقيقة؛ يُفترض أن الاستدعاء يتم في إطار إلغاء التهيئة التسلسلي لحزمة الاتصالات عبر إدارة حالة BSW ذات المستوى الأعلى. سؤال Q-e25a3c9531527c4f (مفتوح)

تم إنشاء ملاحظة الاستخدام هذه آليًا. وهي تستند حصريًا إلى بيانات مواصفة عنصر AUTOSAR في الإصدار R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة LinTp_ChangeParameter [SWS_LinIf_00501] 📄 PDF

Std_ReturnType LinTp_ChangeParameter (PduIdType id, TPParameterType parameter, uint16 value);

Request to change a specific transport protocol parameter (e.g. block size).

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 17541ee3b055 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام والدلالات

تُستخدم الدالة المتزامنة LinTp_ChangeParameter لضبط معلمة محددة لبروتوكول النقل لـ PDU معينة في وقت التشغيل [SWS_LinIf_00501]. وتُمرَّر كمعلمات معرّف PDU (id)، ومُعرِّف معلمة بروتوكول النقل المراد تغييرها (parameter، على سبيل المثال حجم الكتلة) بالإضافة إلى القيمة المستهدفة الجديدة (value) [SWS_LinIf_00501]. يتوفر الإعلان عبر ملف الترويسة LinIf.h [SWS_LinIf_00501].

قيم الإرجاع والسلوك في حالة الخطأ

تشير الدالة إلى نتيجة الطلب مباشرة عبر قيمتها المُرجعة من النوع Std_ReturnType [SWS_LinIf_00501]:

  • E_OK: تم تغيير المعلمة المطلوبة بنجاح إلى القيمة الجديدة [SWS_LinIf_00501].
  • E_NOT_OK: تم رفض التغيير من قِبل بروتوكول نقل LIN [SWS_LinIf_00501]. يُرجَّح أن يحدث هذا عادةً إذا كانت المعلمة غير صالحة أو إذا كان هناك إرسال جاري يمنع التعديل. سؤال Q-84aaf28c12dee2e9 (مفتوح)

التزامن والقيود

وفقًا للمواصفة، صُنفت LinTp_ChangeParameter على أنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_LinIf_00501]. وبالتالي فإن الاستدعاء المتزامن أو المتداخل لنفس السياق أو لسياقات متوازية غير مسموح به ويجب منعه بواسطة جهة الاستدعاء. يحظر الإجراء المتزامن جهة الاستدعاء حتى يتم اتخاذ القرار بشأن اعتماد قيمة المعلمة [SWS_LinIf_00501].

أُنشئ هذا النص بواسطة ذكاء اصطناعي ويستند حصريًا إلى بيانات مواصفات AUTOSAR R20-11.

دالة LinIf_CheckWakeup [SWS_LinIf_00378] 📄 PDF

Std_ReturnType LinIf_CheckWakeup (EcuM_WakeupSourceType WakeupSource);

Will be called when the Ecu M has been notified about a wakeup on a specific LIN channel.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: a8f712a4612b المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام وسياق الاستدعاء

يتم استدعاء الدالة المتزامنة LinIf_CheckWakeup بمجرد إخطار الوحدة EcuM بحدث استيقاظ على قناة LIN معينة [SWS_LinIf_00378]. يتم الاستدعاء باستخدام معلمة الإدخال WakeupSource من النوع EcuM_WakeupSourceType [SWS_LinIf_00378]. تحدد هذه المعلمة جهاز المصدر الذي بدأ حدث الاستيقاظ، والذي يمكن أن يكون وحدة تحكم LIN أو جهاز إرسال واستقبال LIN [SWS_LinIf_00378].

معالجة الأخطاء وقيم الإرجاع

تُرجع الدالة حالة من النوع Std_ReturnType كقيمة إرجاع [SWS_LinIf_00378]:

  • E_OK: لم يحدث أي خطأ أثناء تنفيذ الواجهة [SWS_LinIf_00378].
  • E_NOT_OK: حدث خطأ أثناء تنفيذ الواجهة، أو تم تمرير قيمة غير صالحة لـ WakeupSource [SWS_LinIf_00378].

التزامن والتكامل

تم تحديد الواجهة على أنها قابلة لإعادة الدخول، وتمتلك مُعرِّف الخدمة 0x60 وتتوفر عبر ملف الترويسة LinIf.h [SWS_LinIf_00378]. وهي تربط معالجة الاستيقاظ الخاصة بـ EcuM مباشرة بقنوات واجهة LIN [SWS_LinIf_00378].

تم توليد هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR CP R20-11.

دالة LinIf_EnableBusMirroring [SWS_LinIf_00876] 📄 PDF

Std_ReturnType LinIf_EnableBusMirroring (NetworkHandleType Channel, boolean MirroringActive);

Enables or disables mirroring for a LIN channel.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 78f53a1bd6f3 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تفعّل الدالة المتزامنة والقابلة لإعادة الدخول LinIf_EnableBusMirroring ميزة Bus-Mirroring لقناة LIN مفردة أو تعطلها [SWS_LinIf_00876]. تتوفر الدالة عبر ملف الترويسة LinIf.h، ويمكن الاستغناء عنها إذا لم تكن ميزة Bus-Mirroring مفعّلة عبر معلَم التكوين LinIfBusMirroringSupport [SWS_LinIf_00875]. وعادة ما تعمل وحدة Mirror كجهة استدعاء. سؤال Q-1703af5207cb7ade (مفتوح)

تُمرَّر قناة LIN المعنية عبر المعامل Channel، بينما يتحكم MirroringActive في الوضع [SWS_LinIf_00876]: عند تمرير TRUE يتم تفعيل Mirroring، وعند FALSE يتم تعطيله [SWS_LinIf_00876]. كقيمة مرجعة، تُرجع الدالة E_OK إذا تم تغيير وضع Mirroring بنجاح، أو E_NOT_OK إذا تم تحديد قناة غير صالحة أو كان Mirroring معطلاً بشكل عام [SWS_LinIf_00876]. ولا تبيّن مواصفة الدالة رسائل أخطاء محددة لـ DET أو DEM [SWS_LinIf_00876].

إذا كان Bus-Mirroring مفعّلاً بشكل عام عبر LinIfBusMirroringSupported وكذلك للقناة المعنية، فإن واجهة LIN توجّه الأحداث ذات الصلة إلى Mirror_ReportLinFrame:

  • الأطر المستلمة عند LinIf_RxIndication بالحالة LIN_RX_OK ومؤشر إلى البيانات المفيدة (Nutzdaten) [SWS_LinIf_00838] وكذلك عند قراءة حالة مشغل LIN للفتحات Rx [SWS_LinIf_00873].
  • الأطر المرسلة عند LinIf_TxConfirmation بالحالة LIN_TX_OK ومؤشر إلى البيانات المنقولة [SWS_LinIf_00839] وكذلك عند قراءة حالة مشغل LIN للفتحات Tx [SWS_LinIf_00874].
  • إخطارات الأخطاء عند LinIf_LinErrorIndication لجميع رموز الأخطاء باستثناء LIN_ERR_HEADER مع حالة الخطأ ومؤشر NULL كمحتوى بيانات [SWS_LinIf_00869].

تم توليد إشعار الاستخدام هذا بواسطة ذكاء اصطناعي استنادًا إلى مواصفة AUTOSAR Classic R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة LinIf_WakeupConfirmation [SWS_LinIf_00715] 📄 PDF

void LinIf_WakeupConfirmation (EcuM_WakeupSourceType WakeupSource);

The LIN Driver or LIN Transceiver Driver will call this function to report the wake up source after the successful wakeup detection during Check Wakeup or after power on by bus.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: ec4ca05f8c6e المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة LinIf_WakeupConfirmation للإبلاغ عن الاكتشاف الناجح لحدث الاستيقاظ إلى واجهة LIN [SWS_LinIf_00715].

الاستدعاء والمعاملات

يتم الاستدعاء بواسطة برنامج تشغيل LIN (LIN Driver) أو برنامج تشغيل جهاز إرسال واستقبال LIN (LIN Transceiver Driver) بعد حدوث اكتشاف ناجح للاستيقاظ أثناء Check Wakeup أو بعد التشغيل عبر الناقل (power on by bus) [SWS_LinIf_00715]. وتُمرَّر كمعلمة تمرير WakeupSource من النوع EcuM_WakeupSourceType، والتي تحدد جهاز المصدر الذي بدأ حدث الاستيقاظ (وحدة تحكم LIN أو جهاز إرسال واستقبال LIN) [SWS_LinIf_00715].

خصائص التنفيذ والواجهة

  • الدلالات: تتم معالجة الاستدعاء بشكل متزامن [SWS_LinIf_00715].
  • إعادة الدخول: تم تحديد الدالة على أنها قابلة لإعادة الدخول [SWS_LinIf_00715].
  • القيمة المُرجعة: لا توجد قيمة مُرجعة (void) [SWS_LinIf_00715].
  • ملف الترويسة: يتوفر الإعلان عبر LinIf.h (مُعرِّف الخدمة: 0x61) [SWS_LinIf_00715].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفات AUTOSAR.

دالة LinIf_HeaderIndication [SWS_LinIf_91004] 📄 PDF

Std_ReturnType LinIf_HeaderIndication (NetworkHandleType Channel, Lin_PduType* PduPtr);

The LIN Driver will call this function to report a received LIN header. This function is only applicable for LIN slave nodes (available only if the ECU has any LIN slave channel).

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 19187e1b092a المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يستدعي مشغل LIN دالة الرد LinIf_HeaderIndication بشكل متزامن للإبلاغ عن استقبال ترويسة LIN على قناة تابعة [SWS_LinIf_91004]. وهي متاحة حصرياً إذا كانت وحدة التحكم الإلكترونية تحتوي على قناة LIN تابعة واحدة مهيأة على الأقل [SWS_LinIf_91004]. الدالة قابلة لإعادة الدخول لقنوات مختلفة، ولكن لا يجوز استدعاؤها بشكل متزامن للقناة نفسها [SWS_LinIf_91004].

من خلال معلمة الدخل/الخرج PduPtr، يمرر المشغل المعرّف المستلَم (PID) بالإضافة إلى المؤشر إلى مخزن بيانات SDU المؤقت [SWS_LinIf_91004]. يقيم LinIf الـ PID ويتحكم في استجابة العقدة التابعة:

  • إطار الاستقبال: إذا كان الـ PID ينتمي إلى إطار استقبال مهيأ، يضبط LinIf نوع المجموع الاختباري PduPtr->Cs وطول البيانات PduPtr->Dl ويسند القيمة LIN_FRAMERESPONSE_RX إلى PduPtr->Drc قبل العودة [SWS_LinIf_00733].
  • إطار الإرسال: إذا كان إطار إرسال، يطلب LinIf البيانات المفيدة عبر <User_TriggerTransmit> [SWS_LinIf_00738]. عند توفيرها بنجاح (قيمة الإرجاع E_OK أو بيانات SRF من خلال Node Configuration Handler / بروتوكول النقل)، تتم تهيئة المجموع الاختباري والطول وتعيين PduPtr->Drc إلى LIN_FRAMERESPONSE_TX [SWS_LinIf_00739]. إذا فشل الاستعلام مع E_NOT_OK، يتم تعيين PduPtr->Drc إلى LIN_FRAMERESPONSE_IGNORE [SWS_LinIf_00740].
  • الإطارات غير ذات الصلة: إذا لم يكن الإطار ذا صلة بالتابع، يضبط LinIf PduPtr->Drc أيضاً على LIN_FRAMERESPONSE_IGNORE [SWS_LinIf_00748].

بالإضافة إلى ذلك، يُعيد كل استدعاء تحميل مؤقت خمول الناقل الجاري [SWS_LinIf_00754]. إذا تم الاستدعاء لأول مرة بعد نجاح LinIf_Wakeup، فسيتم إطلاق <User>_WakeupConfirmation(TRUE) [SWS_LinIf_00761]. عند استقبال ترويسة SRF، يبدأ LinIf أيضاً مؤقت N_As للإطارات المتتالية (CF) [SWS_LinIf_00800]. كقيمة إرجاع، يشير E_OK إلى قبول الطلب، بينما يشير E_NOT_OK إلى أخطاء في التطوير أو الإنتاج [SWS_LinIf_91004].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I2)

دالة LinIf_RxIndication [SWS_LinIf_91005] 📄 PDF

void LinIf_RxIndication (NetworkHandleType Channel, uint8* Lin_SduPtr);

The LIN Driver will call this function to report a successfully received response and provides the reception data to the LIN Interface. This function is only applicable for LIN slave nodes (available only if the ECU has any LIN slave channel).

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 6091ff4a3b4f المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يستدعي مشغل LIN دالة الرد LinIf_RxIndication بشكل متزامن لإخطار LIN-Interface بالاستقبال الناجح لاستجابة تتضمن بيانات الاستقبال [SWS_LinIf_91005]. تتوفر الدالة حصرياً في وحدات التحكم الإلكترونية التي تحتوي على قناة LIN تابعة واحدة مهيأة على الأقل [SWS_LinIf_91005].

تنطبق الشروط التالية فيما يتعلق بتمرير المعلمات والتزامن:

  • المعلمات: يتم تمرير معرّف القناة Channel بالإضافة إلى المؤشر Lin_SduPtr إلى مخزن مؤقت بديل (Shadow Buffer) أو مخزن استقبال الذاكرة المعينة لأجهزة LIN [SWS_LinIf_91005]. يكون هذا المؤشر صالحاً فقط في حالة استقبال الاستجابة فعلياً [SWS_LinIf_91005].
  • قيمة الإرجاع: لا تمتلك الدالة أي قيمة إرجاع (void) [SWS_LinIf_91005].
  • قابلية إعادة الدخول: الواجهة قابلة لإعادة الدخول لقنوات LIN المختلفة، ولكنها غير قابلة لإعادة الدخول للقناة نفسها [SWS_LinIf_91005].

في سياق التفاعل مع سلوك الوحدة، يُطلق الاستدعاء العديد من الإجراءات التنسيقية:

  • إعادة توجيه البيانات المفيدة المستلمة وطول البيانات المفيدة إلى الطبقة العليا عبر <User_RxIndication> [SWS_LinIf_00734].
  • التحقق من أوامر السكون: إذا كان الإطار عبارة عن إطار طلب السيد (MRF) مع NAD بقيمة 0، يتعرف LIN-Interface على أمر الانتقال إلى وضع السكون (Go-to-Sleep) ويبدأ الانتقال إلى وضع السكون [SWS_LinIf_00750].
  • التحكم في المؤقت: مع كل استدعاء، يُعاد تحميل مؤقت خمول الناقل [SWS_LinIf_00754]. بالإضافة إلى ذلك، يتحكم الاستدعاء في مؤقت N_Cr مع إطارات MRF (إطارات FF وCF) (بدء/إعادة تشغيل مع FF وCF قبل الإطار الأخير، وإيقاف عند آخر CF) [SWS_LinIf_00805].
  • عكس الناقل (Bus-Mirroring): إذا تم تفعيل Mirroring عالمياً وللقناة، يُبلّغ LIN-Interface بالإطار بالحالة LIN_RX_OK عبر Mirror_ReportLinFrame() [SWS_LinIf_00838].

تم إنشاء ملاحظة الاستخدام هذه بصورة آلية بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة LinIf_TxConfirmation [SWS_LinIf_91006] 📄 PDF

void LinIf_TxConfirmation (NetworkHandleType Channel);

The LIN Driver will call this function to report a successfully transmitted response. This function is only applicable for LIN slave nodes (available only if the ECU has any LIN slave channel).

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 4b5b40f235ec المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يستدعي مشغل LIN دالة الرد المتزامنة LinIf_TxConfirmation (معرّف الخدمة 0x7a، المعلنة في LinIf.h) لتأكيد الإرسال الناجح لاستجابة (Response) على القناة المحددة [SWS_LinIf_91006]. ليس للدالة قيمة إرجاع وهي مخصصة حصرياً لوحدات التحكم الإلكترونية التي تحتوي على قناة LIN تابعة واحدة مهيأة على الأقل [SWS_LinIf_91006].

عند وصول التأكيد، ينفذ LIN-Interface العديد من إجراءات المعالجة اللاحقة:

  • إخطار الطبقة العليا: تُعيد الوحدة توجيه حدث الإرسال عبر دالة الرد <User_TxConfirmation> مع قيمة الإرجاع E_OK إلى الطبقة العليا [SWS_LinIf_00741].
  • حالة الخطأ: إذا كان الإطار المرسل بنجاح يحتوي على إشارة الخطأ response_error، يقوم LIN-Interface بإعادة تعيين هذه الإشارة [SWS_LinIf_00747].
  • مراقبة هدوء الناقل: يعيد كل استدعاء لـ LinIf_TxConfirmation تحميل مؤقت خمول الناقل الجاري للقناة [SWS_LinIf_00754].
  • بروتوكول النقل (LinTp): إذا أكد المشغل الاستجابة لترويسة SRF (إطار استجابة التابع)، توقف الواجهة مؤقت المراقبة N_As [SWS_LinIf_00800].
  • عكس الناقل (Bus Mirroring): إذا تمت تهيئة النسخ المتطابق عالمياً عبر LinIfBusMirroringSupported وتم تفعيله عبر LinIf_EnableBusMirroring()، تُبلّغ الواجهة بالإطار بالحالة LIN_TX_OK ومؤشر لبيانات الإرسال إلى Mirror_ReportLinFrame() [SWS_LinIf_00839].

فيما يتعلق بالتزامن، تم تصميم LinIf_TxConfirmation ليكون قابلاً لإعادة الدخول لقنوات LIN المختلفة، ولكن لا يجوز استدعاؤه بشكل قابل لإعادة الدخول للقناة نفسها [SWS_LinIf_91006].

تم توليد ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة LinIf_LinErrorIndication [SWS_LinIf_91007] 📄 PDF

void LinIf_LinErrorIndication (NetworkHandleType Channel, Lin_SlaveErrorType ErrorStatus);

The LIN Driver will call this function to report a detected error event during header or response processing. This function is only applicable for LIN slave nodes (available only if the ECU has any LIN slave channel).

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: d5f182fa17f5 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام وسياق الاستدعاء

يستدعي مشغل LIN الدالة المتزامنة LinIf_LinErrorIndication للإبلاغ عن الأخطاء التي حدثت أثناء معالجة الترويسة أو الاستجابة [SWS_LinIf_91007]. وهي مخصصة حصرياً لعقد LIN التابعة وتتطلب أن تحتوي وحدة التحكم الإلكترونية على قناة LIN تابعة واحدة مهيأة على الأقل [SWS_LinIf_91007]. وتُمرر معرّفات القناة Channel بالإضافة إلى حالة الخطأ التي حدثت ErrorStatus من النوع Lin_SlaveErrorType كمعلمات [SWS_LinIf_91007].

معالجة الأخطاء والتزامن

الدالة قابلة لإعادة الدخول لقنوات مختلفة، ولكن لا يجوز استدعاؤها بالتزامن للقناة نفسها [SWS_LinIf_91007]. عند الاستدعاء، يعتبر LIN-Interface الاستجابة أو الإطار المنقول مفقوداً ويُبلّغ عن خطأ وقت التشغيل LINIF_E_RESPONSE إلى Default Error Tracer (DET)، ما لم تكن حالة الخطأ المُبلَّغ عنها هي LIN_ERR_HEADER [SWS_LinIf_00735]، [SWS_LinIf_00743].

التفاعل ومراقبة الناقل

بغض النظر عن رمز الخطأ المُمرَّر، يعيد LIN-Interface تحميل مؤقت خمول الناقل الجاري مع كل استدعاء لـ LinIf_LinErrorIndication [SWS_LinIf_00754]. في حالة حدوث خطأ في استجابة SRF بعد استقبال ترويسة SRF، يقطع LIN-Interface الإرسال ويُبلّغ الطبقة العليا بذلك عبر PduR_LinTpTxConfirmation بالنتيجة E_NOT_OK [SWS_LinIf_00796].

إذا كان Bus-Mirroring نشطاً عالمياً عبر LinIfBusMirroringSupported ومفعلاً للقناة، يُعيد LIN-Interface توجيه الأخطاء التي لا تساوي LIN_ERR_HEADER عبر Mirror_ReportLinFrame() بمؤشر NULL لمحتوى البيانات [SWS_LinIf_00869]. في هذه الحالة، تُترجم رموز أخطاء المشغل أولاً إلى قيم حالة مقابلة من النوع Lin_StatusType [SWS_LinIf_00870].

تم إنشاء ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى مواصفات AUTOSAR Classic R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I2)

دالة <User_TriggerTransmit> [SWS_LinIf_00528] 📄 PDF

Std_ReturnType <User_TriggerTransmit> (PduIdType TxPduId, PduInfoType* PduInfoPtr);

Within this API, the upper layer module (called module) shall check whether the available data fits into the b uffer 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 ch anging Pdu Info Ptr.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: f12957ea5e9a المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الواجهة القابلة للتكوين <User_TriggerTransmit> للاسترداد المتزامن لبيانات SDU من وحدة عليا من أجل عملية إرسال معلقة [SWS_LinIf_00528].

تُحدَّد SDU المطلوبة عبر المعلمة TxPduId، بينما يُمرَّر PduInfoPtr كمؤشر إلى بنية تحتوي على المخزن المؤقت المستهدف (SduDataPtr) وحجم المخزن المؤقت المتاح (SduLength) [SWS_LinIf_00528]. تتحقق الوحدة العليا المُستدعاة داخل هذه الـ API مما إذا كانت البيانات الجاهزة تتسع في حجم المخزن المؤقت المُبلَّغ عنه [SWS_LinIf_00528]. إذا توفرت مساحة كافية، تنسخ الوحدة بياناتها إلى SduDataPtr، وتحدّث SduLength بعدد البايتات المنسوخة فعليًا وتشير إلى النجاح بالقيمة المُرجعة E_OK [SWS_LinIf_00528].

أما إذا لم يكن حجم المخزن المؤقت كافيًا، فلا يتم نسخ بيانات SDU وتُرجع الوحدة E_NOT_OK دون تعديل PduInfoPtr [SWS_LinIf_00528]. في حال كانت القيمة المُرجعة E_NOT_OK، فلا يجوز لجهة الاستدعاء استخدام PduInfoPtr بأي حال من الأحوال، لأنه قد يشير إلى بيانات غير صالحة أو يكون مؤشر NULL [SWS_LinIf_00528].

فيما يتعلق بالتزامن، فإن الدالة قابلة لإعادة الدخول لمعرّفات PDU المختلفة، ولكنها غير قابلة لإعادة الدخول لنفس معرّف PDU [SWS_LinIf_00528].

تستند ملاحظة الاستخدام هذه إلى مواصفة AUTOSAR رقم SWS_LinIf_00528.

دالة <User_TxConfirmation> [SWS_LinIf_00529] 📄 PDF

void <User_TxConfirmation> (PduIdType TxPduId, Std_ReturnType result);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 37f6ac5aed5e المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يتم استدعاء دالة الرد (callback) القابلة للتكوين <User_TxConfirmation> بواسطة وحدة واجهة الاتصال الدنيا لتأكيد إرسال PDU أو فشل الإرسال لطبقة عليا [SWS_LinIf_00529]. يتم الاستدعاء بشكل متزامن ولا يُرجع أي قيمة [SWS_LinIf_00529].

المعلمات والدلالات

  • TxPduId (In): يشير إلى مُعرِّف الـ PDU المنقولة من النوع PduIdType [SWS_LinIf_00529].
  • result (In): يبلغ عن حالة نجاح الإرسال كـ Std_ReturnType مع القيم E_OK في حالة نجاح إرسال الـ PDU أو E_NOT_OK في حالة فشل الإرسال [SWS_LinIf_00529].

التزامن ومعالجة الأخطاء

فيما يتعلق بإمكانية إعادة الدخول، صُممت الدالة لتكون قابلة لإعادة الدخول لمعرّفات PDU المختلفة، ولكن لا يجوز استدعاؤها بشكل متكرر لنفس معرّف PDU [SWS_LinIf_00529]. لا تحدد الوحدة أي رموز خطأ خاصة أو رسائل DET أو DEM لهذه الواجهة؛ وبدلاً من ذلك، يُشار إلى فشل الإرسال عبر قيمة المعلمة E_NOT_OK [SWS_LinIf_00529]. ويُرجَّح أن يُحدَّد الاسم الفعلي للدالة وفقًا لخصائص الدمج بحسب طبقة المستخدم المُهيأة، نظرًا لأن الخدمة محددة على أنها قابلة للتكوين [SWS_LinIf_00529]. سؤال Q-35de931161f26cb8 (مفتوح)

تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على المواصفات.

دالة <User_RxIndication> [SWS_LinIf_00530] 📄 PDF

void <User_RxIndication> (PduIdType RxPduId, const PduInfoType* PduInfoPtr);

Indication of a received PDU from a lower layer communication interface module.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: efc39fd11ced المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم دالة الرد (callback) <User_RxIndication> للإشارة إلى استلام PDU من وحدة واجهة الاتصال الدنيا إلى الطبقة العليا [SWS_LinIf_00530]. يتم الاستدعاء بدلالات متزامنة ولا يمتلك أي قيمة مُرجعة [SWS_LinIf_00530].

المعلمات ومواصفات الواجهة

تمرر الدالة معلمتي إدخال إلى الطبقة العليا [SWS_LinIf_00530]:

  • RxPduId: مُعرِّف الـ PDU المستلمة من النوع PduIdType [SWS_LinIf_00530].
  • PduInfoPtr: مؤشر إلى بنية من النوع PduInfoType توفر طول بيانات الحمولة النافعة (SduLength)، ومؤشرًا إلى المخزن المؤقت مع بيانات الحمولة النافعة (SduDataPtr) بالإضافة إلى البيانات الوصفية المرتبطة بالـ PDU [SWS_LinIf_00530].

لا توجد معلمات إدخال/إخراج ولا معلمات إخراج فقط مخصصة لهذه الواجهة [SWS_LinIf_00530].

التزامن والتكوين

فيما يتعلق بإعادة الدخول، صُممت الدالة لتكون قابلة لإعادة الدخول لمعرّفات PDU المختلفة، ولكن تم تحديدها صراحةً على أنها غير قابلة لإعادة الدخول لمعرّفات PDU المتطابقة [SWS_LinIf_00530]. لذلك، يجب على جهات الاستدعاء التأكد من عدم حدوث استدعاءات متداخلة لنفس RxPduId. تم إعلان الدالة كواجهة قابلة للتكوين [SWS_LinIf_00530]؛ وبالتالي يُرجَّح أن يُحدَّد الاسم الفعلي للدالة في الطبقة العليا عبر تكوين الوحدة. سؤال Q-94175e8cd86775b6 (مفتوح)

تم إنشاء ملاحظة الاستخدام هذه آليًا استنادًا إلى المواصفة SWS_LinIf_00530.

دالة <User_ResponseErrorSignalChanged> [SWS_LinIf_00856] 📄 PDF

void <User_ResponseErrorSignalChanged> (NetworkHandleType Channel, boolean RespErrSigValue);

Notifies the change of the response error signal with the new value. Only applicable for LIN slave nodes. AUTOSAR CP R20 - of Document ID : AUTOSAR_ SWS_ LINInterface

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 7b27a8f9e901 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الواجهة <User_ResponseErrorSignalChanged> في الوحدة LinIf كدالة إخطار للإبلاغ عن تغير قيمة إشارة خطأ الاستجابة مع القيمة الجديدة للإشارة [SWS_LinIf_00856]. يتم الاستدعاء تزامنيًا ويمتلك معرف الخدمة 0x74 [SWS_LinIf_00856]. لا توجد معلمات إدخال/إخراج ولا توجد قيمة مرجعة؛ تم تعريف التوقيع بنوع الإرجاع void [SWS_LinIf_00856].

كمعلمات تمرير، تتوقع الدالة قيمتي إدخال بحتتين [SWS_LinIf_00856]:

  • Channel (النوع NetworkHandleType): تمييز فريد لقناة LIN المعنية [SWS_LinIf_00856].
  • RespErrSigValue (النوع boolean): القيمة الحالية لإشارة خطأ الاستجابة. تكون المعلمة true إذا تم ضبط الإشارة على 1، وإلا فإنها false [SWS_LinIf_00856].

فيما يتعلق بالتزامن وسياق الاستدعاء، تم تحديد أن الدالة قابلة لإعادة الدخول لقنوات مختلفة، ولكن لا يجوز استدعاؤها لنفس القناة بشكل غير قابل لإعادة الدخول [SWS_LinIf_00856]. ويتمثل القيد الوظيفي في أن خدمة الإخطار هذه قابلة للتطبيق حصريًا على عقد LIN التابعة (Slave) [SWS_LinIf_00856]. يتم توفير التصريح عبر ملف الترويسة LinIf_Externals.h [SWS_LinIf_00856].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي استنادًا إلى مواصفات AUTOSAR R20-11.

دالة <User_SaveConfigurationRequest> [SWS_LinIf_00857] 📄 PDF

boolean <User_SaveConfigurationRequest> (NetworkHandleType Channel);

Notifies the reception of a Save Configuration request. Only applicable for LIN slave nodes.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: f9fc99467908 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُخطر دالة الرد <User_SaveConfigurationRequest> (معرّف الخدمة 0x75) طبقةً أعلى باستلام طلب «Save Configuration»، وهي مصرّح عنها في LinIf_Externals.h [SWS_LinIf_00857]. تنطبق هذه الواجهة حصرياً على عُقد LIN التابعة [SWS_LinIf_00857].

يتم الاستدعاء بشكل متزامن، ومحدد بأنه قابل لإعادة الدخول (reentrant) [SWS_LinIf_00857]:

  • المعاملات: يُمرَّر عبر معامل الدخل Channel من النوع NetworkHandleType قناة LIN المعنية [SWS_LinIf_00857]. ولا توجد معاملات دخل أو خرج إضافية [SWS_LinIf_00857].
  • القيمة المرجعة: تُرجع الدالة قيمة من النوع boolean [SWS_LinIf_00857]. تشير القيمة المرجعة TRUE إلى وجوب إرسال استجابة إيجابية على ناقل LIN، بينما تمنع FALSE إرسال أي استجابة [SWS_LinIf_00857].

فيما يتعلق بمعالجة الأخطاء، لا تحدد المواصفة رموز أخطاء معينة ولا رسائل DET أو DEM [SWS_LinIf_00857]. ويتم التحكم في السلوك في حالة الخطأ أو الرفض مباشرةً عبر القيمة المرجعة البولينية، حيث يتم منع إرسال استجابة بواسطة FALSE [SWS_LinIf_00857]. وبما أن الاستدعاء مصنّف كقابل لإعادة الدخول، فمن المرجح أن تكون الدالة مصممة للاستدعاء المتزامن على قنوات مختلفة [SWS_LinIf_00857]. سؤال Q-84432030c1aff644 (مفتوح)

تم توليد هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.

نوع LinIf_SchHandleType [SWS_LinIf_00197] 📄 PDF

Index of the schedule table that is selectable and followed by LIN Interface. Value is unique per LIN c hannel/ controller, but not per ECU. The number of schedule tables is limited to 255

نوع LinIf_ConfigType [SWS_LinIf_00668] 📄 PDF

A pointer to an instance of this structure will be used in the initialization of the LIN Interface. The outline of the structure is defined in chapter 10 Configuration Specification.

نوع LinTp_ConfigType [SWS_LinIf_00426] 📄 PDF

This is the base type for the configuration of the LIN Transport Protocol A pointer to an instance of this structure will be used in the initialization of the LIN Transport Protocol. The outline of the structure is defined in chapter 10 Configuration Specification

نوع LinTp_Mode [SWS_LinIf_00629] 📄 PDF

This type denotes which Schedule table can be requested by LIN TP during diagnostic session

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 237979748ffe المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

نوع التعداد LinTp_Mode معرف في ملف الترويسة LinIf.h ويحدد وضع جدول الجدولة الذي يمكن طلبه بواسطة بروتوكول نقل LIN (LIN TP) أثناء جلسة التشخيص [SWS_LinIf_00629].

يتضمن نطاق القيم ثلاثة عناصر تعداد حرفية للتحكم في تغيير الجدولة على ناقل LIN [SWS_LinIf_00629]:

  • LINTP_APPLICATIVE_SCHEDULE: يحدد جدول الجدولة التطبيقي لحركة الرسائل المنتظمة [SWS_LinIf_00629].
  • LINTP_DIAG_REQUEST: يحدد جدول جدولة طلبات السيد (Master-Request) لنقل طلبات التشخيص [SWS_LinIf_00629].
  • LINTP_DIAG_RESPONSE: يحدد جدول جدولة استجابات التابع (Slave-Response) لاستقبال استجابات التشخيص [SWS_LinIf_00629].

فيما يتعلق بالتفاعل، يُستخدم النوع للتبديل بين عمليات نقل التشخيص واتصالات التطبيق المنتظمة داخل LIN-Interface [SWS_LinIf_00629]. لم يتم تحديد سياقات استدعاء معينة أو خصائص قابلية إعادة الدخول (Reentrancy) أو معالجة الأخطاء (مثل بلاغات DET أو DEM) لهذا النوع من البيانات المجرد في المصادر؛ ويُفترض أن النوع يُمرَّر كمعلمة دالة أثناء استدعاءات التحكم بواسطة بروتوكول نقل LIN إلى LIN-Interface. سؤال Q-1bf7553401882471 (مفتوح)

تم إنشاء هذا النص بواسطة ذكاء اصطناعي ويستند حصرياً إلى مواصفات إصدار AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

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

Record
AUTOSAR/AP/record/CP_MOD_LinIf
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_LinIf@rel:R20-11#c3a38b3f
Content hash
c3a38b3f
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_LINInterface.pdf#nameddest=SWS_LinIf_00198

التهيئة والحالة

Returns the version information of this module.

void LinIf_GetVersionInfo (Std_VersionInfoType* versioninfo);
LinIf_Init دالة

Initializes the LIN Interface.

void LinIf_Init (const LinIf_ConfigType* ConfigPtr);

Returns the version information of this module.

void LinTp_GetVersionInfo (Std_VersionInfoType* versioninfo);
LinTp_Init دالة

Initializes the LIN Transport Layer.

void LinTp_Init (const LinTp_ConfigType* ConfigPtr);

الخدمات · Get…

Reports the current configured NAD. Only applicable for LIN slave nodes.

Std_ReturnType LinIf_GetConfiguredNAD (NetworkHandleType Channel, uint8* Nad);

Retrieves all assigned PID values. The order is congruent to the LIN frame index. Only applicable for LIN slave nodes.

Std_ReturnType LinIf_GetPIDTable (NetworkHandleType Channel, Lin_FramePidType* PidBuffer, uint8* PidBufferLength);

Returns the actual sta te of a LIN Transceiver Driver.

Std_ReturnType LinIf_GetTrcvMode (NetworkHandleType Channel, LinTrcv_TrcvModeType* TransceiverModePtr);

Returns the reason for the wake up that has been detected by the LIN Transceiver Driver.

Std_ReturnType LinIf_GetTrcvWakeupReason (NetworkHandleType Channel, LinTrcv_TrcvWakeupReasonType* TrcvWuReasonPtr);

الخدمات · Set…

Sets the current configured NAD. Only applicable for LIN slave nodes.

Std_ReturnType LinIf_SetConfiguredNAD (NetworkHandleType Channel, uint8 Nad);

Sets all assigned PID values. The order is congruent to the LIN frame index. Only applicable for LIN slave nodes.

Std_ReturnType LinIf_SetPIDTable (NetworkHandleType Channel, Lin_FramePidType* PidBuffer, uint8 PidBufferLength);

Set the given LIN transceiver to the given mode.

Std_ReturnType LinIf_SetTrcvMode (NetworkHandleType Channel, LinTrcv_TrcvModeType TransceiverMode);

This API enables, disables and cl ears the notification for wakeup events on the addressed network

Std_ReturnType LinIf_SetTrcvWakeupMode (NetworkHandleType Channel, LinTrcv_TrcvWakeupModeType LinTrcvWakeupMode);

الخدمات · أخرى

Will be called when the Ecu M has been notified about a wakeup on a specific LIN channel.

Std_ReturnType LinIf_CheckWakeup (EcuM_WakeupSourceType WakeupSource);

Enables or disables mirroring for a LIN channel.

Std_ReturnType LinIf_EnableBusMirroring (NetworkHandleType Channel, boolean MirroringActive);

Initiates a transition into the Sleep Mode on the selected channel.

Std_ReturnType LinIf_GotoSleep (NetworkHandleType Channel);

The LIN Driver will call this function to report a received LIN header. This function is only applicable for LIN slave nodes (available only if the ECU has any LIN slave channel).

Std_ReturnType LinIf_HeaderIndication (NetworkHandleType Channel, Lin_PduType* PduPtr);

The LIN Driver will call this function to report a detected error event during header or response processing. This function is only applicable for LIN slave nodes (available only if the ECU has any LIN slave channel).

void LinIf_LinErrorIndication (NetworkHandleType Channel, Lin_SlaveErrorType ErrorStatus);

Requests a schedule table to be executed. Only used for LIN master nodes.

Std_ReturnType LinIf_ScheduleRequest (NetworkHandleType Channel, LinIf_SchHandleType Schedule);

Re quests transmission of a PDU.

Std_ReturnType LinIf_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);
LinIf_Wakeup دالة

Initiates the wake up process.

Std_ReturnType LinIf_Wakeup (NetworkHandleType Channel);

The LIN Driver or LIN Transceiver Driver will call this function to report the wake up source after the successful wakeup detection during Check Wakeup or after power on by bus.

void LinIf_WakeupConfirmation (EcuM_WakeupSourceType WakeupSource);

Request to change a specific transport protocol parameter (e.g. block size).

Std_ReturnType LinTp_ChangeParameter (PduIdType id, TPParameterType parameter, uint16 value);

Shutdowns the LIN TP.

void LinTp_Shutdown (void);

Requests transmission of a PDU.

Std_ReturnType LinTp_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);

دوال الاستدعاء الراجع

The LIN Driver will call this function to report a successfully received response and provides the reception data to the LIN Interface. This function is only applicable for LIN slave nodes (available only if the ECU has any LIN slave channel).

void LinIf_RxIndication (NetworkHandleType Channel, uint8* Lin_SduPtr);

The LIN Driver will call this function to report a successfully transmitted response. This function is only applicable for LIN slave nodes (available only if the ECU has any LIN slave channel).

void LinIf_TxConfirmation (NetworkHandleType Channel);

دوال Callout والواجهات المتوقعة

Notifies the change of the response error signal with the new value. Only applicable for LIN slave nodes. AUTOSAR CP R20 - of Document ID : AUTOSAR_ SWS_ LINInterface

void <User_ResponseErrorSignalChanged> (NetworkHandleType Channel, boolean RespErrSigValue);

Indication of a received PDU from a lower layer communication interface module.

void <User_RxIndication> (PduIdType RxPduId, const PduInfoType* PduInfoPtr);

Notifies the reception of a Save Configuration request. Only applicable for LIN slave nodes.

boolean <User_SaveConfigurationRequest> (NetworkHandleType Channel);

Within this API, the upper layer module (called module) shall check whether the available data fits into the b uffer 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 ch anging Pdu Info Ptr.

Std_ReturnType <User_TriggerTransmit> (PduIdType TxPduId, PduInfoType* PduInfoPtr);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.

void <User_TxConfirmation> (PduIdType TxPduId, Std_ReturnType result);

الأنواع

A pointer to an instance of this structure will be used in the initialization of the LIN Interface. The outline of the structure is defined in chapter 10 Configuration Specification.

Index of the schedule table that is selectable and followed by LIN Interface. Value is unique per LIN c hannel/ controller, but not per ECU. The number of schedule tables is limited to 255

This is the base type for the configuration of the LIN Transport Protocol A pointer to an instance of this structure will be used in the initialization of the LIN Transport Protocol. The outline of the structure is defined in chapter 10 Configuration Specification

LinTp_Mode نوع

This type denotes which Schedule table can be requested by LIN TP during diagnostic session