مطالب آموزشیمیکروکنترلر های ARM

آموزش کار با میکروکنترلرهای سری STM32 بخش چهارم

ایجاد پروژه در CubeMX بر مبنای بردهای کاتالیست + ضمیمه‌ی شماره‌ی (3) – افزونه‌ی بردهای کاتالیست برای نرم‌افزار CubeMX

بطور کلی برای ایجاد پروژه در نرم‌افزار STM32CubeMX دو راه وجود دارد:

  • ایجاد پروژه بر مبنای MCU: در این حالت پروژه با انتخاب نوع میکروکنترلر آغاز می‌شود.
  • ایجاد پروژه بر مبنای Board: در این حالت پروژه با انتخاب نوع برد آغاز می‌شود، این حالت برای مواقعی مناسب است که شما از یک برد آموزشی – توسعه مانند برد دیسکاوری یا کاتالیست در پروژه‌ی خود استفاده ‌کنید.

دیاگرام زیر مسیر ایجاد پروژه را در هر دو حالت مبتنی بر MCU و Board نشان می‌دهد.

image006

* چنانچه در نرم‌افزار Cube بخواهید پروژه‌ای بر مبنای هر کدام از انواع بردهای کاتالیست ایجاد کنید، ابتدا باید افزونه‌ی مربوط به آن را نصب کنید. جهت آگاهی از نحوه‌‌ی نصب و استفاده از افزونه و سایر اطلاعات تکمیلی مربوط به آن ضمیمه‌ی شماره‌ی 3 را مطالعه کنید.

ضمیمه‌ی شماره‌ی (3) – افزونه‌ی بردهای کاتالیست برای نرم‌افزار CubeMX

با نصب این افزونه، نرم‌افزار STM32CubeMX نصب شده در سیستم شما به بردهای کاتالیست دیجیترونیک مجهز خواهد شد.
* توجه: این افزونه هرگز فایل‌های ساختاری نرم‌افزار STM32CubeMX را دستکاری نمی‌کند.

راهنمای نصب و حذف افزونه

نصب افزونه

– چنانچه نرم‌افزار STM32CubeMX در کامپیوتر شما نصب باشد مطابق مراحل زیر عمل کنید:

برای نصب این افزونه کافی است پس از اجرای فایل Patch.exe در صفحات اول و دوم نصب ، روی پوش‌باتون Next کلیک کنید تا برنامه بصورت خودکار نصب شود. اگر به هر دلیلی افزونه نتوانست بصورت خودکار نصب شود با صفحه‌ی زیر مواجه خواهید شد:

image009

در این صفحه پوشه‌ای را که فایل اجرایی نرم‌افزار STM32CubeMX داخل آن است را انتخاب یا مسیر آن را وارد کنید. چنانچه مسیر انتخاب شده درست باشد پوش‌باتون Install به حالت فعال در خواهد آمد و شما می‌توانید با کلیک روی آن اقدام به نصب افزونه کنید.

* راهنمایی:

برای یافتن محل فایل اجرایی نرم‌افزار STM32CubeMX کافی است روی Shortcut آن در Desktop راست کلیک کرده و سپس از منوی راست کلیک ، گزینه‌ی Properties را انتخاب کنید. از پنجره‌ی باز شده ، در تب Shortcut روی پوش‌باتون Open File Location کلیک کنید.

image011

با این کار پنجره‌ای باز خواهد شد که همان محل فایل اجرایی نرم‌افزار STM32CubeMX می‌باشد ، آدرس این محل را در هنگام نصب افزونه استفاده کنید (مطابق شکل زیر):

image014مسیر وارد شده در این شکل صرفا بعنوان مثال آورده شده است.

حذف افزونه

برای حذف افزونه کافی است از روش معمول حذف برنامه‌های نصب شده از قسمت Control Panel ویندوز استفاده کنید.

چرا از این افزونه استفاده می‌کنیم؟

با نصب این افزونه و انتخاب یکی از بردهای کاتالیست از لیست بردهای آموزشی – توسعه‌ی نرم‌افزار STM32CubeMX شما می‌توانید از نقش پیش‌فرض پین‌های میکروکنترلر روی برد کاتالیست و همچنین پیکره‌بندی‌های پیش‌فرض واحدهای جانبی روی آن با خبر شوید. این آگاهی باعث می‌شود که شما موثرترین استفاده را از برد کاتالیست داشته باشید.

با استفاده از این روش (روش ایجاد پروژه در نرم‌افزار STM32CubeMX بر مبنای برد) می‌توانید …

  • برای مثال بدانید کدام پین‌ها از میکرو به کانکتور LCDی روی برد متصل‌اند ، تا در هنگام کار روی پروژه‌ای که از LCD هم استفاده می‌کنید برای تعریف مثلا پینی به یک منظور دبگری در پروژه بعنوان خروجی ، از پین‌های LCD استفاده نکنید.
  • با استفاده از پیکره‌بندی‌های پیش‌فرض واحدهای جانبی ، به دور از دغدغه‌های تنظیمات مربوط به آنها – و البته در صورتی که نوع پیکره‌بندی مهم نباشد – یک راه ‌اندازی سریع را تجربه کنید.
  • از پیکره‌بندی‌های پیش‌فرض بعنوان یک مثال نمونه‌ برای نحوه‌ی راه اندازی واحدهای جانبی استفاده کنید.
  • شمار پین‌های رزرو نشده توسط برد کاتالیست (پین‌های کاملا آزاد) را بدست آورید تا از آنها برای اهداف اختصاصی خود در پروژه استفاده کنید ، البته این در صورتی است که شما در کنار اهداف اختصاصی پروژه‌ی خود از تمام امکانات روی برد کاتالیست هم استفاده کرده باشید وگرنه اکثر پین‌های رزرو شده روی برد کاتالیست در صورت عدم پیکره‌بندی واحد جانبی متصل به آنها قابلیت استفاده‌ی اختصاصی را دارند.
  • و …

 

نحوه‌ی استفاده از افزونه

در صورتی که افزونه را با موفقیت نصب کرده باشید ، نرم‌افزار STM32CubeMX را اجرا کنید و سپس به منظور ایجاد پروژه‌ی جدید بر مبنای بردهای کاتالیست ، مطابق شکل‌های زیر عمل کنید:

image013

از صفحه‌ی باز شده تب Board Selector را انتخاب کنید و سپس در قسمت Vendor ، Digitronic را انتخاب کنید. در صورتی که می‌خواهید پیکره‌بندی‌های پیش‌فرض واحدهای جانبی برد اعمال شود تیک چک‌باکس مشخص شده در شکل زیر را بزنید و در نهایت نوع برد کاتالیست خود را از لیست فیلتر شده انتخاب کنید و سپس روی آن دابل کلیک کنید تا پروژه‌ی Cube بر مبنای برد کاتالیست شما ایجاد شود.

image015

مشاهده خواهید کرد که …

– در قسمت Chip View تمامی پین‌های استفاده شده در برد کاتالیست به رنگ‌های زرد و سبز نمایش داده شده‌اند و همچنین نقش هر پین میکرو در برد کاتالیست بصورت برچسب روی آن نوشته شده است. همچنین تمامی پین‌های میکرو که با رنگ خاکستری در شکل زیر مشخص‌اند ، روی برد کاتالیست به پین هدرهای کناری هدایت شده‌اند تا شما بتوانید به راحتی از آنها بعنوان پین‌های کاملا آزاد جهت اهداف اختصاصی خود استفاده کنید.

image017

* این شکل مثالا F200 را به تصویر کشیده است.

– در قسمت IP View برخی واحدهای جانبی تعریف شده‌اند ، برای مثال – مطابق شکل زیر – تمام تنظیمات لازم برای اتصال LCD به برد کاتالیست تعریف شده است و یا منبع کلاک سیستم متناسب با کریستال خارجی موجود روی برد کاتالیست تعریف شده است.

image018

– تنظیمات مربوط به قسمت پیکره‌بندی کلاک متناسب با برد کاتالیست تعیین شده است.

image020

– پیکره‌بندی‌های پیش‌فرض روی واحدهای جانبی اعمال شده است.

image022

صفحه‌ی انتخاب برد

برای دسترسی به این صفحه در نرم‌افزار STM32CubeMX به مسیر File -> New Project -> Board Selector [Tab] بروید.

image037

[1] فیلتر کردن برد بر مبنای فروشنده‌ی برد ، نوع برد (آموزشی ، توسعه ، …) و سری میکروکنترلر بکار رفته در برد

[2] اگر این چک‌باکس تیک داشته باشد ، پروژه در حالتی شروع خواهد شد که تمامی تنظیمات پیش‌فرض امکانات جانبی برد اعمال شده است در غیر این صورت امکانات جانبی بدون تنظیمات پیش‌فرض خواهند بود

[3] در این قسمت می‌توانید لیست بردها را بر مبنای امکاناتی که لازم دارید روی برد باشند فیلتر کنید

[4] لیست بردهایی را نشان می دهد که از دو فیلتر بیان شده در بخش‌های [1] و [3] گذشته‌اند ، با دابل‌کلیک روی برد انتخاب شده در این لیست پروژه‌ی متناظر آن شروع خواهد شد

[5] این پوش‌باتون قسمت شکل برد و توضیحات آن را آشکار و مخفی می‌کند

[6] شکل فیزیکی برد انتخاب شده از لیست

[7] توضیحات برد انتخاب شده از لیست

[8] راهنمای استفاده از برد در قالب فایل pdf

[9] انتقال به صفحه‌ی اینترنتی خرید برد

 

نکات مهم

[1] در صورتی که پروژه‌ی شما در Cube بر مبنای برد کاتالیست (یا هر برد دیگری) می‌باشد ، هرگز نباید تیک چک‌باکس مشخص شده در شکل زیر را بردارید ، چرا که این کار به معنی این است که شما به Cube اجازه می‌دهید در صورت صلاح دیدش بصورت خودکار جای پین‌های نقش‌دار را عوض کند یا به اصطلاح remap کند ، حال آنکه امکان جابه‌جایی پین‌های نقش‌دار میکرو روی برد کاتالیست وجود ندارد.

image038

سوالات متداول

[1]

[?] آیا می‌توان از پین‌هایی از میکرو که روی برد کاتالیست به توابع سخت افزاری مشخص متصل‌اند با هدف آزاد استفاده کرد؟

[!] بله ، مشروط به اینکه تابع سخت افزاری متصل به آنها استفاده نشود یا اگر استفاده شود اختلالی در عملکرد آن بوجود نیاید ، در این صورت با مراجعه به شماتیک برد کاتالیست و در نظر گرفتن ویژگی‌های مدارات جانبی مربوطه از آنها استفاده کنید.

[2]

[?] افزونه‌ی حاضر مربوط به کدام نوع از بردهای کاتالیست می‌باشد؟

[!] این افزونه از تمامی بردهای کاتالیست پشتیبانی می‌کند.

[3]

[?] در صورتی که ما از پروژه‌ی Cube بر مبنای بردهای کاتالیست استفاده کنیم ، اگر یک واحد جانبی برد کاتالیست که بصورت پیش‌فرض پیکره‌بندی شده است را لازم نداشته باشیم ، باز هم در هنگام تولید پروژه‌ی کد فایل‌های کد مربوط به آنها تولید شده و حجم کد تولیدی افزایش خواهد یافت که این مسئله در مقابل ایجاد پروژه بر مبنای Device یک عیب نسبی به شمار می‌رود ، آیا راه حلی برای جلوگیری از این مشکل وجود دارد.

[!] بله ، احتمال وقوع این نارسایی در نرم‌افزار Cube پیش‌بینی شده و راه حل آن این است که قبل از تولید پروژه‌ی کد به مسیر Project -> Settings رفته و در پنجره‌ی باز شده در تب Advanced Settings هر واحدی را که لازم ندارید ، چک‌باکس متناظر آن را تیک بزنید تا فایل کد مربوط به آن در پروژه‌ی کد تولید شده ایجاد نشود.

image039

دانلود ضمیمه‌ی شماره‌ی (3) – افزونه‌ی بردهای کاتالیست برای نرم‌افزار CubeMX

تهیه توسط تیم دیجیترونیک

نوشته های مشابه

4 دیدگاه

  1. سلام
    من این افزونه رو روی cube ورژن 4.26.1 نصب کردم. متاسفانه اونجور که انتظار داشتم به صورت خودکار نقش پین ها رو مطابق بورد تنظیم نمیکنه. حتی عکس بوردهای کاتالیست رو هم نمیاره. فکر کنم افزونه بورد های کاتالیست با این ورژن مشکل داره چون افزونه رو پاک کزدم و از اول نصب کردم و مطابق آموزش پیش رفتم ولی فایده ای نداشت. چه کار میتونم برای رفع مشکل بکنم؟

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا