إذا كنت تقصد برمجيات السيارات بالمعني المعروف لدى كبرى شركات السيارات Automotive Industrie، دعني في البداية أشرح بشكل مبسط، ما المقصود بتلك البرمجة، وبعدها نتكلم عن المتطلبات.
السيارة تتكون من مجموعة من ECU أو Electronic Control Unit يُمكن النظر إليها على أنها حاسوب صغير جداً، وتتصل تلك الحواسيب مع بعضها من خلال شبكات مبنية على بروتوكولات حسب كل شبكة، فكل مجموعة صغيرة من تلك الحواسيب ( ECU) تكون متصلة بنوع شبكة الخاصة بها حسب الاستخدام.
فعلى سبيل المثال لدينا مجموعة متصلة مع بعضها من خلال شبكة مبنية علي Can Protocol وتسمي Can Network، وأخرى مبنية على Lin Protocol، وآخرين على Flexray Protocol، وهكذا.
كل واحدة من تلك الوحدات ECU يوجد عليها نظام تشغيل يسمي Autosar يمكن اعتباره مثل الاندرويد، ويمكن اعتبار الوظيفة التي تقوم بكل وحدة هي مجموعة تطبيقات Android الموجودة بها.
وفي بعض الأحيان ربما لا نحتاج لكل هذا التعقيد، إذا كانت الوظيفة المطلوبة بسيطة جداً.
ننتقل إلى المتطلبات :
لغة ال C هي الأهم على الإطلاق إذا كُنا نتحدث عن نظام Autosar التقليدي Classical Autosar.
معرفة ببرتوكولات الاتصال الخاصة بالأنظمة المدمجة embedded systems مثل spi , uart and i2c
أن تكون مُلم بأساسيات برمجة الأنظمة المدمجة مثل أنواع الذاكرة، أساسيات نظم التشغيل
معرفة ببرتوكولات الاتصال في السيارات مثل can، و Lin وغيرها، ولكن للعلم هذه النقطة ليست أساسية في البداية مجرد معرفة بسيطة فقط
لغة ال++C إذا كنت ستعمل علي Adaptive Autosar
أخيراً المعرفة ب Java أو python أو ملفات xml ستكون مفيدة جداً