جدول المحتويات:

إعداد FreeRTOS من الصفر على STM32F407 Discovery Kit: 14 خطوة
إعداد FreeRTOS من الصفر على STM32F407 Discovery Kit: 14 خطوة

فيديو: إعداد FreeRTOS من الصفر على STM32F407 Discovery Kit: 14 خطوة

فيديو: إعداد FreeRTOS من الصفر على STM32F407 Discovery Kit: 14 خطوة
فيديو: 039 - STM32F1 USART ESP01 library from scratch part3: Server communication management & Data stream 2024, يوليو
Anonim
إعداد FreeRTOS من الصفر على STM32F407 Discovery Kit
إعداد FreeRTOS من الصفر على STM32F407 Discovery Kit

يعد اختيار FreeRTOS كنظام تشغيل في الوقت الفعلي لمشروعك المضمن خيارًا رائعًا. FreeRTOS مجاني حقًا ويوفر العديد من ميزات RTOS البسيطة والفعالة. ولكن قد يكون إعداد freeRTOS من نقطة الصفر أمرًا صعبًا أو يمكنني أن أقول أنه مربكًا بعض الشيء لأنه يتطلب بعض التخصيص مثل إضافة ملفات محددة للمتحكم الدقيق ، وتعيين مسارات ملف الرأس ، وما إلى ذلك. في هذا Instructable ، سأوجهك حول كيفية إعداد FreeRTOS على طقم اكتشاف STM32F407 بالتفصيل باستخدام Kiel uVision IDE.

اللوازم

  • يمكنك العثور على المزيد حول FreeRTOS في freertos.org
  • دليل تنزيل FreeRTOS تعليمات تنزيل رمز مصدر RTOS
  • تفاصيل كاملة عن STM32F407 Discovery Kit الشروع في العمل مع STM32F407 Discovery KIt
  • مستودع جيثب FreeRTOS على STM32F407 Discovery Kit

الخطوة 1: افتح Keil UVision IDE

افتح Keil UVision IDE
افتح Keil UVision IDE

افتح Keil uVision IDE. انقر فوق مشروع حدد مشروع uVision الجديد … ثم حدد دليل العمل الخاص بك وأدخل اسم مشروعك المفضل.

الخطوة 2: حدد الجهاز

حدد الجهاز
حدد الجهاز

بمجرد تسمية المشروع ، ستحتاج في الخطوة التالية إلى إضافة جهاز. نحن هنا نضيف STM32F407VG Micronconroller من STMicroelectronics. حدد STM32F407VG ، ثم انقر فوق موافق.

الخطوة 3: إدارة بيئة وقت التشغيل

إدارة بيئة وقت التشغيل
إدارة بيئة وقت التشغيل

الخطوة التالية هي تحديد مكون المكتبة / برنامج التشغيل في علامة التبويب إدارة بيئة وقت التشغيل. حدد هنا جميع المكونات كما هو موضح في الصورة أعلاه. بمجرد تحديد كل الحقول المناسبة ، انقر فوق حل ثم انقر فوق موافق.

الخطوة 4: انسخ FreeRTOS إلى مجلد المشروع الخاص بك

انسخ FreeRTOS إلى مجلد المشروع الخاص بك
انسخ FreeRTOS إلى مجلد المشروع الخاص بك

أنت الآن بحاجة إلى نسخ مجلد FreeRTOS بأكمله إلى مجلد المشروع الخاص بك.

الخطوة 5: أضف ملفات FreeRTOS إلى Project

أضف ملفات FreeRTOS إلى المشروع
أضف ملفات FreeRTOS إلى المشروع

بمجرد نسخ مجلد FreeRTOS داخل مجلد مشروعك ، يجب عليك إضافة جميع ملفات FreeRTOS الضرورية إلى مشروعك.

  1. في Keil ، حدد Target1 ، انقر بزر الماوس الأيمن ثم حدد إضافة مجموعة جديدة. أعد تسمية هذه المجموعة باسم FreeRTOS.
  2. انقر الآن على مجموعة FreeRTOS ، وانقر بزر الماوس الأيمن فوق تحديد إضافة الملفات الموجودة إلى المجموعة "FreeRTOS …"
  3. أضف جميع ملفات FreeRTOS كما هو موضح في الصورة أعلاه.

مسار العثور على هذه الملفات في مجلد FreeRTOS هو:

  • الملفات: كروتين ، event_groups ، قائمة ، قائمة انتظار ، stream_buffer ، مهام وأجهزة ضبط الوقت. المسار: (…. / FreeRTOSv10.2.1 / FreeRTOS / Source)
  • الملفات: heap_4 (توجد 4 ملفات لإدارة الذاكرة تضيف أي شخص). المسار: (…. / FreeRTOSv10.2.1 / FreeRTOS / Source / portable / MemMang)
  • الملفات: port.c (هذا ملف خاص بـ MCU). المسار: (… / FreeRTOSv10.2.1 / FreeRTOS / Source / portable / RVDS / ARM_CM4F)

ملاحظة: قد يتغير إصدار FreeRTOS. فقط استخدم أحدث إصدار متاح.

الخطوة 6: تكوين مسار ملفات رأس FreeRTOS

تكوين مسار ملفات رأس FreeRTOS
تكوين مسار ملفات رأس FreeRTOS

بمجرد إضافة ملفات مصدر FreeRTOS ، ستحتاج إلى إخبار المحول البرمجي بمكان وجود ملفات الرأس المعنية. ومن ثم نحتاج إلى تكوين خيار المترجم.

انقر بزر الماوس الأيمن على خيار Target1 للهدف "Target1.." C / C ++ تضمين المسار. تأكد من تضمين هذه المسارات:

  1. تضمين مجلد في FreeRTOS (… / FreeRTOSv10.2.1 / FreeRTOS / المصدر / تضمين)
  2. دليل RVDS (… / FreeRTOSv10.2.1 / FreeRTOS / Source / portable / RVDS / ARM_CM4F)

ملاحظة: إذا كان لديك أي ملفات رأس ، فتأكد من تضمين مسار ملفات الرأس هذه كما هو موضح أعلاه.

الخطوة السابعة: إضافة ملف "FreeRTOSConfig.h" إلى المشروع

يضيف
يضيف

يحتوي FreeRTOS على ملف رئيسي واحد مهم يسمى FreeRTOSConfig.h. يحتوي هذا الملف على التخصيص الخاص بالتطبيق (في حالتنا الخاصة بـ Cortex M4F MCU). للتبسيط ، قمت بنسخ ملف FreeRTOSConfig.h الخاص بـ MCU في دليل RVDS. وأيضًا في الخطوة 6 ، أضفنا بالفعل مسار RVDS. إذا كنت تضيفه بنفسك ، فيجب عليك إضافة هذا الملف في مشروعك والتأكد أيضًا من تضمين مسار هذا الملف كما هو موضح في الخطوة 6.

إذا كنت تريد إضافة ملف FreeRTOSConfig.h بنفسك في الدليل المفضل لديك ، فقد قمت بتضمين هذا الملف أدناه.

لمزيد من المعلومات انقر هنا FreeRTOSConfig.h

الخطوة 8: قم بإضافة ملف "main.c" باستخدام القالب الأساسي

أضف ال
أضف ال
  • الآن قم بإنشاء مجموعة مستخدم جديد (لقد أعدت تسميتها إلى "تطبيق المستخدم").
  • أضف ملف C جديدًا إلى هذه المجموعة (لقد أضفت ملفًا يسمى main.c).
  • هذا هو الملف حيث توجد الوظيفة main (). لقد قمت بتضمين الحد الأدنى من الوظائف والعناوين المطلوبة في هذا الملف حتى يتم تجميع المشروع بنجاح.

يمكنك العثور على ملف main.c مع القالب الأساسي أدناه.

الخطوة 9: قم بتوصيل STM32F407 Discovery Kit بجهاز الكمبيوتر / الكمبيوتر المحمول

قم بتوصيل STM32F407 Discovery Kit بجهاز الكمبيوتر / الكمبيوتر المحمول
قم بتوصيل STM32F407 Discovery Kit بجهاز الكمبيوتر / الكمبيوتر المحمول

الخطوة 10: حدد ST-Link Debugger في تكوين المحول البرمجي

حدد ST-Link Debugger في تكوين المترجم
حدد ST-Link Debugger في تكوين المترجم

انقر بزر الماوس الأيمن فوق Target1 ، ثم انقر فوق الخيار للهدف "Target1.." ، ثم انتقل إلى علامة التبويب Debug وحدد ST-Link-Debugger كما هو موضح في الصورة أعلاه

الخطوة 11: تكوين ST-Link Debugger

تكوين ST-Link Debugger
تكوين ST-Link Debugger

بعد تحديد ST-Link Debugger في الخطوة 10 ، انقر فوق Settings ثم حدد Trace وتحقق من جميع الحقول كما هو موضح في الصورة أعلاه.

الخطوة 12: إنشاء الكود وتحميله

بناء وتحميل الكود
بناء وتحميل الكود

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

الخطوة 13: انتقل إلى نافذة التصحيح وافتح Serial Monitor

انتقل إلى نافذة التصحيح وافتح Serial Monitor
انتقل إلى نافذة التصحيح وافتح Serial Monitor

بعد التحميل ، انتقل إلى تصحيح عارض windowviewSerial WindowsDebug (printf) كما هو موضح في الصورة أعلاه.

الخطوة 14: قم بتشغيل الكود لرؤية Ouput في نافذة Debug Printf

قم بتشغيل التعليمات البرمجية لمشاهدة Ouput في نافذة Debug Printf
قم بتشغيل التعليمات البرمجية لمشاهدة Ouput في نافذة Debug Printf

الخطوة الأخيرة هي تشغيل الكود كما هو موضح في الصورة لرؤية الإخراج في نافذة printf. هنا في main.c قمت بتنفيذ مهمتين بسيطتين تسمى المهمة 1 والمهمة 2. كل من المهمة لها نفس الأولوية وتقوم فقط بطباعة اسم المهمة. نظرًا لنفس الأولويات ، يمكنك رؤية كلاهما قيد التشغيل وطباعة الاسم.

موصى به: