قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

أدوات الموضوع

الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:333
قديم 20-02-2014, 09:38 AM المشاركة 1   
افتراضي مارس 2014: متعة برمجة الميكروكونترولر pic بلغة السى والمترجم (الكومبيلر) ميكروسى برو Twitter FaceBook Google+



مارس 2014: متعة برمجة الميكروكونترولر pic بلغة السى والمترجم (الكومبيلر) ميكروسى برو :

مقدمة :

يمكن برمجة الميكروكونترولر باستخدام أحد اللغات عالية المستوى . من اللغات عالية المستوى الشائعة الاستخدام : البيسك basic والبسكال pascal والسى "c" . ولغة السى ، على الأرجح هى اللغة الأكثر استخداما فى برمجة الميكروكونترولر بسبب سهولتها وقوتها . لقد استخدمت لغة السى خلال المدة من 10 إلى 15 سنة الماضية ومرت خلال نمو هائل . اليوم ، يبدو أنه لا نهاية للأمداد بمترجمات (كومبيلر) للغة السى ، ذات سعر منخفض وجودة عالية ، موجهة إلى أى نوع من الأجهزة القائمة على الكمبيوتر ، من الكمبيوتر الشخصى pc إلى أصغر شريحة ميكروكونترولر 8 طرف .
قبل إنشاء لغة السى ، كانت الميكروبروسسور والميكروكونترولر يجرى برمجة الشريحة المستهدفة باستخدام اللغة الأصلية (الأم) وهى "لغة الأسمبلى أو التجميع " . لغة الأسمبلى كانت لغة صعبة التعلم . أيضا ، كان من الصعب ويستغرق وقتا طويلا لإنشاء (تطوير) وصيانة التطبيقات المعقدة باستخدام لغة الأسمبلى . على سبيل المثال ، إنشاء تطبيق رياضى باستخدام حساب الأعداد الحقيقية (بعلامة العشرية) يستغرق أياما ، إن لم يكن أسابيع . كان الكود (التعليمات البرمجية) التى يتم إنشاؤها كبيرة بحيث كان من الصعب تعديله أوتصحيحه . بالإضافة إلى ذلك ، فإن الكود كان محددا من أجل الميكروبروسسور المستهدف . فإذا ما كان مطلوبا التحديث (الترقية) إلى ميكروبروسسور مخالف عندئذ ، فى معظم الحالات ، فإنه من الضرورى إعادة كتابة الكود بالكامل ، واستهلاك الكثير من الوقت والجهد .
فى المقابل ، لغة السى هى لغة محمولة (قابلة للنقل) . وبشكل عام ، البرنامج المكتوب بلغة السى من أجل ميكروبروسسور معين يمكن بسهولة تعديله واستخدامه من أجل ميكروبروسسور آخر . كما أنه يمكن إنشاء وصيانة البرامج المعقدة للغاية باستخدام لغة السى .
الهدف الرئيسى من هذا الموضوع هو تعريف القراء الجدد على لغة السى ، من خلال لمحة بسيطة على معالمها الأساسية ، فى محاولة منهم لبدء البرمجة فى وقت مبكر . يتم شرح لغة السى بطريقة التدريبات ، مع العديد من الأمثلة ، وبهذه الطريقة يمكن للقراء اكتساب الثقة والبدء فى عمل برامج (كود) على الفور . ولكن على القارىء أن يقدر أن لغة السى هى لغة غنية بالعديد من الميزات ، وأن هذا الموضوع ليس بكتاب عن لغة السى ، ولكن هنا سوف يتم تغطية الأجزاء ذات الصلة بالموضوع .

اعلانات

جابرعبدالواحد
:: مهندس متميز ::
تاريخ التسجيل: Nov 2009
الدولة: نشا المنصورة EGYPT
المشاركات: 1,215
نشاط [ جابرعبدالواحد ]
قوة السمعة:0
قديم 20-02-2014, 12:17 PM المشاركة 2   
افتراضي


ربنا يبارك فيك استاذنا الغالى /فتح الله عبدالعزيز
مجهود كبير ربنا يجزيك عنه كل الخير

l]

اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

عبدالله نعمان
:: مهندس متواجد ::
تاريخ التسجيل: May 2006
المشاركات: 176
نشاط [ عبدالله نعمان ]
قوة السمعة:0
قديم 20-02-2014, 05:31 PM المشاركة 3   
افتراضي


ممتاز جدا جدا


الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:333
قديم 20-02-2014, 08:02 PM المشاركة 4   
افتراضي


شكرا جزيلا للأخوة الأفاضل المشاركين والمتابعين

مع تمنياتى بدوام التوفيق


الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:333
قديم 20-02-2014, 08:09 PM المشاركة 5   
افتراضي


لغة السى للميكروكونترولر PIC مع المترجم ميكروسى برو :

اكتسب المترجم (الكومبيلر) mikroC Pro شعبية كبيرة فى السنوات الأخيرة ، وذلك بسبب انخفاض سعرة ، وسهولة استخدامه والدعم الكامل للوح تطوير مختلفة . لقد تم تطوير هذا المترجم بمعرفة MikroElektronika ( الموقع www.mikroe.com ) وهو واحد من أسهل المترجمات للتعلم مع موارد غنية ، مثل عدد كبير من مكتبات الدول المتضمنة (المدمجة) فى بنائه . يوفر المترجم "بيئة تطوير متكاملة" IDE مع "محرر مدمج" ، و"مترجم" ، و"محاكى" و"مصحح بالدائرة ". يمكن للمستخدمين كتابة البرنامج باستخدام المحرر المدمج ، ثم ترجمته ، ومحاكلة البرنامج بنقر بضعة أزرار . يمكن تحميل البرنامج النهائى إلى الميكروكونترولر المستهدف عن طريق النقر على زر . بالإضافة إلى المحاكاة ، يمكن للمستخدمين تنفيذ التصحيح فى "الوقت الحقيقى" للتطبيقات باستخدام المصحح المدمج . موقع MikroElektronika يوفر نسخة تجريبية من المترجم محدودة لبرنامج بسعة 2 كيلوبايت من أجل اتعليم الخصائص الأساسية للمترجم .

روابط تحميل النسخة التجريبية :





برنامجك الأول لبرمجة الميكروكونترولر PIC مع المترجم ميكروسى برو :


الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:333
قديم 20-02-2014, 08:11 PM المشاركة 6   
افتراضي


برنامجك الأول لبرمجة الميكروكونترولر PIC مع المترجم ميكروسى برو :

الشكل أدناه يبين برنامج بسيط جدا لبرمجة الميكروكونترولر PIC مع المترجم ميكروسى برو .

هذا البرنامج يقوم بتوصيل on لثمانية ليدات متصلة بالمنفذ port B للميكروكونترولر PIC . ثم بعد تأخير 500 ملى ثانية يتم فصل off لليدات الثمانية .
لا تقلق إذا كنت لا تفهم عمل هذا البرنامج فى هذه المرحلة ، حيث أن كل شىء سوف يكون واضحا كلما تقدمنا. فيما يلى شرح لتفاصيل بعض العناصر المستخدمة فى البرنامج :

1- التعليقات Comments
تستخدم التعليقات فى البرامج لتوضيح عمل البرنامج . على لرغم من أن استخدام التعليقات هو أمر اختيارى ، إلا أنه من المستحسن بشدة أن تستخدم العديد من التعليقات قدر الممكن فى برامجك ، حيث أن التعليقات تجعل برامجك قابلة للقراءة وسهلة الصيانة . تخيل كيف أنه سيكون من الصعب كتابة برنامج معقد بدون أى تعليقات ، ثم محاولة تعديله بعد عدة أشهر . يتم تجاهل جميع سطور التعليقات بواسطة المترجم .
فى المترجم ميكروسى برو ، يمكن أن تكون التعليقات من نوعين : "التعليقات الطويلة" ، و"التعليقات القصيرة" .

التعليقات الطويلة :
تبدأ التعليقات الطويلة بزوج الحروف ( /* ) وتنتهى بزوج الحروف ( */ ) . عادة تستخدم التعليقات الطويلة فى بداية البرنامج لوصف تفاصيل البرنامج ، مثل ما يقوم به البرنامج ، وأنى نوع من الهاردوير يستخدم ، ومن هو المؤلف ، وتاريخ إنشاء البرنامج ، واسم ملف البرنامج ، وتاريخ الإصدار ، وهلم جرا (كما هو مبين بالشكل أدناه) . كما تستخدم التعليقات الطويلة أيضا بداخل البرنامج لوصف عمل جزء من البرنامج ، على سبيل المثال بارامترات (أدلة ، معلمات) الدوال ، والخوارزمية (إسلوب البرمجة) المستخدمة وهلم جرا .

التعليقات القصيرة :
تبدأ التعليقات القصيرة بزوج الحروف ( // ) . لا يتم إنهاء التعليقات القصيرة بحروف ، ويمكن استخدامها فى سطر واحد فقط ، بدءا من أى مكان بالسطر وحتى نهايته فقط . عموما ، تستخدم التعليقات القصيرة بعد عبارات البرنامج لتصف ما تقوم به العبارة ( كما هو مبين بالشكل أدناه) .


2- بداية ونهاية البرنامج :


الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:333
قديم 20-02-2014, 08:35 PM المشاركة 7   
افتراضي


2- بداية ونهاية البرنامج :

فى الميكروسى برو :

· "يبدأ البرنامج" مع الكلمات الأساسية (المخصوصة – المحجوزة) :
كود:
void main()
· بعدها ، يتم استخدام قوس الفتح المجعد ( { ) للإشارة (لبيان) إلى بداية "جسم البرنامج" .
· يتم إنهاء البرنامج بقوس الغلق المجعد ( } ) . وبالتالى يكون هيكل بناء البرنامج بالصيغة التالية :


كود:
void main() { Program body }
· يتكون جسم البرنامج من عبارات statements . كل عبارة برنامج يجب أن تنتهى بحرف الفاصلة المنقوطة ( ; ) للإشارة إلى نهاية العبارة ، وإلا يتم توليد خطأ بواسطة المترجم .

أمثلة :
كود:
k = 50; //correct i = k+5; //correct k = 50 //error
3- المسافات البيضاء :


الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:333
قديم 20-02-2014, 10:38 PM المشاركة 8   
افتراضي


4- المسافات (المساحات) البيضاء :

تتكون المسافات (المساحات) البيضاء فى البرنامج من "المسافات" spaces ، و "التبويبات" tabs ، ،وحروف "السطر الجديد" newline ، و"الفراغات" blanks . يتم تجاهل هذه لحروف من قبل المترجم . وبالتالى فإن السطور التالية متطابقة :

كود:
k = 20; p = 50; or k = 20; p = 50; or k = 20; p =50; or k=20; p= 20;

فى بعض التطبيقات ، قد يكون لدينا سلسلة نصية طويلة والتى قد نرغب فى تمديدها على عدة أسطر . يتم استخدام الشرطة المائلة للخلف ( \ ) لربط السلاسل النصية الممتدة على عدة أسطر . على سبيل المثال :


كود:
"My new mikroC\ Compiler"
تترجم على أنها :

كود:
"My new mikroC Compiler"
5- أسماء المتغيرات :

إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 06:22 PM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025