DEENESPTFRRUARHIKOZHNL

AUTOSAR Classic General & Standard Types

Die Standard- und Plattformtypen definieren die grundlegenden C-Typen, Rückgabewerte und Kommunikationsdatenstrukturen der AUTOSAR Classic Architektur. Sie stellen hardwareunabhängige Portabilität für Basissoftware und Applikations-SW-Cs sicher.

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

يوفر أنواعًا أساسية مستقلة عن العتاد، وقيم إرجاع الحالة، وهياكل مخازن الاتصال المؤقتة لجميع وحدات BSW.
مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 747da3f739d7 المصدر
المرساة السببية: R20-11 صالح اعتبارًا من R20-11 مُركَّب حديثًا لهذا الإصدار من المواصفة.
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يوفر أنواعًا أساسية مستقلة عن العتاد، وقيم إرجاع الحالة، وهياكل مخازن الاتصال المؤقتة لجميع وحدات BSW.

توفر حزمة وحدات General & Standard Types عبر ملفات الترويسة Platform_Types.h وStd_Types.h وComStack_Types.h الأساس المستقل عن العتاد لكافة أنواع البيانات، وإفادات الحالة، ومخازن الاتصال المؤقتة لـ Classic Platform (AUTOSAR_SRS_BSWGeneral ص. 62). وهي تضع معايير السمات المعمارية الأساسية مثل نماذج ترتيب البايتات (Endianness)، وقيم الإرجاع القياسية مثل Std_ReturnType، وهياكل الاتصال مثل PduInfoType ([SWS_Std_00005]، [SWS_COMTYPE_00008]). ونظرًا لأنها تعريفات ترويسة محضة بدون كود قابل للتنفيذ، فإن الحزمة لا تتطلب تكوينًا لوقت التشغيل ولا تمتلك مهامًا خاصة بها أو معالجة نشطة للأخطاء (SWS_StandardTypes ص. 27).

تتضمن حزمة وحدات General & Standard Types ملفات الترويسة الأساسية الثلاثة platform (Platform_Types.h) وstd (Std_Types.h) وcomstack (ComStack_Types.h). وبوصفها تعريفات أنواع محضة، فهي لا تحتوي على أي كود قابل للتنفيذ ولا تتطلب أي تكوين (SWS_StandardTypes ص. 27). وهي تُشكل الأساس الشامل للمنصة لتحديد الأنواع بصورة مستقلة عن العتاد، وتوحّد خصائص المترجم والعتاد، وتزود جميع وحدات BSW وRTE بهياكل بيانات متسقة (AUTOSAR_SRS_BSWGeneral ص. 62).

TypesArchitecture PlatformTypes Platform_Types.h (platform) boolean, TRUE, FALSE CPU_BIT_ORDER, CPU_BYTE_ORDER ConstVoidPtr, C99-Elementartypen StdTypes Std_Types.h (std) Std_ReturnType (E_OK, E_NOT_OK) STD_ON/OFF, STD_HIGH/LOW, STD_ACTIVE/IDLE Std_VersionInfoType, Std_TransformerError PlatformTypes->StdTypes مُضمَّن بواسطة ComStackTypes ComStack_Types.h (comstack) PduIdType, PduLengthType, PduInfoType BufReq_ReturnType, RetryInfoType NetworkHandleType, PNCHandleType StdTypes->ComStackTypes مُضمَّن بواسطة BSWModules BSW & RTE Schichten CanIf, PduR, CanTp, SoAd, Dcm, SecOC, RTE StdTypes->BSWModules مُستورَد بواسطة ComStackTypes->BSWModules مُستورَد بواسطة

مخطط البنية: بنية الطبقات والتضمين الثابتة لحزمة وحدات 'General & Standard Types' مع واجهات الأنواع المصدرة. المصادر: AUTOSAR_SRS_BSWGeneral ص. 62، [SWS_Std_00005]، [SWS_COMTYPE_00005]

يعتمد التسلسل الهرمي للتضمين على البناء التدريجي: يُغلّف Platform_Types.h الخصائص الخاصة بالمنصة مثل نوع C99 boolean ([SWS_Platform_00027])، ومؤشرات المخازن المؤقتة العامة مثل ConstVoidPtr ([SWS_Platform_91002])، بالإضافة إلى رموز ترتيب بتات السجلات CPU_BIT_ORDER ([SWS_Platform_00038]) وترتيب بايتات الذاكرة CPU_BYTE_ORDER ([SWS_Platform_00039]). وبناءً على ذلك، يوفر Std_Types.h ثوابت قياسية عامة مثل STD_ON/STD_OFF ([SWS_Std_00010])، وهياكل إصدارات الوحدات عبر Std_VersionInfoType ([SWS_Std_00015])، ونظام الحالة الأساسي Std_ReturnType مع E_OK وE_NOT_OK ([SWS_Std_00005]، [SWS_Std_00006]).

بالنسبة لمكدس اتصالات AUTOSAR، يحدد ComStack_Types.h كافة أنواع الواجهات المشتركة بين البروتوكولات مثل PduIdType ([SWS_COMTYPE_00005]) وNetworkHandleType ([SWS_COMTYPE_00038]) وهيكل المخزن المؤقت المركزي PduInfoType ([SWS_COMTYPE_00008]). وفي بروتوكولات النقل المجزأة (مثل CanTp أو DoIP)، يتحكم نوع الإرجاع BufReq_ReturnType جنبًا إلى جنب مع RetryInfoType في الحجز التزامني للمخزن المؤقت ونسخ البيانات بين طبقات BSW (SWS_DiagnosticCommunicationManager ص. 291، [SWS_COMTYPE_00012]).

التفاوض على المخزن المؤقت واستقبال البيانات في بروتوكول النقل (ComStack_Types)CanTpPduRDcmUse Case: 1. بدء الاستقبال والاستعلام عن المخزن المؤقتPduR_CanTpStartOfReception(id, info, TpSduLength, &bufferSizePtr)Dcm_StartOfReception(id, info, TpSduLength, &bufferSizePtr)BufReq_ReturnType: BUFREQ_OK (bufferSizePtr bereitgestellt)BufReq_ReturnType: BUFREQ_OKUse Case: 2. Segmentierter Datentransferloopfuer jedes empfangene N-PDU SegmentPduR_CanTpCopyRxData(id, PduInfoType*, &bufferSizePtr)Dcm_CopyRxData(id, PduInfoType*, &bufferSizePtr)BufReq_ReturnType: BUFREQ_OKBufReq_ReturnType: BUFREQ_OKUse Case: 3. AbschlussbestaetigungPduR_CanTpRxIndication(id, Std_ReturnType: E_OK)Dcm_TpRxIndication(id, Std_ReturnType: E_OK)

مخطط التسلسل: مسار الاستقبال والتخزين المؤقت المجزأ لبروتوكول نقل باستخدام ComStack_Types (PduInfoType، BufReq_ReturnType). المصادر: SWS_PDURouter ص. 112، SWS_DiagnosticCommunicationManager ص. 273، SWS_DiagnosticCommunicationManager ص. 274

على الرغم من أن الحزمة لا تمتلك معالجة أخطاء خاصة بها أو رسائل DET (SWS_StandardTypes ص. 27)، فإن Std_ReturnType يهيكل معالجة الأخطاء للنظام بأكمله: البتات من 0 إلى 5 (0x00 إلى 0x3F) محجوزة للأخطاء القياسية وأخطاء التطبيق، بينما تشغل RTE حصريًا البتات 6 و7 ([SWS_Std_00011]، AUTOSAR_CP_SWS_StandardTypes ص. 15). وقد حُددت كافة تعريفات الأنواع للاستخدام القابل لإعادة الدخول في سياقات تعدد المهام والمقاطعات (SWS_CANInterface ص. 87).

معمارية النظام & دور مجموعة الوحدات

تُشكّل حزمة وحدات General & Standard Types الأساس النوعي والتجريدي الأساسي للعتاد في AUTOSAR Classic Platform في الإصدار R20-11. وتتألف من وحدات الترويسة المحضة الثلاث platform ([SWS_Platform_00038]) وstd ([SWS_Std_00005]) وcomstack ([SWS_COMTYPE_00005]). ووفقًا لبنية BSW، لا توفر هذه الوحدات كود C خاصًا بها قابلاً للتنفيذ ولا تطلب برامج تشغيل BSW أخرى (SWS_StandardTypes ص. 27). وتتمثل مهمتها المركزية في تغليف التبعيات الخاصة بالمترجم والمعالج، وتوفير أنواع أساسية موحدة على مستوى المنصة، وإنشاء هياكل بيانات موحدة لطبقات الاتصال.

يتبع التسلسل الهرمي للطبقات ترتيب تضمين أحادي الاتجاه وصارم: يجرّد الملف Platform_Types.h خصائص بنية المتحكم الدقيق الأساسية (مثل ترتيب السجلات والذاكرة بالإضافة إلى أنواع C99 الأولية)، بينما يعتمد Std_Types.h عليه ويحدد قيم الإرجاع العامة وثوابت الحالة (AUTOSAR_SRS_BSWGeneral ص. 62). وبناءً على ذلك، يُعلن ComStack_Types.h عن كافة أنواع البيانات المشتركة بين النواقل والبروتوكولات لشبكات مثل CAN وFlexRay وLIN وEthernet، وكذلك لبروتوكولات النقل وفقًا لـ ISO 15765-2 وبروتوكولات التشخيص وفقًا لـ ISO 14229 ([SWS_COMTYPE_00008]، [SWS_COMTYPE_00011]). ويضمن هذا الفصل بقاء الطبقات الأعلى مثل بيئة التشغيل (RTE) ومكونات برمجيات التطبيق (SWCs) قابلة للنقل بالكامل (SWS_RTE ص. 818).

TypesArchitecture PlatformTypes Platform_Types.h (platform) boolean, TRUE, FALSE CPU_BIT_ORDER, CPU_BYTE_ORDER ConstVoidPtr, C99-Elementartypen StdTypes Std_Types.h (std) Std_ReturnType (E_OK, E_NOT_OK) STD_ON/OFF, STD_HIGH/LOW, STD_ACTIVE/IDLE Std_VersionInfoType, Std_TransformerError PlatformTypes->StdTypes مُضمَّن بواسطة ComStackTypes ComStack_Types.h (comstack) PduIdType, PduLengthType, PduInfoType BufReq_ReturnType, RetryInfoType NetworkHandleType, PNCHandleType StdTypes->ComStackTypes مُضمَّن بواسطة BSWModules BSW & RTE Schichten CanIf, PduR, CanTp, SoAd, Dcm, SecOC, RTE StdTypes->BSWModules مُستورَد بواسطة ComStackTypes->BSWModules مُستورَد بواسطة

مخطط البنية: بنية الطبقات والتضمين الثابتة لحزمة وحدات 'General & Standard Types' مع واجهات الأنواع المصدرة. المصادر: AUTOSAR_SRS_BSWGeneral ص. 62، [SWS_Std_00005]، [SWS_COMTYPE_00005]

التكامل ومسارات التفاعل بين الوحدات

يعتمد التفاعل داخل الحزمة على سلسلة تضمين ثابتة: يُضمّن ComStack_Types.h Std_Types.h، الذي يدمج بدوره Platform_Types.h (RS_BSWGeneral ص. 60). وتحدد الوحدة platform كميات أساسية مثل boolean، الذي يجب تعيينه إلزاميًا إلى نوع C99 الأساسي _Bool ([SWS_Platform_00027])، وتنظم تعيين قيمته الصارم عبر القيم الثابتة (Literals) TRUE وFALSE ([SWS_Platform_00034]). علاوة على ذلك، تُحدد مؤشرات المخازن المؤقتة العامة مثل ConstVoidPtr، والتي تُستخدم لمخازن التمرير المؤقتة الثابتة لواجهات الدوال المستدعاة ([SWS_Platform_91002]).

بالإضافة إلى ذلك، ينسق platform ترتيب بايتات العتاد (Hardware-Endians) عبر رموز معالج أولي موحدة: بالنسبة لترتيب البتات في السجلات، يُحدد CPU_BIT_ORDER على MSB_FIRST أو LSB_FIRST ([SWS_Platform_00038]، [SWS_Platform_00048]، [SWS_Platform_00049]). ويتم التحكم في ترتيب البايتات في الذاكرة المادية عبر CPU_BYTE_ORDER، مع التمييز بين HIGH_BYTE_FIRST (الطرفية الكبرى Big Endian، مع وجود MSB في العنوان الأدنى) وLOW_BYTE_FIRST (الطرفية الصغرى Little Endian، مع وجود LSB في العنوان الأدنى) ([SWS_Platform_00039]، [SWS_Platform_00050]، [SWS_Platform_00051]).

ByteOrdering cluster_big Big Endian (CPU_BYTE_ORDER = HIGH_BYTE_FIRST) cluster_little Little Endian (CPU_BYTE_ORDER = LOW_BYTE_FIRST) Logical16 Logischer Wert: uint16 (16-Bit) Byte1: MSB (Bits 15..8) Byte0: LSB (Bits 7..0) BigMem Physikalischer Speicher Adresse n: Byte1 (MSB) Adresse n+1: Byte0 (LSB) Logical16->BigMem HIGH_BYTE_FIRST LittleMem Physikalischer Speicher Adresse n: Byte0 (LSB) Adresse n+1: Byte1 (MSB) Logical16->LittleMem LOW_BYTE_FIRST

مخطط الهيكل: تعيين الذاكرة للقيم القياسية متعددة البايتات عند استخدام الطرفية الكبرى (HIGH_BYTE_FIRST) مقابل الطرفية الصغرى (LOW_BYTE_FIRST). المصادر: AUTOSAR_CP_SWS_PlatformTypes ص. 16، AUTOSAR_CP_SWS_PlatformTypes ص. 15، [SWS_Platform_00050]، [SWS_Platform_00051]

في مستوى التجريد التالي، تحدد الوحدة std رموزًا عامة لحالات التبديل والمستويات المنطقية: STD_HIGH (0x01u) وSTD_LOW (0x00u) لمستويات الجهد المادية ([SWS_Std_00007])، وSTD_ON (0x01u) وSTD_OFF (0x00u) لأوضاع التنشيط ([SWS_Std_00010])، بالإضافة إلى STD_ACTIVE (0x01u) وSTD_IDLE (0x00u) لحالات التنفيذ المنطقية ([SWS_Std_00013]). وبالنسبة لبروتوكولات الرسائل والمحولات (Transformers)، يوفر std أيضًا Std_MessageTypeType مع القيم الثابتة STD_MESSAGETYPE_REQUEST (0x00) وSTD_MESSAGETYPE_RESPONSE (0x01) ([SWS_Std_91001]، [SWS_Std_00017]) بالإضافة إلى نوع مؤشر الدالة Std_ExtractProtocolHeaderFieldsType لاستخراج ترويسات البروتوكول ([SWS_Std_91003]).

تستخدم الوحدة comstack بدورها الأنواع الأساسية من platform وstd لهيكلة عملية تبادل المخازن المؤقتة والبيانات بأكملها في مكدس الاتصالات. وهيكل الواجهة المركزي هو PduInfoType، الذي يجمع بين مؤشر البيانات SduDataPtr (uint8*)، ومؤشر البيانات الوصفية MetaDataPtr، بالإضافة إلى طول المخزن المؤقت SduLength من النوع PduLengthType ([SWS_COMTYPE_00008]، [SWS_COMTYPE_00011]). ويتم تحديد I-PDU عبر PduIdType ([SWS_COMTYPE_00005]). ولإدارة قنوات الاتصال والشبكات الفرعية بأكملها، يحدد comstack معرّف القناة NetworkHandleType ([SWS_COMTYPE_00038]) ومعرّف الشبكة الفرعية PNCHandleType ([SWS_COMTYPE_00036])، واللذين يُستخدمان على سبيل المثال في Synchronized PNC Shutdown لـ ComM وNm (SWS_COMManager ص. 171).

في عمليات نقل بروتوكولات النقل (TP) المجزأة، تتم إدارة تفاوض المخزن المؤقت عبر أنواع الإرجاع BufReq_ReturnType والهيكل RetryInfoType ([SWS_COMTYPE_00012]). وعند استدعاءات النسخ التزامنية مثل CopyTxData أو CopyRxData بين وحدات مثل CanTp أو PduR أو DCM أو DoIP أو SecOC، يشير BUFREQ_OK إلى نجاح عملية النسخ، بينما يُفيد BUFREQ_E_BUSY بعدم توفر مساحة كافية مؤقتًا في المخزن المؤقت وإمكانية إجراء محاولة جديدة (SWS_DiagnosticCommunicationManager ص. 291، SWS_SecureOnboardCommunication ص. 76). ومن خلال RetryInfoType مع معلمات مثل TP_CONFPENDING أو TP_DATACONF، يتم ضمان بقاء البيانات في المخزن المؤقت لأي عمليات إعادة محتملة أو تحريرها بعد التأكيد (SWS_IntrusionDetectionSystemManager ص. 49).

التفاوض على المخزن المؤقت واستقبال البيانات في بروتوكول النقل (ComStack_Types)CanTpPduRDcmUse Case: 1. بدء الاستقبال والاستعلام عن المخزن المؤقتPduR_CanTpStartOfReception(id, info, TpSduLength, &bufferSizePtr)Dcm_StartOfReception(id, info, TpSduLength, &bufferSizePtr)BufReq_ReturnType: BUFREQ_OK (bufferSizePtr bereitgestellt)BufReq_ReturnType: BUFREQ_OKUse Case: 2. Segmentierter Datentransferloopfuer jedes empfangene N-PDU SegmentPduR_CanTpCopyRxData(id, PduInfoType*, &bufferSizePtr)Dcm_CopyRxData(id, PduInfoType*, &bufferSizePtr)BufReq_ReturnType: BUFREQ_OKBufReq_ReturnType: BUFREQ_OKUse Case: 3. AbschlussbestaetigungPduR_CanTpRxIndication(id, Std_ReturnType: E_OK)Dcm_TpRxIndication(id, Std_ReturnType: E_OK)

مخطط التسلسل: مسار الاستقبال والتخزين المؤقت المجزأ لبروتوكول نقل باستخدام ComStack_Types (PduInfoType، BufReq_ReturnType). المصادر: SWS_PDURouter ص. 112، SWS_DiagnosticCommunicationManager ص. 273، SWS_DiagnosticCommunicationManager ص. 274

المزامنة، وقابلية إعادة الدخول، وسياقات المهام

نظراً لأن الوحدات platform وstd وcomstack هي ملفات ترويسة نقية بدون ملفات كائنات قابلة للتنفيذ، فإنها بطبيعتها لا تنفذ أي MainFunctions دورية ولا تمتلك سياقات مهام خاصة بها (SWS_StandardTypes ص. 27). ومع ذلك، فإنها تحدد التوقيعات واتفاقيات الأنواع للدوال التي يتم استدعاؤها عبر حدود الطبقات. تم تصميم جميع تعريفات الأنواع بحيث يمكن تمريرها بدون حالة وبقابلية إعادة الدخول بشكل غير مقيد (SWS_CANInterface ص. 87).

يتم الاستخدام العملي للأنواع في بيئات غير متزامنة ومتزامنة للغاية. يُسمح صراحةً بتنفيذ ردود نداء استلام البيانات مثل CanIf_RxIndication أو Dcm_CopyRxData، والتي تستخدم PduInfoType وPduIdType، ضمن سياق المقاطعة (SWS_CANInterface ص. 164، SWS_DiagnosticCommunicationManager ص. 274). في المقابل، تتم معالجة قرارات التوجيه، وتخصيصات المخازن المؤقتة، أو عمليات الإرسال الدورية في مهام دورية للطبقات العليا (مثل SoAd_MainFunction) (SWS_SocketAdaptor ص. 104). ونظراً لإمكانية مشاركة هياكل المؤشرات مثل PduInfoType بين مستوى المقاطعة ومستوى المهمة، فإن المزامنة الآمنة مؤشرياً (thread-safe) عبر المناطق الحصرية (الحماية من التزامن) تقع على عاتق وحدات BSW المستدعية والمنفذة لها.

دورات الحياة النموذجية وأنماط التشغيل

لا تخضع تعريفات الأنواع النقية لدورة حياة وقت التشغيل ولا تمتلك دوال تهيئة أو إيقاف تشغيل (SWS_StandardTypes ص. 27). ويجب تضمينها بشكل ثابت في وقت الترجمة قبل جميع الوحدات المعالجة. ومع ذلك، فإنها تشكل الهيكل المعياري لتعيين ومراقبة دورة حياة وحدات BSW الأخرى: للاستعلام المعياري عن الإصدار، يحدد std الهيكل Std_VersionInfoType، والذي يحتوي على vendorID وmoduleID بالإضافة إلى حالات إصدار البرمجيات (sw_major_version، sw_minor_version، sw_patch_version) ([SWS_Std_00015]).

علاوة على ذلك، تدعم أنواع مثل NetworkHandleType وPNCHandleType إدارة الشبكة والأنماط العليا أثناء تغييرات أوضاع التشغيل مثل Startup وNormal وSleep وWakeup ([SWS_COMTYPE_00036]، [SWS_COMTYPE_00038]). وهكذا يتحكم ComM استناداً إلى هذه المعرفات في عمليات إيقاف التشغيل المنسقة وتغييرات الحالة في شبكة المجموعات الفرعية (SWS_COMManager ص. 171، SWS_NetworkManagementInterface ص. 106).

معالجة الأخطاء، وتتبع DET، وتشفير الحالة

لا توفر مجموعة الوحدات معالجة نشطة للأخطاء خاصة بها ولا تبلغ عن أخطاء التطوير إلى DET ولا عن أخطاء الإنتاج إلى DEM (SWS_StandardTypes ص. 27). وبدلاً من ذلك، فإنها تضع معياراً لشكل الاستجابة على مستوى المنصة بأكملها: يستند النوع الأساسي Std_ReturnType إلى uint8 ويُستخدم عبر جميع الطبقات كنتيجة قياسية للاستدعاءات المتزامنة ([SWS_Std_00005]، BSWUMLModelModelingGuide ص. 28). افتراضياً، يمثل E_OK (0x00u) التنفيذ الناجح وE_NOT_OK (0x01u) خطأ عاماً ([SWS_Std_00006]). ولأسباب التوافق مع ISO 17356-3 (OSEK OS)، تتم حماية E_OK من التعريفات المتعددة عبر فحص حماية (STATUSTYPEDEFINED) (AUTOSAR_SRS_BSWGeneral ص. 62).

يتبع تخطيط البتات لـ Std_ReturnType تقسيماً محدداً بدقة: البتات من 0 إلى 5 (النطاق من 0x00 إلى 0x3F) محجوزة لقيم الإرجاع المعيارية والخاصة بالوحدة أو رموز ApplicationError المخصصة للتطبيق في عمليات العميل/الخادم ([SWS_Std_00011]، AUTOSAR_CP_SWS_StandardTypes ص. 15). تتم إدارة التوسعات الخاصة بالوحدة في نماذج UML كفئة ذات النمط المسبق «extra_literals» (BSWUMLModelModelingGuide ص. 33). البتات 6 و7 (نطاق القيم 0x40 و0x80 و0xC0) محجوزة بدقة لحالات أخطاء البنية التحتية لـ RTE (AUTOSAR_CP_SWS_StandardTypes ص. 15). لتحويلات البيانات في RTE، يعلن std بشكل إضافي عن الهيكل Std_TransformerError، المكون من errorCode ([SWS_Std_00022]) وtransformerClass ([SWS_Std_00021])، وبذلك يمكن تتبع سلاسل الأخطاء أثناء التسلسل أو تأمين E2E بشكل كامل.

يعتمد هذا الدليل على المواصفات المعيارية لـ AUTOSAR Classic Platform الإصدار R20-11 لكل من StandardTypes وPlatformTypes وCommunicationStackTypes.

ComStack

Variables of this type shall be used to store the result of a buffer request.

typedef enum { BUFREQ_OK, BUFREQ_E_NOT_OK, BUFREQ_E_BUSY, BUFREQ_E_OVFL } BufReq_ReturnType;

Variables of the type Network Handle Type shall be used to store the identifier of a communication channel.

PduIdType نوع

This type is used within the entire AUTOSAR Com Stack except for bus drivers.

typedef uint16 PduIdType;

Variables of this type shall be used to store the basic information about a PDU of any type, namely a pointer variable pointing to its SDU (payload), a pointer to Meta Data of the PDU, and the corresponding length of the SDU in byt es.

typedef struct { uint8* SduDataPtr; uint8* MetaDataPtr; PduLengthType SduLength; } PduInfoType;

This type shall be used within the entire AUTOSAR Com Stack of an ECU except for bus drivers.

Used to store the identifier of a partial network cluster.

Variables of this type shall be used to store the information about Tp buffer handling.

typedef struct { TpDataStateType TpDataState; PduLengthType TxTpDataCnt; } RetryInfoType;

Variables of this type shall be used to store the state of TP buffer.

typedef enum { TP_DATACONF, TP_DATARETRY, TP_CONFPENDING } TpDataStateType;

Specify the parameter to which the value has to be changed (BS or STmin).

typedef enum { TP_STMIN, TP_BS, TP_BC } TPParameterType;

Platform

boolean نوع

This standard AUTOSAR type shall only be used together with the definitions TRUE and FALSE.

typedef unsigned char boolean;

This standard AUTOSAR type shall be a void pointer to const. Note: This type shall be used for buffers that are passed to the callee.

typedef const void* ConstVoidPtr;

This symbol shall be defined as #define having one of the values MSB_FIRST or LSB_FIRST according to the platform.

This symbol shall be defined as #define having one of the values HIGH_BYTE_FIRST or LOW_ BYTE_FIRST according to the platform.

CPU_TYPE نوع

This symbol shall be defined as #define having one of the values CPU_TYPE_8, CPU_TYPE_16, CPU_TYPE_32 or CPU_TYPE_64 according to the platform.

float32 نوع

This standard AUTOSAR type shall follow the 32-bit binary interchange format according to IEEE 754-2008 with encoding parameters specified in chapter 3.6, table 3.5, column "binary32".

typedef float float32;
float64 نوع

This standard AUTOSAR type shall follow the 64-bit binary interchange format according to IEEE 754-2008 with encoding parameters specified in chapter 3.6, table 3.5, column "binary64".

typedef double float64;
sint16 نوع

This standard AUTOSAR type shall be of 16 bit signed.

typedef signed short sint16;

This optimized AUTOSAR type shall be at least 16 bit signed.

typedef signed int sint16_least;
sint32 نوع

This standard AUTOSAR type shall be 32 bit signed.

typedef signed long sint32;

This optimized AUTOSAR type shall be at least 32 bit signed.

typedef signed int sint32_least;
sint64 نوع

This standard AUTOSAR type shall be 64 bit signed.

typedef signed long long sint64;
sint8 نوع

This standard AUTOSAR type shall be of 8 bit signed.

typedef signed char sint8;

This optimized AUTOSAR type shall be at least 8 bit signed.

typedef signed int sint8_least;
TRUE_FALSE نوع

The symbols TRUE and FALSE shall be defined as follows: #ifndef TRUE #define TRUE 1 #endif #ifndef FALSE #define FALSE 0 #endif

uint16 نوع

This standard AUTOSAR type shall be of 16 bit unsigned.

typedef unsigned short uint16;

This optimized AUTOSAR type shall be at least 16 bit unsigned.

typedef unsigned int uint16_least;
uint32 نوع

This standard AUTOSAR type shall be 32 bit unsigned.

typedef unsigned long uint32;

This optimized AUTOSAR type shall be at least 32 bit unsigned.

typedef unsigned int uint32_least;
uint64 نوع

This standard AUTOSAR type shall be 64 bit unsigned.

typedef unsigned long long uint64;
uint8 نوع

This standard AUTOSAR type shall be of 8 bit unsigned.

typedef unsigned char uint8;

This optimized AUTOSAR type shall be at least 8 bit unsigned.

typedef unsigned int uint8_least;
VoidPtr نوع

This standard AUTOSAR type shall be a void pointer Note: This type shall be used for buffers that contain data returned to the caller.

typedef void* VoidPtr;

Std

Because E_ OK is already defined within OSEK, the symbol E_ OK has to be shared. To avoid name clashes and redefinition problems, the symbols have to be defined in the following way (approved within implementation): #ifndef STATUSTYPEDEFINED #define STATUSTYPEDEFINED #define E_ OK 0x00u typedef unsigned char Status Type; /* OSEK compliance */ #endif #define E_ NOT_ OK 0x01u

#define E_OK 0x00u #define E_NOT_OK 0x01u

The symbols STD_ ACTIVE and STD_ IDLE shall be defined as follows: #define STD_ ACTIVE 0x01u /* Logical state active */ #define STD_ IDLE 0x00u /* Logical state idle */

#define STD_ACTIVE 0x01u #define STD_IDLE 0x00u

Type for the function pointer to extract the relevant protocol header fields of the message and the type of the message result of a transformer. - At the time being, this is limited to the types used for C/ S communication (i.e., REQUE ST and RESPONSE and OK and ERROR).

typedef Std_ReturnType (* Std_ExtractProtocolHeaderFieldsType)(const uint8* buffer, uint32 bufferLength, Std_MessageTypeType* messageType, Std_MessageResultType* messageResult);

The symbols STD_ HIGH and STD_ LOW shall be defined as follows: #define STD_ HIGH 0x01u /* Physical state 5V or 3.3V */ #define STD_ LOW 0x00u /* Physical state 0V */

#define STD_HIGH 0x01u #define STD_LOW 0x00u

This type is used to encode different types of results for response messages. - Currently this encoding is limited to the distinction between OK and ERROR responses.

This type is used to encode the different type of messages. - Currently this encoding is limited to the distinction between requests and responses in C/ S c ommunication.

The symbols STD_ ON and STD_ OFF shall be defined as follows: #define STD_ ON 0x01u #define STD_ OFF 0x00u

#define STD_ON 0x01u #define STD_OFF 0x00u

This type can be used as standard API return type which is shared between the RTE and the BSW modules. It shall be defined as follows: typedef uint8 Std_ Return Type;

- Tags: atp.Status=draft

- Tags: atp.Status=draft

This type shall be used to request the version of a BSW module using the _ Get Version Info() function.

typedef struct { uint16 vendorID; uint16 moduleID; uint8 sw_major_version; uint8 sw_minor_version; uint8 sw_patch_version; } Std_VersionInfoType;

Module im Cluster

Compiler Abstraction (Compiler)

AUTOSAR Classic Special Files-Modul Compiler Abstraction (Compiler, Spezifikation: AUTOSAR_SWS_CompilerAbstraction.pdf).

BSW ID 198 Keine C-API · 35 Anforderungen #include "Compiler.h"

Communication Stack Types (ComStack_Types)

Standardized types, PDU identifiers, lengths, and buffer request types (PduIdType, PduLengthType, PduInfoType, BufReq_ReturnType) used across all communication layers.

BSW ID 196 9 APIs (0 Funktionen, 9 Typen) #include "ComStack_Types.h"

Memory Mapping (MemMap)

AUTOSAR Classic Special Files-Modul Memory Mapping (MemMap, Spezifikation: AUTOSAR_CP_SWS_MemoryMapping.pdf, AUTOSAR_SWS_MemoryMapping.pdf).

BSW ID 195 Keine C-API · 32 Anforderungen #include "MemMap.h"

Platform Types (Platform_Types)

Platform-specific fundamental data types (integers, booleans, floating-point numbers) mapped to CPU architecture primitives.

BSW ID 199 23 APIs (0 Funktionen, 23 Typen) #include "Platform_Types.h"

Standard Types (Std_Types)

Standard types, return codes (Std_ReturnType, E_OK, E_NOT_OK), version info structures, and error codes shared across the entire AUTOSAR architecture.

BSW ID 197 13 APIs (0 Funktionen, 13 Typen) #include "Std_Types.h"