أساسيات برمجة الميكروكونترولر أولا : مقدمة للغة الاسمبلى :

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل

أساسيات برمجة الميكروكونترولر أولا : مقدمة للغة الاسمبلى :

مُساهمة من طرف Admin في الثلاثاء مايو 10, 2016 7:50 pm

أساسيات برمجة الميكروكونترولر
أولا : مقدمة للغة الاسمبلى :
أ- الافكار الرئيسية فى برمجة الميكروكونترولر ( او اى جهاز يعمل بمبدأ الكومبيوتر) هى :
1- الميكروكونترولر لديه مجموعة تعليمات محددة instruction set ، حيث يمكنه التعرف على كل تعليمة وتنفيذها .
2- البرنامج الذى يقوم الميكروكونترولر بتنفيذه هو قائمة من التعليمات مأخوذة من مجموعة تعليماته يقوم بقراءتها بالنظام الثنائى binary من ذاكرة البرنامج الخاصة به . يسمى البرنامج فى هذا الشكل (الهيئة) بشفرة (كود) الماكينة (الالة machine code (.
3- لتنفيذ ذلك يعمل الميكروكونترولر بلا هوادة خلال تعليمات البرنامج ويفعل تماما ما تخبره به كل تعليمة أن يفعله لا أكثر ولا اقل فيما عدا عند حدوث تحويل مؤقت (المقاطعة) .
• حتى الان هذا امر بسيط ولكن الصعوبة تكمن هنا :
4- يجب على المبرمج ايجاد طرق او وسائل لتجزئة وترجمة افكاره على شكل خطوات يمكن للميكروكونترولر القيام بها حيث كل خطوة فى جوهرها يجب ان تكون تعليمة من مجموعة تعليماته.
ب‌- مشكلة البرمجة والتوافق (ايجاد الحل الوسط) مع الأسمبلى
مشكلة البرمجة ملخصة فى الشكل رقم 1.



فنحن كبشر نعبر عن افكارنا بطريقة معقدة وغالبا ما يكون تعريفها باشكال لغوية غير محددة المعالم .
الميكروكونترولر يقرأ ويفهم النظام الثنائى ويستجيب بشكل دقيق لتعليمات دقيقة . فهو منطقى إلى أقصى الحدود ويفعل تماما ما يؤمر به.
مع هذا الفرق اللغوى كيف يمكن للمبرمج كتابة برامج الميكرومونترولر؟
هناك ثلاثة طرق لسد هذه الفجوة تفرض نفسها وهى :
1- أن يتعلم الانسان لغة الالة .
وهذا ما كان يستخدمه المبرمجين فيما مضى .
بمشقة يكتب المبرمج كل تعليمة بشفرة الكود الثنائية حتى يستطيع الميكروكونترولر قراءتها .
وهذه الطريقة بطيئة للغاية ومملة وعرضة للاخطاء ولكن على الأقل فان المبرمج يستجيب مباشرة لحاجات وقدرات الميكروكونترولر .
2- استخدام لغات البرمجة ذات المستوى المرتفع .
وهذه الطريقة كما لو كنا بطريقة ما نطلب من الميكروكونترولر(أو الكومبيوتر) تعلم لغتنا .
فى لغات البرمجة ذات المستوى المرتفع تكتب التعليمات بشكل يرتبط بادراكنا للغتنا .
فى هذه الحالة نحتاج الى برنامج كومبيوتر اخر يسمى مفسر أو مترجم يقوم بتحويل برنامجنا الى كود لغة الالة التى يفهمها الميكروكونترولر.
بهذه الطريقة يستمتع المبرمج بوقته فى البرمجة كما يكتب برامج متطورة .
والنتيجة فان المبرمج ينفصل عن امكانيات الميكروكونترولر وقد يؤدى الى برنامج غير فعال نسبيا من حيث استخدام الذاكرة وسرعة التنفيذ .
3- استخدام لغة الاسمبلى وهذا هو الحل الوسط .
فى هذه اللغة تستخدم مجموعة من التعليمات وكل تعليمة من مجموعة التعليمات تحتوى على كلمة تذكير (تفكير – مفكرة ) mnemonic وهى كلمة مكونة من ثلاثة أو أربعة حروف تستخدم للتمثيل المباشر لتعليمة واحدة من مجموعة التعليمات .
عندئذ يكتب المبرمج البرنامج مستخدما تلك التعليمات . فى هذه اللغة يتعامل المبرمج مباشرة مع الميكروكونترولر كما لو كان يعمل مباشرة بتعليماته ولكن على الاقل فان المبرمج لديه مفكرات mnemonics لأستخدامها وهذا يكون أفضل من التعامل بشفرة لغة الالة .
يوجد برنامج كومبيوتر خاص يسمى الاسمبلر المتقاطع Cross-Assembler ويختصر بالاسمبلر يعمل على الكومبيوتر الشخصى ويحول الكود من لغة الاسمبلى الى كود لغة الالة التى يفهمها الميكروكونترولر .


Admin
Admin

عدد المساهمات : 935
تاريخ التسجيل : 28/01/2014

معاينة صفحة البيانات الشخصي للعضو http://fathallaabdelaziz.forumarabia.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى