DEENESPTFRRUARHIKOZHNL

ADC Driver (Adc)

ModulAdc (ADC Driver)
BSW-Modul-ID123
Standard-Header#include "Adc.h"
SWS-SpezifikationAUTOSAR_SWS_ADCDriver.pdf
ClusterMicrocontroller Abstraction (MCAL)

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

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

يتحكم في محولات الإشارة التناظرية إلى رقمية للمتحكم الدقيق عبر مجموعات القنوات ويرجع قيمها الخام.

يغلف مشغل ADC في MCAL محولات الإشارة التناظرية إلى رقمية للمتحكم الدقيق ويحول القنوات دائمًا كمجموعات مهيأة: يتم إطلاقها برمجيًا أو عتاديًا، لمرة واحدة أو بصورة مستمرة [SWS_Adc_00515]. بعد Adc_Init يبدأ مستخدمون مثل IoHwAb عمليات التحويل. ويتعرفون على الاكتمال عبر الاستعلام عن الحالة أو عبر إشعار، ثم يقرؤون القيم الخام باستخدام Adc_ReadGroup أو Adc_GetStreamLastPointer. ويدعم المشغل اختياريًا تغييرات حالة الطاقة ذات المرحلتين. أهم الشروط الحدية: لا يجوز بدء أي تحويل مجموعة دون تكوين مخزن نتائج مؤقت مسبقًا باستخدام Adc_SetupResultBuffer [SWS_Adc_91000].

يغلف مشغل ADC في MCAL محولات الإشارة التناظرية إلى رقمية للمتحكم الدقيق. ويهيئه EcuM باستخدام Adc_Init [SWS_Adc_00365]. والمستخدم النموذجي هو IoHwAb؛ حيث تتلقى الإشعار IoHwAb_AdcNotification<#groupID> بعد اكتمال تحويل المجموعة [SWS_Adc_00082]. وقبل التحويل الأول، يجب إعداد مخزن نتائج مؤقت بحجم كافٍ بعد كل إعادة ضبط باستخدام Adc_SetupResultBuffer [SWS_Adc_91000].

kontext swc Sensor/Actuator SWC iohwab IoHwAb (Adc User) swc->iohwab Spannungswert anfordern bswm BswM / Rte bswm->iohwab Leistungsmodus wechseln ecum EcuM adc Adc (MCAL) ecum->adc Adc_Init / Adc_DeInit iohwab->adc التحكم في المجموعات وقراءتها، واجهات برمجة تطبيقات (APIs) لحالة الطاقة adc->iohwab IoHwAb_AdcNotification<#groupID>, IoHwAb_Adc_NotifyReadyForPowerState<#Mode> det Det adc->det أخطاء التطوير وأخطاء وقت التشغيل hw ADC Conversion Unit adc->hw Wandlung starten / stoppen hw->adc Wandlung abgeschlossen trig HW Trigger Source trig->hw Trigger-Ereignis

مخطط السياق: EcuM يهيئ، وIoHwAb تتحكم ويتم إشعارها، والأخطاء تذهب إلى DET، وعمليات التحويل تعمل في الأجهزة الطرفية. المصادر: SWS IoHwAb ص. 55، [SWS_Adc_00377]

يحول المشغل القنوات دائمًا كمجموعات مهيأة. ولكل مجموعة ثلاثة إعدادات:

  • مصدر الإطلاق: برمجي أو عتادي [SWS_Adc_00514].
  • نمط التحويل: One-Shot أو Continuous؛ وContinuous بإطلاق برمجي فقط [SWS_Adc_00515].
  • نمط الوصول: Single أو Streaming مع مخزن مؤقت خطي أو دائري [SWS_Adc_00528]، [SWS_Adc_00519].

توضح حالة المجموعة التقدم مع ADC_IDLE وADC_BUSY وADC_COMPLETED وADC_STREAM_COMPLETED [SWS_Adc_00513].

gruppenstatus idle ADC_IDLE busy ADC_BUSY idle->busy Adc_StartGroupConversion busy->idle Adc_StopGroupConversion comp ADC_COMPLETED busy->comp اكتملت جولة جميع القنوات [العينات المتبقية >= 1] scomp ADC_STREAM_COMPLETED busy->scomp Streaming-Puffer voll comp->idle Adc_StopGroupConversion comp->busy Adc_ReadGroup / Adc_GetStreamLastPointer comp->scomp Streaming-Puffer voll scomp->idle Adc_ReadGroup / Adc_GetStreamLastPointer [linear] scomp->idle Adc_StopGroupConversion scomp->busy Adc_ReadGroup / Adc_GetStreamLastPointer [دائري]

مخطط الحالة: حالة المجموعة أثناء تحويل تدفقي مستمر؛ ينتهي المخزن المؤقت الخطي في ADC_IDLE بعد القراءة. المصادر: SWS ADC ص. 39

يبدأ Adc_StartGroupConversion المجموعات المطلقة برمجيًا ويوقفها Adc_StopGroupConversion. ويتم تبديل المجموعات المطلقة عتاديًا عبر Adc_EnableHardwareTrigger وAdc_DisableHardwareTrigger [SWS_Adc_00367]، [SWS_Adc_91001]. يتعرف المستخدم على الاكتمال عبر استطلاع Adc_GetGroupStatus أو عبر إشعار؛ ويجب عليه تفعيل هذا الأخير بشكل منفصل SWS ADC ص. 57. وتتم قراءة القيم الخام غير المعدلة بمقياس باستخدام Adc_ReadGroup أو Adc_GetStreamLastPointer [SWS_Adc_00369]، [SWS_Adc_00375].

تنظم آلية الأولوية وقوائم الانتظار واستراتيجية الإزاحة الطلبات المتنافسة [SWS_Adc_00522]، [SWS_Adc_00523]. وبدون كليهما، يرفض المشغل الطلب الثاني باستخدام ADC_E_BUSY [SWS_Adc_91006]. واختياريًا، يبدل المشغل حالات الطاقة على مرحلتين: الإعداد باستخدام Adc_PreparePowerState، والتبديل باستخدام Adc_SetPowerState. وتعمل الأجزاء غير المتزامنة في Adc_Main_PowerTransitionManager [SWS_Adc_00478]، [SWS_Adc_00479].

دور مشغل ADC بين IoHwAb وعتاد المحول

مشغل ADC هو وحدة MCAL لمحولات الإشارة التناظرية إلى رقمية للمتحكم الدقيق. يقوم Adc_Init بتهيئة وحدات عتاد ADC والمشغل [SWS_Adc_00365]. وتعمل جميع الخدمات الأخرى على مجموعات قنوات يتم التعامل معها عبر معرف رقمي (Adc_GroupType) [SWS_Adc_00507]. المستخدم النموذجي هو I/O Hardware Abstraction: حيث تبدأ عمليات التحويل نيابة عن SWC للمستشعر ويتم إشعارها بعد الاكتمال عبر IoHwAb_AdcNotification<#groupID> [SWS_Adc_00082]، SWS IoHwAb ص. 55. يقوم EcuM بتهيئة المشغل، والذي يمثل Adc_Init بالنسبة له واجهة اختيارية SWS EcuM ص. 142.

يقع المشغل في أدنى مستوى بنية. ولذلك فإنه لا يقدم دوال استدعاء ذاتي (Callbacks) لوحدات أعمق SWS ADC ص. 79. لا تصل واجهة برمجة تطبيقات ADC (API) مباشرة إلى مسجلات النتائج العتادية. وتصل النتائج دائمًا إلى المستخدم عبر المخازن المؤقتة للتطبيق SWS ADC ص. 27. يبلغ المشغل عن الأخطاء عبر Det_ReportError [SWS_Adc_00377]. تعود فقرات الوثائق المقتبسة في الغالب إلى R23-11 حتى R25-11. والمتطلبات معيارية بالنسبة لـ R20-11.

kontext swc Sensor/Actuator SWC iohwab IoHwAb (Adc User) swc->iohwab Spannungswert anfordern bswm BswM / Rte bswm->iohwab Leistungsmodus wechseln ecum EcuM adc Adc (MCAL) ecum->adc Adc_Init / Adc_DeInit iohwab->adc التحكم في المجموعات وقراءتها، واجهات برمجة تطبيقات (APIs) لحالة الطاقة adc->iohwab IoHwAb_AdcNotification<#groupID>, IoHwAb_Adc_NotifyReadyForPowerState<#Mode> det Det adc->det أخطاء التطوير وأخطاء وقت التشغيل hw ADC Conversion Unit adc->hw Wandlung starten / stoppen hw->adc Wandlung abgeschlossen trig HW Trigger Source trig->hw Trigger-Ereignis

مخطط السياق: يتوسط مشغل ADC بين EcuM وIoHwAb وDET والأجهزة الطرفية للمحول؛ وتتدفق الإشعارات إلى الأعلى فقط. المصادر: SWS IoHwAb ص. 55، [SWS_Adc_00082]، [SWS_Adc_00480]، [SWS_Adc_00377]

يجب على التنفيذ رفض التكوينات التي تتضمن تعيينات أقسام غير مدعومة [SWS_Adc_00531]. ويجب أن تكون الأقسام المشار إليها عبر AdcKernelEcucPartitionRef مجموعة جزئية من أقسام AdcEcucPartitionRef [SWS_Adc_CONSTR_00001]. تفسير: يرجح أن يكون وراء ذلك التقسيم إلى جزء نواة قريب من المقاطعة وجزء واجهة، كما يوضح مثال تخطيط الذاكرة لـ Adc SWS MemMap ص. 57. سؤال Q-bb6e1ddff67fa0c3 (مفتوح)

دورة الحياة: التهيئة ومخزن النتائج المؤقت وإلغاء التهيئة

بعد إعادة الضبط، يكون المشغل في ADC_UNINIT. يؤدي Adc_Init إلى ADC_INIT، ويؤدي Adc_DeInit إلى العودة SWS ADC ص. 31. Adc_Init متزامن وغير قابل لإعادة الدخول. وفي المتغير PB، يشير ConfigPtr إلى مجموعة التكوين، بينما يتطلب المتغير PC NULL_PTR [SWS_Adc_00365]. Adc_ConfigType هو هيكل يعتمد على التنفيذ [SWS_Adc_00505]. ينشئ المكوِّن أسماء رمزية للقنوات والمجموعات في ترويسة التكوين SWS ADC ص. 123.

lebenszyklus cluster_init ADC_INIT (Modus je Gruppe konfiguriert) reset Reset uninit ADC_UNINIT reset->uninit oneshot ONE-SHOT uninit->oneshot Adc_Init [ONE_SHOT] cont CONTINUOUS uninit->cont Adc_Init [CONTINUOUS] oneshot->uninit Adc_DeInit cont->uninit Adc_DeInit

مخطط الحالة: يقوم Adc_Init وAdc_DeInit بالتبديل بين ADC_UNINIT وADC_INIT؛ وOne-Shot وContinuous هما خيارا تكوين لكل مجموعة. المصادر: SWS ADC ص. 31، SWS ADC ص. 91

بعد كل إعادة ضبط، يجب على المستخدم قبل التحويل الأول لمجموعة ما تمرير عنوان البدء لمخزن النتائج المؤقت باستخدام Adc_SetupResultBuffer. ويضمن التطبيق قدرة المخزن المؤقت على استيعاب جميع نتائج المجموعة [SWS_Adc_91000]. ولا يجوز بدء أي تحويل دون وجود مؤشر مخزن مؤقت مهيأ بشكل صالح SWS ADC ص. 54.

ينقل Adc_DeInit جميع وحدات العتاد إلى حالة مماثلة لإعادة الضبط عند التشغيل (Power-on-Reset) [SWS_Adc_00366]. وتعطل الخدمة جميع المقاطعات والإشعارات المستخدمة. وهي مسموح بها فقط عندما تكون جميع المجموعات في ADC_IDLE، ويمكن إيقاف تشغيلها عبر AdcDeInitApi SWS ADC ص. 59.

مجموعات القنوات: الإطلاق ونمط التحويل ونمط الوصول

تجمع المجموعة القنوات معًا [SWS_Adc_00517]، [SWS_Adc_00506]. ويتم تكوينها على ثلاثة محاور:

  • مصدر الإطلاق: ADC_TRIGG_SRC_SW أو ADC_TRIGG_SRC_HW [SWS_Adc_00514].
  • نمط التحويل: يحول ADC_CONV_MODE_ONESHOT كل قناة مرة واحدة بالضبط لكل إطلاق. ويحول ADC_CONV_MODE_CONTINUOUS بصورة مستمرة ومتاح فقط مع الإطلاق البرمجي [SWS_Adc_00515].
  • نمط الوصول: ADC_ACCESS_MODE_SINGLE أو ADC_ACCESS_MODE_STREAMING [SWS_Adc_00528]. عند التدفق، يحدد Adc_StreamNumSampleType عدد الجولات [SWS_Adc_00518]. يوقف المخزن المؤقت الخطي عملية التحويل بمجرد امتلائه؛ بينما يلتف المخزن الدائري [SWS_Adc_00519].

لا تعد أداة ضبط المقياس المسبق وزمن التحويل وزمن أخذ العينات ودقة القياس أنواعًا خاصة بـ API [SWS_Adc_00509]، [SWS_Adc_00510]، [SWS_Adc_00511]، [SWS_Adc_00512]. وبالنسبة للإطلاق العتادي، يمكن ضبط الحافة وإعادة تحميل المؤقت، شريطة أن يدعم العتاد ذلك [SWS_Adc_00520]، [SWS_Adc_00521]. والنتائج عبارة عن قيم خام غير معدلة بمقياس، ومحاذاة جهة اليسار أو اليمين [SWS_Adc_00508]، [SWS_Adc_00525].

يصف Adc_StatusType تقدم مجموعة ما [SWS_Adc_00513]:

  • ADC_IDLE: لم تبدأ.
  • ADC_BUSY: التحويل جارٍ.
  • ADC_COMPLETED: جولة واحدة اكتملت، ولكنها ليست الأخيرة.
  • ADC_STREAM_COMPLETED: مخزن النتائج المؤقت مكتمل.

تعتمد الانتقالات على التكوين SWS ADC ص. 39.

gruppenstatus idle ADC_IDLE busy ADC_BUSY idle->busy Adc_StartGroupConversion busy->idle Adc_StopGroupConversion comp ADC_COMPLETED busy->comp اكتملت جولة جميع القنوات [العينات المتبقية >= 1] scomp ADC_STREAM_COMPLETED busy->scomp Streaming-Puffer voll comp->idle Adc_StopGroupConversion comp->busy Adc_ReadGroup / Adc_GetStreamLastPointer comp->scomp Streaming-Puffer voll scomp->idle Adc_ReadGroup / Adc_GetStreamLastPointer [linear] scomp->idle Adc_StopGroupConversion scomp->busy Adc_ReadGroup / Adc_GetStreamLastPointer [دائري]

مخطط الحالة: حالة المجموعة أثناء تحويل مستمر ومطلق برمجيًا مع التدفق؛ ينتهي المخزن المؤقت الخطي في ADC_IDLE بعد القراءة، ويواصل الدائري عمله. المصادر: SWS ADC ص. 39، SWS ADC ص. 70، [SWS_Adc_00513]

من البدء إلى النتيجة: مسارات التحويل النموذجية

في أبسط الحالات، يتم تحويل One-Shot في ثلاث خطوات SWS ADC ص. 91:

  1. يبدأ Adc_StartGroupConversion المجموعة بشكل غير متزامن [SWS_Adc_00367].
  2. يستعلم Adc_GetGroupStatus عن الحالة [SWS_Adc_00374].
  3. يقرأ Adc_ReadGroup النتائج [SWS_Adc_00369].

تعيد البداية تعيين مؤشر المخزن المؤقت إلى العنوان الأساسي. ولا تفعل الإشعار تلقائيًا SWS ADC ص. 57.

تحويل أحادي مشغَّل برمجياً دون إشعارAdc UserAdcADC Conversion Unitالمتطلب المسبق بعد إعادة الضبط: إعداد المخزن المؤقت للنتائجAdc_SetupResultBuffer(Group1, DataBufferPtr)E_OKAdc_StartGroupConversion(Group1)start conversion(Group1)العودة (غير متزامن)loopAdc_GetGroupStatus = ADC_BUSYAdc_GetGroupStatus(Group1)ADC_BUSYconversion completed(Group1)Adc_GetGroupStatus(Group1)ADC_STREAM_COMPLETEDAdc_ReadGroup(Group1, DataBufferPtr)E_OK، القيم الأولية في مخزن القراءة المؤقت

مخطط التسلسل: إعداد المخزن المؤقت، والبدء، واستطلاع الحالة، والقراءة. المصادر: SWS ADC ص. 91، [SWS_Adc_91000]

بدلاً من الاستطلاع، يمكن للمستخدم استدعاء Adc_EnableGroupNotification مسبقًا [SWS_Adc_91003]. تتيح AdcGrpNotifCapability هذه الخدمة SWS ADC ص. 67. وفي حالة التحويل المستمر، يبلغ المشغل عن كل جولة مكتملة. ولا ينتهي ذلك إلا بـ Adc_StopGroupConversion [SWS_Adc_00368]، SWS ADC ص. 92.

تحويل مستمر مشغَّل برمجياً مع إشعارAdc UserAdcADC Conversion UnitAdc_EnableGroupNotification(Group1)العودةAdc_StartGroupConversion(Group1)start conversion(Group1)العودةloopje abgeschlossene Wandlungsrundeconversion completed(Group1)Adc_Notification_Group_1()Adc_ReadGroup(Group1, DataBufferPtr)E_OKAdc_StopGroupConversion(Group1)stop conversion(Group1)العودة

مخطط التسلسل: يتبع كل جولة مكتملة إشعار وقراءة، حتى يوقف المستخدم ذلك. المصادر: SWS ADC ص. 92، [SWS_Adc_00082]

يفعل Adc_EnableHardwareTrigger المجموعات المطلقة عتاديًا [SWS_Adc_91001]. وبعد ذلك، تقوم المجموعة بالتحويل عند كل حدث إطلاق SWS ADC ص. 62. لـ Adc_DisableHardwareTrigger [SWS_Adc_91002] عدة تأثيرات SWS ADC ص. 65:

  • يزيل الطلبات المنتظرة.
  • يلغي أي تحويل جارٍ، إذا كان العتاد يدعم ذلك.
  • يعطل الإشعار.
  • يضبط المجموعة على ADC_IDLE.

في حالة التدفق الخطي، يتوقف الإطلاق بمجرد امتلاء المخزن المؤقت SWS ADC ص. 95.

تحويل أحادي مشغَّل عتادياً مع إشعارAdc UserAdcADC Conversion UnitHW Trigger SourceAdc_EnableGroupNotification(Group1)Adc_EnableHardwareTrigger(Group1)enable hardware trigger(Group1)loopHW-Trigger-Ereignis, Benachrichtigung aktivstart conversion()conversion completed()Adc_Notification_Group_1()Adc_ReadGroup(Group1, DataBufferPtr)E_OKAdc_DisableGroupNotification(Group1)loopHW-Trigger-Ereignis, Benachrichtigung inaktivstart conversion()conversion completed()لا يوجد إشعارAdc_DisableHardwareTrigger(Group1)disable hardware trigger source(Group1)تنتقل المجموعة إلى ADC_IDLE

مخطط التسلسل: يؤدي كل حدث إطلاق إلى بدء تحويل؛ ويتم الإبلاغ فقط عند تفعيل الإشعار. المصادر: SWS ADC ص. 93

توجد طريقتان للقراءة:

  • ينسخ Adc_ReadGroup قيم الجولة الكاملة الأخيرة بترتيب القنوات التصاعدي. وإذا لم تكن هناك نتائج متوفرة، يرجع E_NOT_OK [SWS_Adc_00369]، SWS ADC ص. 61.
  • يرجع Adc_GetStreamLastPointer عدد العينات الصالحة لكل قناة ومؤشرًا إلى أحدث نتيجة لقناة المجموعة الأولى [SWS_Adc_00375]. ويجب على المستخدم مراعاة بنية المخزن المؤقت لكل قناة بنفسه في هذه الحالة SWS ADC ص. 27.

المجموعات المتنافسة: الأولوية وقوائم الانتظار والإزاحة

ينظم Adc_PriorityImplementationType الطلبات المتزامنة: بدون آلية، أو عتاد فقط، أو عتاد وبرمجيات [SWS_Adc_00522]. تتراوح الأولويات من 0 (الأدنى) إلى 255 [SWS_Adc_00516]. إذا قاطعت مجموعةٌ ذات أولوية أعلى مجموعةً أخرى، تبدأ جولتها من جديد (ADC_GROUP_REPL_ABORT_RESTART) أو تستمر (ADC_GROUP_REPL_SUSPEND_RESUME). وتُحفظ نتائج الجولات السابقة في كلتا الحالتين [SWS_Adc_00523].

بدون أولوية وبدون وضع في قائمة انتظار (Queuing)، يرفض برنامج التشغيل طلباً ثانياً باستخدام ADC_E_BUSY SWS ADC ص. 95. مع وضع قائمة الانتظار البرمجية، يقوم بتخزينه ويبدأه لاحقاً SWS ADC ص. 96. ومع تحديد الأولويات، تُزيح المجموعة ذات الأولوية الأعلى المجموعةَ الحالية SWS ADC ص. 97، SWS ADC ص. 98. كما يزيل Adc_StopGroupConversion أيضاً طلب بدء قيد الانتظار SWS ADC ص. 58.

prioritaet start طلب مجموعة جديد، بينما تقوم مجموعة أخرى بالتحويل prio آلية الأولوية؟ (Adc_PriorityImplementationType) start->prio queue Queuing aktiviert? prio->queue ADC_PRIORITY_NONE higher أولوية أعلى من المجموعة الجارية؟ prio->higher ADC_PRIORITY_HW / ADC_PRIORITY_HW_SW busy Anforderung abgewiesen, Laufzeitfehler ADC_E_BUSY queue->busy لا store حفظ الطلب في قائمة الانتظار، البدء بعد المجموعة الجارية queue->store نعم higher->store لا repl إلغاء المجموعة الجارية أو مقاطعتها (Adc_GroupReplacementType) higher->repl نعم conv تحويل المجموعة ذات الأولوية الأعلى repl->conv resume إعادة بدء المجموعة المُقاطَعة أو متابعتها conv->resume

مخطط الأنشطة: يعتمد ما إذا كان الطلب يُرفض أو يُخزن أو يُقدَّم عند انشغال المحول على آلية الأولوية ووضع قائمة الانتظار. المصادر: [SWS_Adc_00522]، [SWS_Adc_00523]، SWS ADC ص. 99

حالات الطاقة لعتاد ADC

التحكم في الطاقة اختياري ومقصور على ملحقات ADC المحيطية. تستوفي الطبقات العليا الشروط الحدية المعمارية؛ ويتحقق برنامج التشغيل من ترتيب الاستدعاء فقط SWS ADC ص. 39. يتعرف Adc_PowerStateType على ADC_FULL_POWER (0) والحالات من 1 إلى 255 مع استهلاك متناقص [SWS_Adc_00526]. ويُبلِّغ Adc_PowerStateRequestResultType عن نتيجة كل طلب [SWS_Adc_00527].

يتم الانتقال على مرحلتين:

  1. التحضير: يبدأ Adc_PreparePowerState التحضير [SWS_Adc_00478]. وتعمل الأجزاء غير المتزامنة في Adc_Main_PowerTransitionManager الدوري [SWS_Adc_00498]، [SWS_Adc_00479]. يحدد AdcMainSchedulePeriod فترته [SWS_Adc_00500]. وفي الوضع غير المتزامن، يُبلِّغ عن الجاهزية عبر IoHwAb_Adc_NotifyReadyForPowerState<#Mode> [SWS_Adc_00501]، [SWS_Adc_00480].
  2. التبديل: يُفعِّل Adc_SetPowerState الحالة المُجهَّزة [SWS_Adc_00475]. وتقع الأعمال التحضيرية مثل القنوات الخاملة على عاتق المستخدمين. ولا توجد حالات بينية ضمنية SWS ADC ص. 81.
تغيير غير متزامن لحالة طاقة ADC عبر IoHwAbBswMRteIoHwAbAdcUse Case: VorbereitungRTE/SchMSwitch (Moduswechsel)OnEntryRunnable_LowPowerModeA()IoHwAb_PreparePowerState_LowPowerModeA()Adc_PreparePowerState(PwrSts_1)E_OK, ADC_SERVICE_ACCEPTEDUse Case: Hintergrundverarbeitungloopدورياً، حتى يكتمل التحضيرAdc_Main_PowerTransitionManager()IoHwAb_Adc_NotifyReadyForPowerStateLowPowerModeA()IoHwAb_PollForResults()Use Case: UmschaltenAdc_SetPowerState(&Result)E_OKAdc_GetCurrentPowerState()aktueller LeistungszustandRTE/SchMSwitch(LowPowerModeA_Transition_End)اكتمال تغيير الوضع

مخطط التسلسل: انتقال غير متزامن لحالة الطاقة، بتنسيق بواسطة IoHwAb. المصادر: SWS IoHwAb ص. 57، SWS IoHwAb ص. 57، [SWS_Adc_00479]

يُفترض أن ينطبق على Adc_SetPowerState بشكل إضافي: تستخدم الحالة العادية حاويات التكوين نفسها مثل Adc_Init، بينما تستخدم الحالات الأخرى عمليات إعادة تكوين خاصة بالانتقال فقط [SWS_Adc_00483]، [SWS_Adc_00484]، [SWS_Adc_00485]. سؤال (مفتوح) يوفر Adc_GetCurrentPowerState وAdc_GetTargetPowerState الحالة الفعلية والمستهدفة [SWS_Adc_00476]، [SWS_Adc_00477]. وبدون انتقال جاري، تتطابق كلتاهما SWS ADC ص. 77.

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

يُبلِّغ برنامج التشغيل عن أخطاء التطوير عبر Det_ReportError [SWS_Adc_00377]. ويذكر [SWS_Adc_91005] من بين أمور أخرى:

  • ADC_E_UNINIT
  • ADC_E_ALREADY_INITIALIZED
  • ADC_E_PARAM_POINTER
  • ADC_E_PARAM_GROUP
  • ADC_E_WRONG_CONV_MODE
  • ADC_E_WRONG_TRIGG_SRC
  • ADC_E_NOTIF_CAPABILITY

مثالان: في حال وجود مجموعة غير معروفة، تُبلِّغ خدمات الإشعار عن ADC_E_PARAM_GROUP وتعود دون أي تأثير SWS ADC ص. 68. ويتحقق Adc_GetVersionInfo من مؤشره بحثاً عن NULL SWS ADC ص. 80.

أخطاء وقت التشغيل هي ADC_E_BUSY (التحويل جاري، أو المشغل نشط، أو الطلب موجود بالفعل في قائمة الانتظار)، وADC_E_IDLE، وADC_E_NOT_DISENGAGED، وADC_E_TRANSITION_NOT_POSSIBLE [SWS_Adc_91006]. وتُبلِّغ الخدمات ذات القيمة المرجعة عن الفشل بشكل إضافي باستخدام E_NOT_OK، مثل Adc_ReadGroup وAdc_SetupResultBuffer [SWS_Adc_00369]، [SWS_Adc_91000].

تنطبق أخطاء خاصة على التحكم في الطاقة:

يميز Result أيضاً بين ADC_SEQUENCE_ERROR وADC_HW_FAILURE [SWS_Adc_00527]. وقبل التهيئة، يعود Adc_Main_PowerTransitionManager دون إبلاغ DET [SWS_Adc_00502].

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

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

ADC Driver (Adc)

Provides initialization and conversion services for analog-to-digital converters.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

دالة Adc_Init [SWS_Adc_00365] 📄 PDF

void Adc_Init (const Adc_ConfigType* ConfigPtr);

Initializes the ADC hardware units and driver.

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

تُستخدم الدالة المتزامنة Adc_Init (معرّف الخدمة 0x00) للتكوين الأولي والتشغيل لجميع وحدات عتاد ADC وكذلك لبرنامج تشغيل ADC وفقًا لـ [SWS_Adc_00365]. يتم توفير الواجهة عبر ملف الرأس Adc.h وليس لها قيمة إرجاع.

المعلمات ومتغيرات التكوين

يتم تمرير بيانات التكوين عبر معلمة المؤشر ConfigPtr من النوع const Adc_ConfigType* [SWS_Adc_00365]. تعتمد الوسيطة المطلوبة على متغير البناء المُختار:

  • عند استخدام تكوين ما بعد البناء (Variant PB)، يجب أن يشير ConfigPtr إلى بنية البيانات المناسبة التي تحتوي على قيم التهيئة.
  • إذا تم استخدام متغير ما قبل التجميع (Variant PC)، فإن الواجهة تطلب صراحةً تمرير NULL_PTR [SWS_Adc_00365].

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

تم تحديد الدالة Adc_Init على أنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_Adc_00365]. تفسير: نظرًا لتكوين وحدات العتاد بشكل عام وعدم وجود إمكانية لإعادة الدخول، فمن المفترض أن يتم الاستدعاء عادةً بشكل مركزي أثناء تهيئة النظام، وذلك قبل بدء وظائف الوحدة الأخرى أو عمليات التحويل. سؤال Q-a82e9204ae7a5ab7 (مفتوح)

فيما يتعلق بإدارة الطاقة، هناك ارتباط مباشر بمتطلبات ذات صلة: إذا طُلبت حالة الطاقة العادية (normal Power State) أثناء التشغيل، فيجب على API المقابلة الرجوع إلى معلمات التكوين الموجودة في نفس الحاويات كمعلمات التهيئة الخاصة بـ Adc_Init [SWS_Adc_00483].

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

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

دالة Adc_SetupResultBuffer [SWS_Adc_91000] 📄 PDF

Std_ReturnType Adc_SetupResultBuffer (Adc_GroupType Group, Adc_ValueGroupType* DataBufferPtr);

Initializes ADC driver with the group specific result buffer start address where the conversion results will be stored. The applicatio n has to ensure that the application buffer, where Data Buffer Ptr points to, can hold all the conversion results of the specified group. The initialization with Adc_ Setup Result Buffer is required after reset, before a group conversion can be started.

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

تقوم الدالة Adc_SetupResultBuffer بتهيئة مشغل ADC بعنوان البداية لمخزن مؤقت خاص بالمجموعة لتخزين نتائج التحويل [SWS_Adc_91000]. هذا الاستدعاء إلزامي بعد إعادة التعيين قبل التمكن من بدء تحويل المجموعة [SWS_Adc_91000].

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

  • Group: المعرّف العددي لمجموعة قنوات ADC المطلوبة [SWS_Adc_91000].
  • DataBufferPtr: مؤشر إلى مخزن البيانات المؤقت (النوع Adc_ValueGroupType*) الذي تُخزَّن فيه النتائج [SWS_Adc_91000].

تم التصريح عن الدالة على أنها قابلة لإعادة الدخول وغير متزامنة، وهي متاحة عبر ملف الترويسة Adc.h (معرّف الخدمة 0x0c) [SWS_Adc_91000].

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

نوع الإرجاع هو Std_ReturnType [SWS_Adc_91000]:

  • E_OK: تمت تهيئة المؤشر إلى مخزن النتائج المؤقت بنجاح [SWS_Adc_91000].
  • E_NOT_OK: فشلت العملية أو حدث خطأ أثناء التطوير [SWS_Adc_91000].

واجبات التطبيق

يجب على التطبيق المستدعي ضمان أن المخزن المؤقت الذي يشير إليه DataBufferPtr يوفّر مساحة ذاكرة كافية لجميع نتائج تحويل مجموعة القنوات المحددة [SWS_Adc_91000].

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

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

دالة Adc_DeInit [SWS_Adc_00366] 📄 PDF

void Adc_DeInit (void);

Returns all ADC HW Units to a state comparable to their power on reset state.

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

تُستخدم الدالة Adc_DeInit لإلغاء تهيئة برنامج تشغيل ADC ونقل جميع وحدات عتاد ADC التابعة له إلى حالة مماثلة للحالة التي تلي إعادة التعيين عند التشغيل مباشرةً [SWS_Adc_00366]. وبذلك تستعيد الحالة الأولية للعتاد قبل إجراء تهيئة جديدة.

الاستدعاء والواجهة

تم الإعلان عن الدالة في ملف الرأس Adc.h وتمتلك معرّف الخدمة 0x01 [SWS_Adc_00366]. يتم الاستدعاء بشكل متزامن (Synchronous) ولا يتطلب أي معلمات (لا In ولا InOut ولا Out)؛ كما لا يتم توفير قيمة إرجاع (التوقيع void Adc_DeInit(void)) [SWS_Adc_00366]. ولا يتم تقييم أو إنشاء معلمات إدخال أو قيم إرجاع. ونظرًا للدلالات المتزامنة، فإن التنفيذ يحظر المتصل حتى تكتمل إعادة تعيين جميع الوحدات [SWS_Adc_00366].

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

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

بما أن Adc_DeInit تُعيد تعيين جميع وحدات عتاد ADC بالكامل إلى حالة إعادة التعيين [SWS_Adc_00366]، فيُفترض التأكد قبل الاستدعاء من عدم وجود أي عمليات قياس أو تحويل نشطة، وذلك لمنع السلوك غير المحدد للعتاد. سؤال Q-15bfa2b822826786 (مفتوح)

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

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

دالة Adc_StartGroupConversion [SWS_Adc_00367] 📄 PDF

void Adc_StartGroupConversion (Adc_GroupType Group);

Starts the conversion of all channels of the requested ADC Channel group.

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

الاستخدام

تبدأ الدالة Adc_StartGroupConversion تحويل جميع قنوات مجموعة قنوات ADC المُمرَّرة وفقًا لـ [SWS_Adc_00367]. يتم تمرير معرّف المجموعة الرقمي Group من النوع Adc_GroupType كمعلمة. ليس للدالة قيمة إرجاع (void) وتعمل بشكل غير متزامن ([SWS_Adc_00367]).

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

وفقًا للمواصفة، تم تصنيف الخدمة على أنها قابلة لإعادة الدخول ([SWS_Adc_00367]). تفسير: يُرجح أن يعني هذا أنه يمكن استدعاء الدالة بشكل متزامن لمجموعات قنوات مختلفة. سؤال Q-8283232f222f7b0a (مفتوح) ونظرًا لأن البدء يتم بشكل غير متزامن، فإن الاستدعاء يعود قبل اكتمال التحويل الفعلي.

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

الخدمة متاحة عبر ملف الرأس Adc.h وتمتلك معرّف الخدمة 0x02 ([SWS_Adc_00367]). أكواد أخطاء DET أو DEM المحددة غير موثقة في حمولة البيانات الحالية.

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

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

دالة Adc_StopGroupConversion [SWS_Adc_00368] 📄 PDF

void Adc_StopGroupConversion (Adc_GroupType Group);

Stops the conversion of the requested ADC Channel group.

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

تُنهي الدالة المتزامنة Adc_StopGroupConversion التحويل الجاري لمجموعة قنوات ADC المطلوبة [SWS_Adc_00368]. تم الإعلان عن الواجهة في ملف الرأس Adc.h وتحديدها تحت معرّف الخدمة 0x03 [SWS_Adc_00368].

يتم تمرير قيمة الإدخال Group من النوع Adc_GroupType كمعلمة وحيدة، والتي تمثل المعرّف الرقمي لمجموعة قنوات ADC المعنية [SWS_Adc_00368]. لا يمتلك الاستدعاء قيمة إرجاع (void) ولا يستخدم معلمات إدخال/إخراج أو معلمات إخراج خالصة [SWS_Adc_00368].

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

تفسير: يُرجح أن يتطلب الاستدعاء وظيفيًا بدء تحويل للمجموعة المعنية مسبقًا لإجراء الإيقاف. سؤال Q-644ca5344ab849b0 (مفتوح) أكواد الأخطاء المحددة، أو قيم الإرجاع للإشارة إلى الخطأ، أو الرسائل المرسلة إلى أجهزة التطوير (DET/DEM) غير محددة في مقتطف المواصفة الحالي لهذه الخدمة [SWS_Adc_00368].

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

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

دالة Adc_ReadGroup [SWS_Adc_00369] 📄 PDF

Std_ReturnType Adc_ReadGroup (Adc_GroupType Group, Adc_ValueGroupType* DataBufferPtr);

Reads the group conversion result of the last completed conversion round of the requested group and stores the channe l values starting at the Data Buffer Ptr address. The group channel values are stored in ascending channel number order ( in contrast to the storage layout of the result buffer if streaming access is configured).

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

تُستخدم الدالة المتزامنة Adc_ReadGroup لقراءة نتائج تحويل مجموعة قنوات ADC من آخر جولة تحويل مكتملة ([SWS_Adc_00369]). وهي متاحة عبر ملف الرأس Adc.h وتمتلك معرّف الخدمة 0x04 ([SWS_Adc_00369]).

المعلمات وتخطيط المخزن المؤقت

  • Group: المعرّف الرقمي لمجموعة قنوات ADC المطلوبة ([SWS_Adc_00369]).
  • DataBufferPtr: مؤشر إلى المخزن المؤقت الوجهة (Adc_ValueGroupType*)، والذي يتم تخزين نتائج تحويل جميع قنوات المجموعة بدءًا من عنوانه ([SWS_Adc_00369]).

يتم تخزين قيم القنوات بدءًا من عنوان الوجهة بترتيب القنوات تصاعديًا ([SWS_Adc_00369]). يختلف تخطيط الذاكرة هذا صراحةً عن ترتيب المخزن المؤقت في حالة الوصول المتدفق (streaming access) المكوّن ([SWS_Adc_00369]). تفسير: يُرجح أن يكون المتصل مسؤولاً عن توفير مخزن مؤقت ذي سعة كافية لجميع قنوات المجموعة. سؤال Q-f22a12a6c7ab0eb3 (مفتوح)

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

تشير قيمة الإرجاع من النوع Std_ReturnType إلى حالة عملية القراءة ([SWS_Adc_00369]):

  • E_OK: النتائج متاحة وتمت كتابتها بنجاح في المخزن المؤقت للبيانات ([SWS_Adc_00369]).
  • E_NOT_OK: لا توجد نتائج متاحة أو حدث خطأ تطويري ([SWS_Adc_00369]).

التزامن

تم تحديد الدالة على أنها قابلة لإعادة الدخول ([SWS_Adc_00369]). وبالتالي يمكن تنفيذها بالتوازي طالما يتم استخدام مناطق تخزين مؤقت منفصلة للوصول المتزامن.

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

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

دالة Adc_EnableHardwareTrigger [SWS_Adc_91001] 📄 PDF

void Adc_EnableHardwareTrigger (Adc_GroupType Group);

Enables the hardware trigger for the requested ADC Channel group.

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

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

تنشط الدالة Adc_EnableHardwareTrigger المشغل العتادي لمجموعة قنوات ADC مهيأة [SWS_Adc_91001]. وهي معرفة كخدمة برقم الخدمة 0x05 في الوحدة Adc ومتاحة عبر ملف الترويسة Adc.h [SWS_Adc_91001].

  • معاملات الإدخال: يتم عبر المعامل Group من النوع Adc_GroupType تمرير المعرّف (ID) العددي لمجموعة قنوات ADC المطلوبة [SWS_Adc_91001]. ولا توجد معاملات إدخال/إخراج أو إخراج إضافية [SWS_Adc_91001].
  • القيمة المرجعة: لا تُرجع الواجهة أي قيمة (void) [SWS_Adc_91001].
  • دلالات غير متزامنة: تم تحديد سلوك التنفيذ على أنه غير متزامن [SWS_Adc_91001]. يتيح الاستدعاء عملية الإطلاق، بينما لا يبدأ التحويل الفعلي للقنوات إلا من خلال أحداث عتادية لاحقة.

التزامن

يحدد المشغل Adc_EnableHardwareTrigger على أنها قابلة لإعادة الدخول [SWS_Adc_91001]. تفسير: من المرجح أن تشير إمكانية إعادة الدخول في المقام الأول إلى الاستدعاء المتزامن مع مجموعات قنوات منفصلة، نظراً لتنشيط المشغل العتادي لكل مجموعة قنوات. سؤال Q-5750576df9f0284d (مفتوح)

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

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

دالة Adc_DisableHardwareTrigger [SWS_Adc_91002] 📄 PDF

void Adc_DisableHardwareTrigger (Adc_GroupType Group);

Disables the hardware trigger for the requested ADC Channel group.

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

تُستخدم الدالة Adc_DisableHardwareTrigger لتعطيل التحفيز عبر العتاد لمجموعة قنوات ADC المطلوبة [SWS_Adc_91002].

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

  • المعلمات: يتم تمرير المعلمة Group من النوع Adc_GroupType، والتي تحدد المعرف العددي لمجموعة قنوات ADC المطلوبة [SWS_Adc_91002].
  • قيمة الإرجاع: لا تمتلك الدالة أي قيمة إرجاع (void) [SWS_Adc_91002].
  • سلوك التنفيذ: يُصنف الاستدعاء بأنه غير متزامن (Sync/Async: Asynchronous) [SWS_Adc_91002]. وهذا يعني على الأرجح أن الإيقاف الفعلي أو فصل حدث العتاد يمكن أن يصبح ساري المفعول مع إزاحة زمنية من جانب العتاد. سؤال Q-b0e613163b254242 (مفتوح)

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

تم التصريح عن الواجهة بأنها قابلة لإعادة الدخول (Reentrancy: Reentrant) ويتم توفيرها عبر ملف الرأس Adc.h؛ ومعرّف الخدمة الخاص بها هو 0x06 [SWS_Adc_91002]. لا يتضمن مقتطف المواصفة الحالي رموز خطأ محددة، أو سياقات استدعاء، أو رسائل DET/DEM.

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

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

دالة Adc_EnableGroupNotification [SWS_Adc_91003] 📄 PDF

void Adc_EnableGroupNotification (Adc_GroupType Group);

Enables the notification mechanism for the requested ADC Channel group.

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

تُستخدم الدالة Adc_EnableGroupNotification لتنشيط آلية الإخطار لمجموعة قنوات ADC مطلوبة [SWS_Adc_91003]. ويُوفَّر تصريح هذه الواجهة للمستخدمين عبر ملف الترويسة Adc.h [SWS_Adc_91003].

يتم تمرير Group من نوع البيانات Adc_GroupType كمعامل إدخال وحيد، والذي يحدد المعرّف (ID) العددي لمجموعة قنوات ADC المطلوبة [SWS_Adc_91003]. ولا تمتلك الدالة معاملات إدخال/إخراج ولا معاملات إخراج، ولا تُرجع أي قيمة (void) [SWS_Adc_91003]. تُدار الخدمة تحت معرّف الخدمة 0x07 وتتسم بدلالات تنفيذ غير متزامنة [SWS_Adc_91003].

فيما يتعلق بسلوك التزامن، تم تحديد Adc_EnableGroupNotification على أنها قابلة لإعادة الدخول (reentrant) [SWS_Adc_91003]. وبالتالي يُسمح بإجراء استدعاءات متوازية متعددة. ومن المرجح أن التصنيف غير المتزامن للتنفيذ يعني أن تفعيل إشعار المجموعة يتم تحديده مسبقًا في المشغّل أو تنفيذه في الخلفية دون حظر سياق الاستدعاء أثناء المعالجة [SWS_Adc_91003]. سؤال Q-bae8fba7810fa269 (مفتوح)

لا يحدد مقتطف المواصفة الحالي أي تفاصيل إضافية بخصوص أخطاء التطوير أو الإنتاج المحددة (DET أو DEM) أو شروط الاستدعاء الدقيقة أو سياقات المهام.

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

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

دالة Adc_DisableGroupNotification [SWS_Adc_91004] 📄 PDF

void Adc_DisableGroupNotification (Adc_GroupType Group);

Disables the notification mechanism for the requested ADC Channel group.

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

تُستخدم الدالة Adc_DisableGroupNotification المصرح عنها في الترويسة Adc.h في مشغل ADC لإيقاف آلية الإشعار لمجموعة قنوات ADC المطلوبة بشكل مستهدف [SWS_Adc_91004]. تمتلك الخدمة معرف الخدمة 0x08 وهي محددة بالتوقيع void Adc_DisableGroupNotification (Adc_GroupType Group) [SWS_Adc_91004].

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

لتنفيذ الدالة، تم تحديد تمرير معامل دخل فردي:

  • Group: يمرر المعرّف الفريد ID لمجموعة قنوات ADC المرغوبة كمعرّف رقمي من النوع Adc_GroupType، والتي يُراد تعطيل إشعارها [SWS_Adc_91004].

لا تُرجع الدالة أي قيمة إرجاع (void) إلى المتصل [SWS_Adc_91004]. بالإضافة إلى ذلك، وفقًا للمواصفة، لا تُستخدم معاملات دخل/خرج مدمجة (inout) ولا معاملات خرج خالصة (out) [SWS_Adc_91004].

سلوك التنفيذ والتزامن

فيما يتعلق بسلوك التزامن، تم تصنيف Adc_DisableGroupNotification على أنها قابلة لإعادة الدخول (reentrant) [SWS_Adc_91004]. يتيح ذلك من حيث المبدأ الاستدعاء المتوازي أو المقاطع للخدمة من قِبل سياقات برمجية مختلفة [SWS_Adc_91004].

فيما يخص التزامن الزمني، تم تصنيف الدالة على أنها غير متزامنة [SWS_Adc_91004]. التفسير: نظرًا لأن السلوك الزمني مصرح عنه صراحةً بأنه غير متزامن، فمن المرجح أن يتم إيقاف آلية الإشعار داخليًا في المشغل أو في عتاد ADC في الخلفية، دون حظر سياق الاستدعاء حتى الاكتمال التام. سؤال Q-a1a30a254aa96655 (مفتوح)

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

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

دالة Adc_GetStreamLastPointer [SWS_Adc_00375] 📄 PDF

Adc_StreamNumSampleType Adc_GetStreamLastPointer (Adc_GroupType Group, Adc_ValueGroupType* * PtrToSamplePtr);

Returns the number of valid samples per channel, stored in the result buffer. Reads a pointer, pointing to a position in the group result buffer. With the pointer position, the results of all group channels of the last completed conversion round can be acc essed. With the pointer and the return value, all valid group conversion results can be accessed (the user has to take the layout of the result buffer into account).

دالة Adc_SetPowerState [SWS_Adc_00475] 📄 PDF

Std_ReturnType Adc_SetPowerState (Adc_PowerStateRequestResultType* Result);

This API configures the Adc module so that it enters the already prepared power state, chosen between a predefined set of configured ones.

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

تنقل دالة الخدمة المتزامنة Adc_SetPowerState وحدة ADC إلى حالة طاقة تم إعدادها مسبقًا وتم اختيارها من مجموعة تم تكوينها مسبقًا [SWS_Adc_00475].

الاستخدام

الدالة متاحة عبر ملف الرأس Adc.h وتمتلك معرّف الخدمة 0x10 [SWS_Adc_00475]. ولا تقبل أي معلمات إدخال، بل تسلّم النتيجة عبر معلمة الإخراج Result من النوع Adc_PowerStateRequestResultType* [SWS_Adc_00475]. عند تنشيط حالة الطاقة بنجاح، تُرجع الدالة E_OK وتشير عبر Result إلى الحالة ADC_SERVICE_ACCEPTED [SWS_Adc_00475].

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

إذا رُفض الطلب، فإن الاستدعاء يُرجع قيمة الإرجاع E_NOT_OK [SWS_Adc_00475]. وتميز الوحدة في المعلمة Result بين ثلاثة أسباب محددة للخطأ:

  • ADC_NOT_INIT: وحدة ADC لم تكن مهيأة بعد في وقت الاستدعاء [SWS_Adc_00475].
  • ADC_SEQUENCE_ERROR: يوجد ترتيب خاطئ لاستدعاءات API [SWS_Adc_00475].
  • ADC_HW_FAILURE: خطأ في العتاد حدث يمنع الوصول إلى الحالة المطلوبة [SWS_Adc_00475].

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

Adc_SetPowerState غير قابلة لإعادة الدخول (Non Reentrant) وتحظر المتصل حتى قبول الحالة بشكل متزامن [SWS_Adc_00475]. والتفسير هو أنه يجب تنفيذ خطوة إعداد للحالة المستهدفة بشكل إلزامي قبل الاستدعاء، حيث تطلب الدالة صراحةً حالة تم إعدادها بالفعل وترفض أخطاء الترتيب بـ ADC_SEQUENCE_ERROR [SWS_Adc_00475].

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

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

دالة Adc_PreparePowerState [SWS_Adc_00478] 📄 PDF

Std_ReturnType Adc_PreparePowerState (Adc_PowerStateType PowerState, Adc_PowerStateRequestResultType* Result);

This API starts the needed process to allow the ADC HW module to enter the AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_ADCDriver requested power state.

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

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

تبدأ الدالة المتزامنة Adc_PreparePowerState عملية الإعداد المطلوبة لنقل وحدة عتاد ADC إلى حالة الطاقة المطلوبة [SWS_Adc_00478]. ويتم تمرير الحالة المستهدفة المرغوبة PowerState بالإضافة إلى مؤشر Result كمعلمات، والذي يتم عبره الإبلاغ عن حالة الطلب [SWS_Adc_00478]. وتشير قيمة الإرجاع بـ E_OK إلى أن عملية الإعداد قد بدأت، أو بـ E_NOT_OK إلى أن الخدمة قد تم رفضها [SWS_Adc_00478].

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

في حالة النجاح (E_OK)، تُرجع معاملة الإخراج Result قيمة الحالة ADC_SERVICE_ACCEPTED [SWS_Adc_00478]. وإذا رُفضت الخدمة مع E_NOT_OK، فإن Result يحدد السبب الدقيق [SWS_Adc_00478]:

  • ADC_NOT_INIT: لم تتم تهيئة وحدة ADC بعد [SWS_Adc_00478].
  • ADC_SEQUENCE_ERROR: تسلسل استدعاء غير مسموح به، نظراً لأن الحالة الحالية تطابق بالفعل الحالة الهدف [SWS_Adc_00478].
  • ADC_POWER_STATE_NOT_SUPP: حالة الطاقة المطلوبة غير مدعومة من قِبل الوحدة [SWS_Adc_00478].
  • ADC_TRANS_NOT_POSSIBLE: الانتقال المباشر غير ممكن أو أن الطرفية العتادية لا تزال مشغولة [SWS_Adc_00478].

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

تم تحديد الدالة على أنها غير قابلة لإعادة الدخول (non-reentrant) [SWS_Adc_00478]. لذلك، يجب على جهة الاستدعاء التأكد من إجراء الاستدعاءات بالتسلسل ودون تداخل. ومن المرجح أن يتعين على جهات الاستدعاء إنهاء عمليات التحويل الجارية مسبقاً أو إيقافها، لأن وجود طرفية عتادية نشطة يؤدي إلى الرفض. سؤال Q-210c59a46a90d781 (مفتوح) بعد نجاح التحضير بواسطة Adc_PreparePowerState، تُنفَّذ الإجراءات اللاحقة غير الفعالة على الفور لوضع اللمسات الأخيرة على انتقال الحالة عبر واجهة API لاحقة مرافقة [SWS_Adc_00499].

تم إنشاء إشعار الاستخدام هذا تلقائياً ويستند حصرياً إلى بيانات المواصفة من SWS_Adc_00478 وSWS_Adc_00499.

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

دالة Adc_Main_PowerTransitionManager [SWS_Adc_00479] 📄 PDF

void Adc_Main_PowerTransitionManager (void);

This API is cyclically called and supervises the power state transitions, checking for the readiness of the module and issuing the callbacks Io Hw Ab_ Adc_ Notify Ready For Power State (see Adc Power State Ready Cb k Ref configuration parameter).

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

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

تُستخدم الدالة الرئيسية Adc_Main_PowerTransitionManager للمراقبة والتنفيذ الدوري لانتقالات حالة الطاقة في وحدة ADC [SWS_Adc_00479]. تمتلك التوقيع void Adc_Main_PowerTransitionManager(void)، ولا تستقبل أي معلمات إدخال ولا تُرجع أي قيمة [SWS_Adc_00479]. يتم استدعاء الدالة دوريًا ويتم التصريح عنها عبر ملف الرأس SchM_Adc.h [SWS_Adc_00479]. وبالتالي، يُرجّح أن يتم الاستدعاء عادةً في سياق المهمة الدورية لجدولة BSW (SchM). سؤال Q-4fc01e5bed5b3b57 (مفتوح)

مراقبة الحالة والعمليات غير المتزامنة

أثناء التنفيذ الدوري، تتحقق الدالة باستمرار من الجاهزية التشغيلية للوحدة لحالة الطاقة المطلوبة [SWS_Adc_00479]. بمجرد التحقق من جاهزية الوحدة، تُرسل عمليات رد الاتصال الخاصة بالإشعار IoHwAb_Adc_NotifyReadyForPowerState<Mode>، والمشار إليها عبر معلمة التكوين AdcPowerStateReadyCbkRef [SWS_Adc_00479]. يمكن معالجة جميع العمليات غير المتزامنة المطلوبة للوصول إلى حالة الطاقة المستهدفة في الخلفية في سياق تنفيذ Adc_Main_PowerTransitionManager [SWS_Adc_00498].

معالجة الأخطاء والشروط الحدية

إذا تعذر الوصول إلى حالة الطاقة المطلوبة مباشرة من حالة الطاقة الحالية، تبلغ API عن خطأ وقت التشغيل ADC_E_TRANSITION_NOT_POSSIBLE [SWS_Adc_00498]. من خلال إسناد عمليات الانتقال الطويلة إلى دالة المدير الدورية هذه، لا يتم حظر المتصلين من المستويات الأعلى أثناء قيام وحدة ADC بإكمال تغيير الحالة في الخلفية [SWS_Adc_00498].

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

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

دالة IoHwAb_Adc_NotifyReadyForPower [SWS_Adc_00480] 📄 PDF

void IoHwAb_Adc_NotifyReadyForPowerState<#Mode> (void);

The API shall be invoked by the ADC Driver when the requested power state preparation for mode <#Mode> is completed.

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

تُستخدم الدالة IoHwAb_Adc_NotifyReadyForPower كواجهة إخطار لتجريد عتاد الإدخال/الإخراج ويتم استدعاؤها من قِبل مشغل ADC بمجرد اكتمال التحضير لحالة طاقة مطلوبة في الوضع <#Mode> [SWS_Adc_00480]. يُوفَّر تصريح هذه الواجهة عبر ملف الترويسة IoHwAb_Adc.h [SWS_Adc_00480].

سياق الاستدعاء والدلالات البرمجية

تنطبق الشروط الإطارية التالية على الاستدعاء وفقاً للمواصفة [SWS_Adc_00480]:

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

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

لا توجد رموز أخطاء أو إخطارات لـ DET أو DEM مخزنة في بيانات المواصفة [SWS_Adc_00480]. ومن المرجح أن يشير بيان بناء الجملة IoHwAb_Adc_NotifyReadyForPowerState<#Mode> إلى أن المعرّف يُنشأ بشكل محدد وفقاً لوضع الطاقة المهيأ. سؤال Q-9e9c969f8a41d0de (مفتوح) وتعمل الدالة على الأرجح كمعاودة اتصال (callback) للمشغل لإبلاغ إدارة الطاقة ذات المستوى الأعلى بحالة الجاهزية للتغيير.

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

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

نوع Adc_ConfigType [SWS_Adc_00505] 📄 PDF

Data structure containing the set of configuration parameters required for initializing the ADC Driver and ADC HW Unit(s).

نوع Adc_ValueGroupType [SWS_Adc_00508] 📄 PDF

Type for reading the converted values of a channel group (raw, without further scaling, alignment according precompile switch ADC_ RESULT_ ALIGNMENT).

نوع Adc_ConversionTimeType [SWS_Adc_00510] 📄 PDF

Type of conversion time, i.e. the time during which the sampled analogue value is converted into digital representation. (This is not an API type).

نوع Adc_SamplingTimeType [SWS_Adc_00511] 📄 PDF

Type of sampling time, i.e. the time during which the value is sampled, (in clock - cycles). (This is not an API type).

نوع Adc_ResolutionType [SWS_Adc_00512] 📄 PDF

Type of channel resolution in number of bits. (This is not an API type).

نوع Adc_StatusType [SWS_Adc_00513] 📄 PDF

Current status of the conversion of the requested ADC Channel group.

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

يمثل نوع التعداد Adc_StatusType وفقاً لـ [SWS_Adc_00513] حالة التحويل الحالية لمجموعة قنوات ADC المطلوبة، ويُوفَّر عبر الترويسة Adc.h.

تعكس قيم التعداد تقدم التحويل التناظري الرقمي بالإضافة إلى توافر النتائج [SWS_Adc_00513]:

  • ADC_IDLE (0x00): لم يبدأ تحويل المجموعة المحددة بعد؛ ولا تتوفر أي نتائج قياس [SWS_Adc_00513].
  • ADC_BUSY (0x01): بدأ تحويل المجموعة وهو قيد التشغيل حالياً؛ ولا تتوفر أي نتيجة حتى الآن [SWS_Adc_00513].
  • ADC_COMPLETED (0x02): اكتملت جولة تحويل واحدة (ليست النهائية) للمجموعة؛ وتتوفر نتيجة لجميع قنوات المجموعة [SWS_Adc_00513].
  • ADC_STREAM_COMPLETED (0x03): مخزن النتائج المؤقت ممتلئ تماماً؛ وتتوفر لكل قناة من المجموعة المختارة الكمية المطلوبة من قيم العينات [SWS_Adc_00513].

في التطبيقات، يُستخدم النوع عادةً للاستعلام عن تقدم المجموعة أو تقييمه، لتحديد ما إذا كان يمكن قراءة النتائج بالفعل أو إذا كانت هناك عينات إضافية معلقة.

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

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

نوع Adc_TriggerSourceType [SWS_Adc_00514] 📄 PDF

Type for configuring the trigger source for an ADC Channel group.

نوع Adc_GroupConvModeType [SWS_Adc_00515] 📄 PDF

Type for configuring the conversion mode of an ADC Channel group. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_ADCDriver

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

يُستخدم نوع التعداد Adc_GroupConvModeType لتهيئة وضع التحويل لمجموعة قنوات ADC ويُصرَّح عنه عبر ملف الترويسة Adc.h [SWS_Adc_00515]. يحدد النوع ما إذا كانت قنوات المجموعة تُحوَّل لمرة واحدة أو بشكل متكرر بعد حدث الإطلاق المهيأ [SWS_Adc_00515].

يتوفر وضعان للتهيئة [SWS_Adc_00515]:

  • ADC_CONV_MODE_ONESHOT (0x00): ينفذ تحويلاً واحداً بالضبط لكل قناة من مجموعة قنوات ADC بعد حدث المشغل (Trigger) المهيأ [SWS_Adc_00515]. وإذا تم تكوين مشغل برمجيات كمصدر تشغيل، فيمكن إيقاف التحويل الذي بدأ عبر استدعاء واجهة برمجة تطبيقات برمجية (Software-API) [SWS_Adc_00515]. أما إذا تم تعيين مصدر مشغل عتادي، فيمكن إيقاف تحويل الطلقة الواحدة (One-Shot) الذي بدأ عن طريق إلغاء تنشيط حدث المشغل، بشرط أن يكون ذلك مدعوماً من العتاد [SWS_Adc_00515].
  • ADC_CONV_MODE_CONTINUOUS (0x01): ينفذ تحويلات متكررة باستمرار لكل قناة داخل مجموعة القنوات [SWS_Adc_00515]. هذا الوضع المستمر متاح حصرياً للمجموعات ذات مصدر مشغل برمجيات [SWS_Adc_00515]. ويمكن إنهاء عملية التحويل المستمر التي بدأت بالفعل في أي وقت عبر استدعاء واجهة برمجة تطبيقات برمجية (Software-API) [SWS_Adc_00515].

فيما يتعلق بالقيود، يجب مراعاة أن ADC_CONV_MODE_CONTINUOUS مسموح به فقط مع التشغيل البرمجي (Software-Triggerung) ولا يمكن دمجه مع مصادر تشغيل عتادية (Hardware-Triggerquellen) [SWS_Adc_00515]. يتطلب إيقاف التحويلات الجارية عند المشغلات البرمجية استدعاء API برمجيًا مخصصًا، بينما تتطلب عمليات One-Shot التي يتم تشغيلها عتاديًا إيقاف حدث التشغيل (Trigger-Event) [SWS_Adc_00515].

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

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

نوع Adc_GroupDefType [SWS_Adc_00517] 📄 PDF

Type for assignment of channels to a channel group (this is not an API type).

نوع Adc_StreamNumSampleType [SWS_Adc_00518] 📄 PDF

Type for configuring the number of group conversions in streaming access mode (in single access mode, parameter is 1). Available Adc.h AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_ADCDriver via

نوع Adc_StreamBufferModeType [SWS_Adc_00519] 📄 PDF

Type for configuring the streaming access mode buffer type.

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

يُستخدم نوع التعداد Adc_StreamBufferModeType لتهيئة سلوك المخزن المؤقت في وضع الوصول بالتدفق لمشغل ADC، وهو متاح عبر ملف الترويسة Adc.h [SWS_Adc_00519].

يحدد النوع وضعي تشغيل محددين لإدارة المخزن المؤقت في تحويلات التدفق [SWS_Adc_00519]:

  • ADC_STREAM_BUFFER_LINEAR (القيمة 0x00): يُنهي مشغل ADC التحويل تلقائياً بمجرد امتلاء المخزن المؤقت للتدفق أو الوصول إلى العدد المحدد من قيم العينات [SWS_Adc_00519].
  • ADC_STREAM_BUFFER_CIRCULAR (القيمة 0x01): يواصل مشغل ADC التحويل حتى بعد الوصول إلى سعة المخزن المؤقت الكاملة، وذلك بالرجوع إلى بداية المخزن المؤقت والكتابة فوقه بشكل دائري [SWS_Adc_00519].

يجب على طبقات التكامل وبرمجيات التطبيق تنسيق سلوك المخزن المؤقت مع استراتيجية المعالجة المعنية: فبينما يُخصص ADC_STREAM_BUFFER_LINEAR لسلاسل القياس المغلقة ذات حجم العينات الثابت، يُرجح أن يتطلب ADC_STREAM_BUFFER_CIRCULAR مراقبة مستمرة للمخزن المؤقت أو استرجاعاً سريعاً للبيانات لتجنب فقدان البيانات غير الملحوظ بسبب الكتابة التلقائية فوقها [SWS_Adc_00519]. سؤال Q-23b411e5e6c50591 (مفتوح)

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

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

نوع Adc_GroupAccessModeType [SWS_Adc_00528] 📄 PDF

Type for configuring the access mode to group conversion results.

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

يُستخدم نوع التعداد Adc_GroupAccessModeType لتهيئة وضع الوصول إلى نتائج تحويل مجموعة قنوات ADC وفقاً لـ [SWS_Adc_00528]. يُوفَّر تعريف النوع عبر ملف الترويسة Adc.h ويحدد كيفية تخزين النتائج في الذاكرة.

تم تحديد قيمتين في المواصفة لتهيئة وضع الوصول للمجموعة [SWS_Adc_00528]:

  • ADC_ACCESS_MODE_SINGLE (القيمة 0x00): يهيئ وضع الوصول لقيمة مفردة (Single value access mode) للمجموعة المعنية.
  • ADC_ACCESS_MODE_STREAMING (القيمة 0x01): يهيئ وضع الوصول بالتدفق (Streaming access mode) للمجموعة المعنية.

يُستخدم النوع عند تهيئة مشغل ADC للتحكم في سلوك الوصول إلى مخازن نتائج التحويل المؤقتة [SWS_Adc_00528]. تفسير: بينما يُصمم وضع القيمة المفردة على الأرجح لتوفير قيمة نتيجة حالية واحدة لكل قناة من قنوات المجموعة، يُرجح أن يكون وضع التدفق مصمماً لسلاسل قياس أكثر استمرارية مع قيم مخزن مؤقت متعددة. سؤال Q-8a933cffcd1132ef (مفتوح)

نظراً لأنه نوع تكوين بحت، فإن المتطلب لا يحدد رموز خطأ أو قيماً مرجعة أو رسائل DET/DEM خاصة به لهذا النوع [SWS_Adc_00528].

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

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

نوع Adc_HwTriggerSignalType [SWS_Adc_00520] 📄 PDF

Type for configuring on which edge of the hardware trigger signal the driver should react, i.e. start the conversion (only if supported by the ADC hardware).

نوع Adc_HwTriggerTimerType [SWS_Adc_00521] 📄 PDF

Type for the reload value of the ADC module embedded timer (only if supported by the ADC hardware).

نوع Adc_GroupReplacementType [SWS_Adc_00523] 📄 PDF

Replacement mechanism, which is used on ADC group level, if a group conversion is interrupted by a group which has a higher priority.

نوع Adc_Channel [SWS_Adc_00524] 📄 PDF

In case of active limit checking: defines which conversion values are taken into account related to the boardes defineed with Adc Channel Low Limit and Adc Channel High Limit.

نوع Adc_ResultAlignmentType [SWS_Adc_00525] 📄 PDF

Type for alignment of ADC raw results in ADC result buffer (left/ right alignment).

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

الاستخدام ومجال القيم

يتم توفير نوع التعداد Adc_ResultAlignmentType عبر ملف الرأس Adc.h ويُستخدم في الوحدة Adc لتحديد محاذاة القيم الخام لـ ADC في المخزن المؤقت للنتائج [SWS_Adc_00525]. وهو يشكل الواجهة المعيارية لتكوين تخزين المخزن المؤقت لبرنامج التشغيل [SWS_Adc_00525]. وباعتباره نوع بيانات خالصًا، فإنه لا يمتلك معلمات دالة خاصة به، أو قيم إرجاع، أو دلالات غير متزامنة [SWS_Adc_00525].

وفقًا للمواصفة، يشتمل نطاق قيم التعداد على قيمتين بالضبط [SWS_Adc_00525]:

  • ADC_ALIGN_LEFT (القيمة العددية 0x00): يكوّن محاذاة لليسار لنتائج التحويل في المخزن المؤقت [SWS_Adc_00525].
  • ADC_ALIGN_RIGHT (القيمة العددية 0x01): يكوّن محاذاة لليمين لنتائج التحويل في المخزن المؤقت [SWS_Adc_00525].

الأهمية والشروط الحدية

من خلال القيمة المختارة، يتم تحديد مواضع البتات في منطقة المخزن المؤقت التي يتم فيها تخزين البيانات الخام بعد التحويل [SWS_Adc_00525]. ويحدد ذلك ما إذا كانت بتات البيانات المعنوية تقع بمحاذاة اليسار أو اليمين في الذاكرة [SWS_Adc_00525]. تفسير: يُرجّح أن يكون تحديد المحاذاة لليسار أو لليمين وثيق الصلة بوجه خاص عندما تكون دقة عتاد محول الإشارات التناظرية إلى رقمية أقل من عرض العنصر لذاكرة المخزن المؤقت المخصصة. سؤال Q-54221124172a3d87 (مفتوح) يجب على مكونات البرمجيات اللاحقة مراعاة المحاذاة المكونة حتى تتمكن من قراءة القيم الخام دون أخطاء في الحساب أو إزاحة البتات.

لا توجد رموز خطأ محددة، أو رسائل DET أو DEM لهذا التعداد [SWS_Adc_00525].

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

نوع Adc_PowerStateType [SWS_Adc_00526] 📄 PDF

Power state currently active or set as target power state.

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

يحدد نوع التعداد Adc_PowerStateType في AUTOSAR Classic حالة الطاقة لبرنامج تشغيل ADC [SWS_Adc_00526]. يُستخدم في برنامج التشغيل إما لتمثيل حالة التشغيل المتخذة حاليًا للوحدة أو لتحديد حالة هدف جديدة يجب الانتقال إليها لإدارة الطاقة [SWS_Adc_00526]. يتم توفير التصريح عن نوع البيانات هذا عبر ملف الرأس Adc.h [SWS_Adc_00526].

بالنسبة للحالات الفردية للتعداد، تحدد المواصفة ترتيبًا هرميًا فيما يتعلق باستهلاك الطاقة [SWS_Adc_00526]:

  • ADC_FULL_POWER (القيمة العددية 0): يشير إلى وضع التشغيل والوظيفة الكامل لبرنامج تشغيل ADC دون قيود على التيار [SWS_Adc_00526].
  • نطاق القيم من 1 إلى 255: يمثل أوضاع توفير طاقة اختيارية مع انخفاض تدريجي في استهلاك الطاقة [SWS_Adc_00526].

فيما يتعلق بالتفاعل والتكامل في بيئة النظام، يسري التفسير التالي: يُرجّح أن يُستخدم النوع بشكل أساسي كمعلمة تمرير في دوال التحكم لانتقالات حالات الطاقة، وكذلك للإبلاغ عن الحالة إلى الوحدات ذات المستوى الأعلى مثل BSW أو إدارة حالة ECU. سؤال Q-e4f964bd79ad550c (مفتوح) ولأنه تعريف أولي لنوع بيانات، فإن الخصائص المحددة مثل سياقات الاستدعاء، ومتطلبات قابلية إعادة الدخول (Reentrancy)، والدلالات المتزامنة أو غير المتزامنة، بالإضافة إلى أخطاء وقت التشغيل ورسائل DET، لا يتم تعريفها إلا في واجهات برمجة التطبيقات (APIs) الخاصة ببرنامج التشغيل المرتبط وليست جزءًا من وصف هذا النوع [SWS_Adc_00526].

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

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

نوع Adc_PowerStateRequestResultType [SWS_Adc_00527] 📄 PDF

Type Adc_PowerStateRequestResultType.

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

يحدد نوع التعداد Adc_PowerStateRequestResultType القيم المرجعة لطلبات انتقالات الحالة في إدارة الطاقة لمشغل ADC، ويُوفَّر عبر ملف الترويسة Adc.h [SWS_Adc_00527].

تمثل قيم النوع النجاح أو أسباب أخطاء محددة لتغيير حالة الطاقة المطلوب [SWS_Adc_00527]:

  • ADC_SERVICE_ACCEPTED (0): تم تنفيذ الانتقال إلى الحالة المطلوبة بنجاح [SWS_Adc_00527].
  • ADC_NOT_INIT (1): فشل الاستدعاء لأن وحدة ADC لم تتم تهيئتها بعد [SWS_Adc_00527].
  • ADC_SEQUENCE_ERROR (2): يوجد تسلسل غير صحيح عند استدعاء واجهات برمجة التطبيقات (APIs) [SWS_Adc_00527].
  • ADC_HW_FAILURE (3): يمنع خطأ في العتاد الانتقال إلى الحالة المطلوبة [SWS_Adc_00527].
  • ADC_POWER_STATE_NOT_SUPP (4): حالة الطاقة المطلوبة غير مدعومة من قِبل وحدة ADC [SWS_Adc_00527].
  • ADC_TRANS_NOT_POSSIBLE (5): الانتقال المباشر من الحالة الحالية إلى الحالة المطلوبة غير ممكن أو أن الطرفية العتادية لا تزال مشغولة [SWS_Adc_00527].

يجب على جهات الاستدعاء تقييم القيمة المرجعة للتمييز بين التنفيذ العادي والظروف الخاطئة مثل التسلسل غير الصحيح، أو عدم تهيئة الوحدة، أو تعارضات العتاد [SWS_Adc_00527].

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

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

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

Record
AUTOSAR/AP/record/CP_MOD_Adc
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_Adc@rel:R20-11#fc71b664
Content hash
fc71b664
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_ADCDriver.pdf#nameddest=SWS_Adc_00365

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

Adc_DeInit دالة

Returns all ADC HW Units to a state comparable to their power on reset state.

void Adc_DeInit (void);

Returns the version information of this module.

void Adc_GetVersionInfo (Std_VersionInfoType* versioninfo);
Adc_Init دالة

Initializes the ADC hardware units and driver.

void Adc_Init (const Adc_ConfigType* ConfigPtr);

الخدمات · Get…

Service Adc_GetCurrentPowerState.

Std_ReturnType Adc_GetCurrentPowerState (Adc_PowerStateType* CurrentPowerState, Adc_PowerStateRequestResultType* Result);

Returns the conversion status of the requested ADC Channel group.

Adc_StatusType Adc_GetGroupStatus (Adc_GroupType Group);

Returns the number of valid samples per channel, stored in the result buffer. Reads a pointer, pointing to a position in the group result buffer. With the pointer position, the results of all group channels of the last completed conversion round can be acc essed. With the pointer and the return value, all valid group conversion results can be accessed (the user has to take the layout of the result buffer into account).

Adc_StreamNumSampleType Adc_GetStreamLastPointer (Adc_GroupType Group, Adc_ValueGroupType* * PtrToSamplePtr);

Service Adc_GetTargetPowerState.

Std_ReturnType Adc_GetTargetPowerState (Adc_PowerStateType* TargetPowerState, Adc_PowerStateRequestResultType* Result);

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

Disables the notification mechanism for the requested ADC Channel group.

void Adc_DisableGroupNotification (Adc_GroupType Group);

Disables the hardware trigger for the requested ADC Channel group.

void Adc_DisableHardwareTrigger (Adc_GroupType Group);

Enables the notification mechanism for the requested ADC Channel group.

void Adc_EnableGroupNotification (Adc_GroupType Group);

Enables the hardware trigger for the requested ADC Channel group.

void Adc_EnableHardwareTrigger (Adc_GroupType Group);

This API is cyclically called and supervises the power state transitions, checking for the readiness of the module and issuing the callbacks Io Hw Ab_ Adc_ Notify Ready For Power State (see Adc Power State Ready Cb k Ref configuration parameter).

void Adc_Main_PowerTransitionManager (void);

This API starts the needed process to allow the ADC HW module to enter the AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_ADCDriver requested power state.

Std_ReturnType Adc_PreparePowerState (Adc_PowerStateType PowerState, Adc_PowerStateRequestResultType* Result);
Adc_ReadGroup دالة

Reads the group conversion result of the last completed conversion round of the requested group and stores the channe l values starting at the Data Buffer Ptr address. The group channel values are stored in ascending channel number order ( in contrast to the storage layout of the result buffer if streaming access is configured).

Std_ReturnType Adc_ReadGroup (Adc_GroupType Group, Adc_ValueGroupType* DataBufferPtr);

This API configures the Adc module so that it enters the already prepared power state, chosen between a predefined set of configured ones.

Std_ReturnType Adc_SetPowerState (Adc_PowerStateRequestResultType* Result);

Initializes ADC driver with the group specific result buffer start address where the conversion results will be stored. The applicatio n has to ensure that the application buffer, where Data Buffer Ptr points to, can hold all the conversion results of the specified group. The initialization with Adc_ Setup Result Buffer is required after reset, before a group conversion can be started.

Std_ReturnType Adc_SetupResultBuffer (Adc_GroupType Group, Adc_ValueGroupType* DataBufferPtr);

Starts the conversion of all channels of the requested ADC Channel group.

void Adc_StartGroupConversion (Adc_GroupType Group);

Stops the conversion of the requested ADC Channel group.

void Adc_StopGroupConversion (Adc_GroupType Group);

The API shall be invoked by the ADC Driver when the requested power state preparation for mode <#Mode> is completed.

void IoHwAb_Adc_NotifyReadyForPowerState<#Mode> (void);

الأنواع

In case of active limit checking: defines which conversion values are taken into account related to the boardes defineed with Adc Channel Low Limit and Adc Channel High Limit.

Numeric ID of an ADC channel.

Data structure containing the set of configuration parameters required for initializing the ADC Driver and ADC HW Unit(s).

Type of conversion time, i.e. the time during which the sampled analogue value is converted into digital representation. (This is not an API type).

Type for configuring the access mode to group conversion results.

Type for configuring the conversion mode of an ADC Channel group. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_ADCDriver

Type for assignment of channels to a channel group (this is not an API type).

Priority level of the channel. Lowest priority is 0.

Replacement mechanism, which is used on ADC group level, if a group conversion is interrupted by a group which has a higher priority.

Numeric ID of an ADC channel group.

Type for configuring on which edge of the hardware trigger signal the driver should react, i.e. start the conversion (only if supported by the ADC hardware).

Type for the reload value of the ADC module embedded timer (only if supported by the ADC hardware).

Type Adc_PowerStateRequestResultType.

Power state currently active or set as target power state.

Type of clock prescaler factor. (This is not an API type).

Type for configuring the prioritization mechanism.

Type of channel resolution in number of bits. (This is not an API type).

Type for alignment of ADC raw results in ADC result buffer (left/ right alignment).

Type of sampling time, i.e. the time during which the value is sampled, (in clock - cycles). (This is not an API type).

Current status of the conversion of the requested ADC Channel group.

Type for configuring the streaming access mode buffer type.

Type for configuring the number of group conversions in streaming access mode (in single access mode, parameter is 1). Available Adc.h AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_ADCDriver via

Type for configuring the trigger source for an ADC Channel group.

Type for reading the converted values of a channel group (raw, without further scaling, alignment according precompile switch ADC_ RESULT_ ALIGNMENT).