ما هي برمجة النظام المضمن ولغاته

جرب أداة القضاء على المشاكل





النظام عبارة عن ترتيب وحدات متعددة ، مجمعة معًا لتعمل وفقًا للتعليمات المقدمة. النظام المضمن هو مزيج من كل من الأجهزة والبرامج ، والذي يؤدي مهمة معينة خلال الفترة المحددة (مما يعني أنه يجب أن يؤدي مهمة واحدة محددة فقط مثل الغسالة). تتمثل الميزة الرئيسية لاستخدام نظام مضمن في أحد التطبيقات في أنه يمكن تقليل الحجم والتكلفة وكذلك تحسين موثوقية المهمة وكفاءتها. نظرة عامة حول هذه المقالة حول لغات البرامج المضمنة ، والنظام المضمن برمجة ووظائفهم.

مكونات الأنظمة المدمجة

فيما يلي مكونات الأنظمة المدمجة




  • الأجهزة المضمنة: وحدة التحكم الصغيرة هي قلب النظام المضمن ، حيث يتم توصيل العديد من الأجهزة الطرفية بالأجهزة المدمجة لغرض الاتصال.
  • RTO مضمن: يتم استخدام نظام تشغيل مضمّن في الوقت الفعلي لأداء جميع العمليات المعقدة (ar.
  • برامج تشغيل الأجهزة: يعمل كجسر بين أنظمة التشغيل والأجهزة الطرفية.
  • مكدسات الاتصالات: يتم استخدامه للتواصل مع الأجهزة الخارجية.
  • التطبيقات المضمنة: يؤدي الوظيفة المحددة مسبقًا للجهاز المضمن.
مكونات النظام المضمنة

مكونات النظام المضمنة

برنامج مدمج

البرنامج المضمن أو برمجة النظام المضمن هو برنامج كمبيوتر يستخدم للتحكم في الأجهزة من خلال توفير مجموعة من التعليمات. ويسمى أيضا باسم البرامج الثابتة، يمكن برمجة الأجهزة المختلفة ذات الوظائف المختلفة باستخدام البرامج المضمنة ، من خلال الحفاظ على قيود التصميم (مثل قيود وقت الاستجابة والمواعيد النهائية الصارمة والبيانات المعالجة) وتخزين البيانات النهائية في ذاكرة (رام / روم).



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

لغات برمجة النظام المضمنة

يستخدم البرنامج المضمن نظام تشغيل ، وهو نظام تشغيل في الوقت الفعلي يؤدي مهام متعددة في وقت واحد. البرامج المضمنة مبرمجة باستخدام في C / C ++ و Phyton و Java Scripts وتتم معالجتها على أنظمة تشغيل مثل نظام تشغيل Linux و VxWorks ، Fusion RTOS ، Nucleus RTOS ، micro C / OS ، OSE ، إلخ. يلعب اختيار لغة البرمجة دورًا حيويًا في تطوير البرامج المضمنة ، والتي تستند إلى عوامل معينة كما هو موضح أدناه ،

  • مقاس : يلعب حجم الذاكرة الذي يتطلبه البرنامج دورًا مهمًا ، حيث تحتوي المعالجات المضمنة (وحدات التحكم الدقيقة) على مقدار محدد من ذاكرة القراءة فقط (ذاكرة للقراءة فقط) بناءً على تطبيقه.
  • سرعة : سرعة تنفيذ البرنامج يجب أن تكون سريعة
  • قابلية التنقل: يمكن تجميع معالجات مختلفة باستخدام برنامج واحد.
  • التنفيذ صعب
  • الصيانة صعبة.

برمجة نظام مضمن في لغة التجميع

برمجة نظام مضمن في لغة التجميع (المدخلات) والتحويل إلى ملف لغة على مستوى الآلة (الإخراج) باستخدام المجمّع يمكن شرحه باستخدام المثال التالي ، حيث نقوم بإضافة رقمين باستخدام سجلين متقطعين ونخزن النتيجة في سجل الإخراج.


إدخال

هنا: MOV R0 ، # 01H

موف # 1 ، # 02H

موف أ ، ر 0

إضافة أ ، آر 1

موف P0 ، أ

SIMP هنا

انتاج |

مُعامل رمز تشغيل العنوان

0000 78 01
0002 79 02
0004 E8-
0005 29 -
0006 F5 80
0008 80 00

يستخدم كود التجميع لتطوير كود فعال من حيث الحجم والسرعة. يصبح تطوير كود أكبر في لغة التجميع أمرًا صعبًا مما قد يؤدي إلى ارتفاع تكلفة تطوير البرامج وقابلية نقل الكود غائبة. وبالتالي للتغلب على هذا العيب نستخدم لغة عالية المستوى مثل جزءا لا يتجزأ من C .

حول C و C ++ و Java و Embedded C

البرمجة C

لغة C هي لغة هيكلية المنحى ، طورها دنيس ريتشي. يوفر وصولاً أقل للذاكرة باستخدام مترجم بسيط ويوفر البيانات بكفاءة وفقًا لتعليمات الجهاز. إنها قابلة للتطبيق في نطاقات واسعة من الأنظمة المدمجة إلى أجهزة الكمبيوتر العملاقة.

جزءا لا يتجزأ من C

إن Embedded C هو امتداد للغة C ، والتي تُستخدم لتطوير نظام مضمن. يشبه بناء الجملة لغة C (مثل الوظيفة الرئيسية ، إعلان الوظائف ، إعلان أنواع البيانات ، الحلقات ، إلخ). يتمثل الاختلاف الرئيسي بين لغة C المضمنة ولغة C القياسية في معالجة المدخلات والمخرجات للأجهزة ، وعمليات النقطة الثابتة ، ومساحات عناوين المعالجة.

يعود استخدام C في النظام المضمن إلى المزايا التالية

  • إنه برنامج صغير وسهل التعلم وفهم وتصحيح البرنامج.
  • جميع برامج التحويل البرمجي لـ C متوافقة مع جميع الأجهزة المضمنة
  • إنه معالج مستقل (أي أنه ليس خاصًا بمعالج دقيق أو متحكم دقيق).
  • تستخدم لغة C مزيجًا من لغة التجميع وميزات اللغة عالية المستوى
  • إنه فعال إلى حد ما وأكثر موثوقية ومرونة وأكثر قابلية للحمل بين المنصات المختلفة.
  • البرامج التي تم تطويرها في لغة سي أسهل في الفهم ، وتصحيح الأخطاء وصيانتها.

مقارنة مع لغة أخرى عالية المستوى C توفر المزيد من المرونة لأنها لغة صغيرة نسبيًا موجهة نحو البنية وتدعم مستوى منخفض من البت التلاعب بالبيانات .

C ++

اللغة الموجهة للكائنات مثل C ++ ليست اختيارية لتطوير برنامج فعال في بيئات قيود البحث مثل الأجهزة المضمنة. الوظائف الافتراضية ومعالجة الاستثناءات لـ C ++ هي بعض الميزات المحددة غير الفعالة من حيث المساحة وسرعة النظام.

جافا

يمكن برمجة نظام مضمن بلغة JAVA ، باستخدام آلة JAVA الافتراضية (JVM) التي تصل إلى الكثير من الموارد. يجد الاستخدام بشكل أساسي في التطبيقات المتطورة (مثل الهواتف المحمولة) ويوفر إمكانية النقل عبر الأنظمة لمعالجة التطبيقات. لا يفضل للأجهزة المدمجة الأصغر.

هندسة البرمجة C المدمجة والمثال

يمكن فهم بنية البرمجة C المضمنة بمثال على الاستخدام 8051 ميكرو تحكم ، حيث تتمثل وظيفته في وميض لمبة LED المتصلة بـ PORT1 لوحدة التحكم والمترجم المستخدم هو Keil C Compiler. ما يلي هو رمز يؤدى رمش.

# تضمين // توجيه ما قبل المعالج
تأخير باطل (int) // إعلان وظيفة التأخير
باطل رئيسي (باطل) // الوظيفة الرئيسية
{
P1 = 0x00 // المنفذ 1 مطفأ لذا فإن LED مطفأ ومخزن في reg51.h
بينما (1) // حلقة اللانهاية
{
P1 = OxFF //// المنفذ 1 قيد التشغيل حتى يكون مؤشر LED قيد التشغيل
تأخير (1000) // تعيين تأخير
P1 = 0X00 // منفذ 1 متوقف
تأخير (1000)
}
}
تأخير باطل (int د) // تعيين وظيفة التأخير
{
غير موقعة int i = 0 // المتغيرات المعينة محليًا
لـ (d> 0 d-)
{
لـ (i = 250 i> 0i–)
لـ (i = 248 i> 0i–)
}
}

مزايا

فيما يلي مزايا البرامج المضمنة

  • تحميل البيانات أسرع
  • التكلفة منخفضة
  • يستخدم موارد أقل.

سلبيات

فيما يلي عيوب البرامج المضمنة

  • الترقية معقدة
  • في كل مرة تكون إعادة الضبط ضرورية في حالة حدوث أي مشاكل
  • قابلية التوسع للقيم الصغيرة أمر صعب.

التطبيقات

فيما يلي تطبيقات البرامج المضمنة

  • الخدمات المصرفية
  • السيارات
  • الأجهزة المنزلية
  • سيارة
  • الصواريخ ، إلخ.

الأسئلة الشائعة

1). ما هو البرنامج المضمن؟

البرنامج المضمن أو برمجة النظام المضمن هي برامج الكمبيوتر ، والتي تُستخدم للتحكم في الأجهزة من خلال توفير التعليمات.

2). ما هي البرامج المستخدمة في برامج النظام المضمن؟

تتم برمجة برامج النظام المضمنة في C أو C ++ و Phyton و Java Scripts.

3). ما هو الفرق بين الأنظمة المضمنة والنظام العادي؟

النظام المضمن هو مزيج من الأجهزة والبرامج حيث يتم تصميمه لغرض معين. تتم معالجة العمليات بالتسلسل. في حين أن المعالج العادي هو نظام تشغيل RTO في الوقت الفعلي ، فهو مطلوب عندما تكون هناك حاجة للتنفيذ المتوازي.

4). ما هي الأنواع المختلفة للأنظمة المضمنة؟

يتم تصنيف الأنظمة المضمنة إلى فئتين

  • بناءً على الأداء والمتطلبات الوظيفية ، يتم تصنيفها أيضًا على أنها في الوقت الفعلي ، ومستقلة ، ومتصلة بالشبكة ، ومتنقلة.
  • بناءً على أداء الميكروكونترولر ، يتم تصنيفها أيضًا على أنها صغيرة الحجم ومتوسطة الحجم ومقياس متطور

5). التطبيقات الرئيسية للنظام المضمن

التطبيقات الرئيسية لنظام مضمن هي

  • غسالة
  • الكاميرات الرقمية
  • مشغل موسيقى ، إلخ.

النظام المضمن هو مزيج من الأجهزة والبرامج. أين ال البرامج المضمنة مبرمجة في C أو C ++ و Phyton و Java Scripts. تعمل على Linux OS و micro C / OS و QNX وما إلى ذلك. تشكل لغة C اللغة الأساسية لكتابة أكواد البرامج المضمنة. وبالتالي فهذه نظرة عامة على برنامج مضمن وشرح بنيته باستخدام أحد البرامج.