فهرست مطالب:

راه اندازی FreeRTOS از Scratch در STM32F407 Discovery Kit: 14 مرحله
راه اندازی FreeRTOS از Scratch در STM32F407 Discovery Kit: 14 مرحله

تصویری: راه اندازی FreeRTOS از Scratch در STM32F407 Discovery Kit: 14 مرحله

تصویری: راه اندازی FreeRTOS از Scratch در STM32F407 Discovery Kit: 14 مرحله
تصویری: آموزش میکروکنترلر به همراه پروژه های عملی - کار با STM32 2024, جولای
Anonim
راه اندازی FreeRTOS از Scratch در STM32F407 Discovery Kit
راه اندازی FreeRTOS از Scratch در STM32F407 Discovery Kit

انتخاب FreeRTOS به عنوان یک سیستم عامل زمان واقعی برای پروژه تعبیه شده شما یک انتخاب عالی است. FreeRTOS واقعا رایگان است و بسیاری از ویژگی های RTOS ساده و مثر را ارائه می دهد. اما راه اندازی freeRTOS از ابتدا ممکن است دشوار باشد یا می توانم کمی گیج کننده بگویم زیرا نیاز به سفارشی سازی مانند افزودن فایلهای خاص Microcontroller ، تنظیم مسیرهای فایل هدر و غیره دارد. در این دستورالعمل ، شما را در مورد نحوه راه اندازی FreeRTOS در کیت STM32F407 Discovery خود را با جزئیات با استفاده از Kiel uVision IDE.

تدارکات

  • می توانید در مورد FreeRTOS در freertos.org اطلاعات بیشتری کسب کنید
  • راهنمای بارگیری FreeRTOS دستورالعمل بارگیری کد منبع RTOS
  • جزئیات کامل در مورد STM32F407 Discovery Kit شروع به کار با STM32F407 Discovery KIt
  • مخزن Github FreeRTOS در کیت کشف STM32F407

مرحله 1: Keil UVision IDE را باز کنید

Keil UVision IDE را باز کنید
Keil UVision IDE را باز کنید

Keil uVision IDE را باز کنید. روی پروژه ای کلیک کنید و New uVision Project را انتخاب کنید … سپس دایرکتوری کاری خود را انتخاب کرده و نام پروژه دلخواه خود را وارد کنید.

مرحله 2: دستگاه را انتخاب کنید

Device را انتخاب کنید
Device را انتخاب کنید

هنگامی که نام پروژه را گذاشتید ، در مرحله بعد باید دستگاه را اضافه کنید. در اینجا ما میکروکنترلر STM32F407VG را از STMicroelectronics اضافه می کنیم. STM32F407VG را انتخاب کنید ، سپس روی OK کلیک کنید.

مرحله 3: مدیریت محیط اجرا

مدیریت محیط اجرا
مدیریت محیط اجرا

گام بعدی این است که جزء کتابخانه/درایور را در برگه Manage Run-Time Environment انتخاب کنید. در اینجا همه اجزا را همانطور که در تصویر بالا نشان داده شده است انتخاب کنید. هنگامی که همه فیلدهای مناسب را بررسی کردید روی Resolve و سپس OK کلیک کنید.

مرحله 4: FreeRTOS را در پوشه پروژه خود کپی کنید

FreeRTOS را در پوشه پروژه خود کپی کنید
FreeRTOS را در پوشه پروژه خود کپی کنید

اکنون باید کل پوشه FreeRTOS را در پوشه پروژه خود کپی کنید.

مرحله 5: فایل های FreeRTOS را به پروژه اضافه کنید

فایلهای FreeRTOS را به پروژه اضافه کنید
فایلهای FreeRTOS را به پروژه اضافه کنید

هنگامی که پوشه FreeRTOS را در پوشه پروژه خود کپی کردید ، باید همه فایلهای FreeRTOS لازم را به پروژه خود اضافه کنید.

  1. در Keil ، Target1 را انتخاب کنید ، راست کلیک کرده و Add new group را انتخاب کنید. نام این گروه را به FreeRTOS تغییر دهید.
  2. اکنون روی گروه FreeRTOS کلیک کنید ، روی گزینه Add Existing files to Group "FreeRTOS …" راست کلیک کنید.
  3. تمام فایلهای FreeRTOS را همانطور که در تصویر بالا نشان داده شده است اضافه کنید.

مسیر یافتن این فایل ها در پوشه FreeRTOS عبارتند از:

  • فایل ها: croutine ، event_groups ، لیست ، صف ، stream_buffer ، وظایف و تایمرها. مسیر: (…. / FreeRTOSv10.2.1 / FreeRTOS / منبع)
  • فایل ها: 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 ++ Include راست کلیک کنید. مطمئن شوید که این مسیرها را وارد کرده اید:

  1. شامل پوشه در FreeRTOS (… / FreeRTOSv10.2.1 / FreeRTOS / منبع / شامل)
  2. فهرست RVDS (… / FreeRTOSv10.2.1 / FreeRTOS / منبع / قابل حمل / RVDS / ARM_CM4F)

توجه: اگر فایل هدر دارید ، مطمئن شوید که مسیر این فایلهای سرصفحه را همانطور که در بالا توضیح داده شده است وارد کنید.

مرحله 7: فایل "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 خود را به رایانه/لپ تاپ خود وصل کنید

کیت کشف STM32F407 خود را به رایانه/لپ تاپ خود وصل کنید
کیت کشف STM32F407 خود را به رایانه/لپ تاپ خود وصل کنید

مرحله 10: در پیکربندی کامپایلر STB-Link Debugger را انتخاب کنید

در پیکربندی کامپایلر ST-Link Debugger را انتخاب کنید
در پیکربندی کامپایلر ST-Link Debugger را انتخاب کنید

روی Target1 راست کلیک کنید ، سپس روی Option for Target "Target1.." کلیک کنید ، سپس به Debug Tab بروید و مطابق تصویر بالا ST-Link-Debugger را انتخاب کنید.

مرحله 11: پیکربندی اشکال زدایی ST-Link

پیکربندی اشکال زدایی ST-Link
پیکربندی اشکال زدایی ST-Link

پس از انتخاب ST-Link Debugger در مرحله 10 ، روی تنظیمات کلیک کنید ، سپس Trace را انتخاب کنید و همه فیلدها را مطابق تصویر بالا بررسی کنید.

مرحله 12: کد را ایجاد و بارگذاری کنید

کد را بسازید و بارگذاری کنید
کد را بسازید و بارگذاری کنید

پس از اتمام تمام مراحل ، پروژه را بسازید و مطمئن شوید که خطایی در کد وجود ندارد. پس از تدوین موفق ، کد را در Discovery Kit خود بارگذاری کنید.

مرحله 13: رفتن به Debug Window و باز کردن Serial Monitor

به قسمت Debug Window بروید و Serial Monitor را باز کنید
به قسمت Debug Window بروید و Serial Monitor را باز کنید

پس از بارگذاری به اشکال زدایی windowsviewSerial WindowsDebug (printf) Viewer همانطور که در تصویر بالا نشان داده شده است بروید.

مرحله 14: کد را اجرا کنید تا پنجره خروجی در اشکال زدایی را مشاهده کنید

کد را اجرا کنید تا پنجره خروجی را در Debug Printf ببینید
کد را اجرا کنید تا پنجره خروجی را در Debug Printf ببینید

مرحله نهایی این است که کد را همانطور که در تصویر نشان داده شده است اجرا کنید تا خروجی در پنجره printf مشاهده شود. در اینجا در main.c من 2 وظیفه ساده به نام task1 و task2 را پیاده سازی کرده ام. هر دو کار دارای اولویت یکسانی هستند و فقط نام کار را چاپ می کنند. با توجه به اولویت های یکسان ، می توانید هر دوی آنها را در حال اجرا و چاپ نام مشاهده کنید.

توصیه شده: