برنامج IAR هو بيئة تطويرية متكاملة غنية عن التعريف وتتوفر منه إصدارات لأغلب عائلات المتحكمات الشهيرة مثل ARM - 8051 - AVR - MSP430 . ومن أفضل مميزات هذا البرنامج هو ال Debugger الخاص به والذي يمكنك من رؤية سير البرنامج خطوة بخطوة وبنفس الوقت تتمكن من رؤية محتويات المسجلات المختلفة وكذلك محتوى الذاكرة وغيرها من المعلومات المفيدة والتي تساهم في تمكيننا من إنتاج برامج ذات كفاءة عالية.
سنعتمد في دروسنا القادمة على هذه البوردة الأكثر من رائعة
وتحمل الإسم التالي STM32F4 discovery board
ويجدر بنا الإشارة هنا إلى أن F4 تشير إلى ان المتحكم مصمم بمعمارية ARM Cortex-M4
نبدأ بتحميل البرنامج من الرابط التالي:
هنا
ونقوم بتحميل الدرايفرات القياسية الخاصة ب STM32F4 من الرابط التالي:
هنا
ونقوم أيضاً بتحميل ال USB driver الخاص بالمبرمجة ST-link والموجودة على البوردة من الرابط التالي: هنا
ثم نقوم بتثبيت برنامج IAR وتثبيت ال usb driver كي يتعرف الحاسب على البوردة عند توصيلها بمنفذ USB.
وأيضاً نقوم بفك الضغط عن الدرايفرات القياسية .
ملحوظة: يجدر الإشارة هنا إلى انه يجب تفعيل برنامج IAR قبل البدء في إستخدامه. وهو يدعم نسخة مجانية محدودة ( أقصى حجم للكود هو 32 ك بايت ). وهو حجم ليس بقليل لغرض العملية التعليمية.
نقوم بفتح البرنامج فيظهر بالشكل التالي:
نضغط على قائمة Project ونختار Create New Project... كما بالصورة التالية:
فتظهر النافذة التالية ونختار منها C ثم main :
ثم نقوم بحفظ البرنامج في المكان الذي نريده.
ثم تظهر بيئة العمل بالشكل التالي:
الآن قد قمنا بإنشاء مشروع جديد ولكن البرنامج لا يعلم رقم المتحكم الذي نريد برمجته
لذا نقوم بتحديده من خلال قائمة Project وإختيار options.
فتظهر نافذة options بالشكل التالي:
نقوم بالضغط على Device ثم الضغط على المربع مقابله جهة اليمين, وإختيار نوع المتحكم كما بالصورة:
نقوم الآن بإخبار البرنامج بأننا نريد إستخدام الكود الذي سنكتبه مع البوردة الحقيقية وليس بالمحاكي المرفق بالبرنامج
وأيضاً نحدد هذا الإختيار كي يقوم البرنامج برفع الكود للمتحكم عندما نريد
ونقوم بإختيار البروتوكول المستخدم في تحميل الكود على البوردة
إلى الآن انتهينا من إعداد البرنامج للتعامل مع المتحكم الموجود بين أيدينا
تتبقى خطوة واحدة وهي إضافة الدرايفرات القياسية للمتحكمات من نوع STM32
نقوم بالضغط بالزر الأيمن على اسم المشروع ثم إختيار Add ومنها نختار Add files... كما بالصورة
نذهب للمكان الذي وضعنا فيه مجلد الدرايفرات القياسية والذي قمنا بفك ضغطه سابقاً
ثم نقوم بتحديد 5 ملفات سنجدهم في المسارات التالية:
المسار التالي: STM32F4-Discovery_FW_V1.1.0\Libraries\STM32F4xx_StdPeriph_Driver\src
سنجد به عدة ملفات نقوم بإضافة التالي منها:
misc.c
stm32f4xx_gpio.c
stm32f4xx_rcc.c
ثم نذهب للمسار التالي:
STM32F4-Discovery_FW_V1.1.0\Libraries\CMSIS\ST\STM32F4xx\Source\Templates
ونقوم بإضافة الملف التالي:
system_stm32f4xx.c
وأخيراً نقوم بالذهاب للمسار التالي:
STM32F4-Discovery_FW_V1.1.0\Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates\iar
ونقوم بإضافة الملف الموجود بداخله وهو:
startup_stm32f4xx.s
فتصبح الملفات المضافة كما بالصورة:
نقوم الآن بتحديد أماكن ملفات .h الخاصة بالملفات التي أضفناها بالخطوة السابقة
من خلال قائمة Project نختار options
ثم نقوم بإختيار التالي:
ونضغط على الزر المحدد بالدائرة الحمراء فتظهر النافذة التالية:
نضغط هنا على الكلمة المحددة باللون الأحمر ونقوم بتحديد هذه المجلدات الواحد تلو الآخر:
ثم نضغط OK.
تتبقى خطوة أخيرة ألا وهي كتابة أمر محدد للبرنامج كما بالصورة التالية:
هذا الأمر يخبر البرنامج بإستخدام الدرايفرات القياسية.
تهانينا :) الآن إنتهينا من إعداد كل شئ ونحن جاهزون للبدء بكتابة الكود :)
نقوم بكتابة الأمر التالي #include "stm32f4xx.h" في أول سطر :
نقوم الآن بالتأكد من إعدادنا لكل شئ بالطريقة الصحيحة من خلال الضغط على هذا زر make:
سيقوم البرنامج بعمل build للكود ونتحقق من وجود أية أخطاء بالنافذة السفيلة ويفترض بنا في ههذه المرحلة الحصول على نتيجة مماثلة:
وهنا يتضح عدم وجود أية أخطاء أو تحذيرات.
وإذا وجد أي منها برجاء مراجعة الخطوات السابقة.
وإلى لقاء آخر, دمتم في أمان الله .