مقالات

میکروکنترلر های ARM-STM32

معرفی میکروکنترلر های ARM-STM32 و کاربردهای آنها

.اگر به دیگر مقالات تخصصی ما در زمینه انواع قطعات الکترونیکی مراجعه کرده باشید، حتما متوجه شده اید که ما در مقاله ای با عنوان انواع میکروکنترلر و کاربردهای آن به صورت مفصل به معرفی میکروکنترلرها پرداختیم. اما در این مطلب به طور خاص در نظر داریم تا به معرفی میکروکنترلر های ARM-STM32 بپردازیم. لطفا در ادامه با ما همراه باشید.

معرفی میکروکنترلر های ARM-STM32 و کاربرد آنها

میکروکنترلر های ARM-STM32 محصول کمپانیSTMicroelectronics  بوده و از معماری کمپانی ARM در ساخت خود بهره برده اند. کمپانی ARM به خودی خود دست به ساخت میکروکنترلر نزده است و سود خود را از بازار میکروکنترلر ها از دریافت سهام شرکت های تولیدکننده میکروکنترلر بر پایه معماری های خود به دست می آورد.

تاریخچه نامگذاری میکروکنترلر های STM

هر کدام از خانواده های میکروکنترلر های کمپانی ST قابلیت و امکانات خاص خود را دارند که در این مقاله به صورت مختصر به معرفی این میکروکنترلر ها میپردازیم. برای راحتی کار، توضیحات انواع میکروکنترلر های STM را از روی نامگذاری آنها شروع میکنیم. نام گذاری این میکروکنترلر ها از تعدادی حروف و اعداد تشکیل شده است که به صورت متغیر بین سیزده الی پانزده کاراکتر میباشند که هر کدام از آنها نشان دهنده یک مولفه خاص از آن میکروکنترلر بوده.

نامگذاری میکروکنترلر های کمپانی ST در قالب STMXXXXXXXXXX است. دو حرف اول در نام گذاری این میکروکنترلرها به صورت ثابت، حروف (ST) میباشند که نشان دهنده نام کمپانی تولید کننده یعنی STMicroelectronics است. حرف سوم در نام گذاری این میکروکنترلر ها هم به صورت ثابت، حرف (M) بوده که معرف نوع تراشه این خانواده از تولیدات کمپانی ST، یعنی میکروکنترلر است.

دو کاراکتر بعد از حروف STM نشان دهنده تعداد بیت های باس دیتای میکروکنترلر هستند که در میکروکنترلر های کمپانی ST دو حالت دارند، یا 8 بیتی هستند و یا 32 بیتی. مزایای میکروکنترلر های 32 بیتی به مراتب بیشتر از میکروکنترلرهای 8 بیتی است که به عنوان مثال چند نمونه از آنها را در اینجا بیان میکنیم.

میکروکنترلر های ARM-STM32

مزایای میکروکنترلر های 32 بیتی

میکروکنترلر های 32 بیتی دارای تعداد 32 به توان 2، یعنی 1024 عدد آدرس حافظه میباشند. اما در میکروکنترلر های 8 بیتی این عدد برابر 8 به توان 2، یعنی 256 عدد آدرس حافظه و یا به عبارتی یک چهارم میکروکنترلر های 32 بیتی است. مزیت دیگری که میکروکنترلر های 32 بیتی دارند سرعت پردازش آنهاست. که معمولا تا صدها مگاهرتز است، در صورتی که این عدد در میکروکنترلر های 8 بیتی به 8 مگاهرتز افت میکند.

مورد بعدی اینکه میکروکنترلر های 32 بیتی مقدار حافظه RAM آنهاست که معمولا 8 برابر میکروکنترلر های 8 بیتی میباشد. مزیت چهارم میکروکنترلر های 32 بیتی، قابلیت پشتیبانی از تجهیزات جانبی بیشتر و متنوع تر نسبت به میکروکنترلر های 8 بیتی است.

نامگذاری میکروکنترلر های ARM-STM32

در نامگذاری میکروکنترلر های خانواده کمپانی ST، پس از STMXX کاراکتری قرار میگیرد که نشان دهنده نوع کلاس کاری میکروکنترلر است که معمولا از 7 حالت خارج نیست. هر کدام از این هفت حرف نشان دهنده یک کلاس کاری خاص هستند که هر کدام از آن حروف را توضیح میدهیم.

حرف F (نشان دهنده مدل بنیادی است)، حرف L (نشان دهنده کم مصرف بودن توان میکروکنترلر است). حرف H (نشان دهنده عملکرد بالا)، حرف W (نشان دهنده میکروکنترلر های وایرلس دار است). حرف S (مدل های استاندارد با این حرف نشان داده میشوند)، حرف T (میکروکنترلر هایی که دارای قابلیت تاچ و سنسور لمسی دارند) و حرف G (معرف مدل های عمومی و همه منظوره) است.

پس از 6 کاراکتر اول نوبت به 3 عدد اول میرسد. که عدد اول نشانگر نوع معماری هسته میکروکنترلر است و دو عدد بعدی بیانگر ویژگی های خاص هر خانواده از میکروکنترلر ها از قبیل نوع طبقه بندی، حداکثر فرکانس کلاک، حداکثر حافظه SRAM، حداکثر حافظه Flash و … میباشد.

بعد از این 3 عدد نوبت میرسد به یک حرف که نشان دهنده تعداد پین های میکروکنترلر است که میتواند در بین حروف ( F=20, G=28, K=32, T=36, S=44, C=48, R=64/66, V=100, Z=144, I=176 ) متغیر باشد.

کاراکتر بعدی به دو صورت عدد یا حروف گذاشته میشود. که در هر صورت نشان دهنده دقیق میزان حافظه Flash می باشد. که این کاراکتر هم میتواند حالت های زیر را داشته باشد: ( I=2048, H=1536, G=1024, F=768, E=512, D=384, C=256, B=128, 8=64, 6=32, 4=16 ).

از دو کاراکتر آخر در نام میکروکنترلر های کمپانی ST، کاراکتر یکی مانده به آخر به صورت حرف نشان داده میشود و بیانگر نوع پکیج و بسته بندی میکروکنترلر میباشد که معمولا از این 5 حالت پکیج بسته بندی خارج نیست ( P=TSOOP, H=BGA, U=VFQFPN, T=LQFP, Y=WLCSP ). و در آخر اسم این میکروککنترلر ها یک عدد بیان میشود که نشان دهنده میزان دمای تحملی قطعه است که بین دو رنج تولید میشود ( 6=-40/+85 , 7=-40/+105 )

انواع میکروکنترلر های stm32 موجود در فروشگاه پیشروتلاشگران که شما همراهان گرامی میتوانید از طریق سایت سفارش دهید:

میکروکنترلر STM32G030C8T6

روش پروگرام کردن میکروکنترلر های STM32

میکروکنترلرهایی که بر پایه معماری ARM شکل گرفته اند، از دو طریق پروگرام میشوند که در ادامه به طور مختصر به آنها میپردازیم:

روش JTAG

 این روش تقریبا بین همه خانواده های ARM مشترک بوده و بیشتر در خانواده های ARM7 و ARM9 مورد استفاده قرار میگیرد. JTAG یک رابط استاندارد است که برای پروگرام کردن و خطایابی چیپ های مختلف مورد استفاده قرار میگیرد. یکی از معایب استفاده از آن، تعداد پایه های مورد استفاده آن که 6 پین است میباشد.

روش SWD

با پیشرفت تکنولوژی و کوچک تر شدن چیپ های الکترونیکی، اختصاص دادن 6 پین از یک میکروکنترلر برای پروگرام، کار خارج از عرفی است. در نتیجه در معماری خانواده های جدید کمپانی ARM که با نام CORTEX در میکروکنترلر های کمپانی ST پیاده سازی شده اند، علاوه بر رابط JTAG، به صورت موازی رابط دیگری با نام SWD تعبیه شده است که قابلیت پروگرام کردن و دیباگ چیپ را دارا میباشد. رابط SWD که مخفف حروف Serial Wire Debug میباشد، تنها 2 پین از میکروکنترلر را اشغال میکند.

پروگرامر های مختلفی برای پروگرام این میکروکنترلر ها در بازار وجود دارد که دو مدل از پرکاربردترین آنها عبارت اند از:

  • J-LINK که مدل اصلی آن ساخت کمپانی Segger بوده و از دو رابط JTAG و SWD پشتیبانی و با نرم افزار J-FLASH ARM عمل میکند
  • ST-LINK V2/V3 که توسط نرم افزار ST-LINK Utility عملیات پروگرام کردن را انجام می دهد

کامپایلرهای میکروکنترلر STM32

در دنیا شاید بیش از 50 نرم افزار برای برنامه نویسی، دیباگ کردن و پروگرام کردن میکروکنترلر های ARM-STM32 وجود داشته باشد. که ما در این مقاله به ذکر چند نمونه از آنها بسنده میکنیم:

  • Keil: یکی از محبوب ترین نرم افزارهایی که برای توسعه پروژه هایی که میکروکنترلر های آنها بر پایه معماری ARM ساخته شده، نرم افزار Keil است. این نرم افزار از یک IDE قوی و کامپایلر اختصاصی بهره میبرد. از مزایای آن میتوان به مواردی همچون پشتیبانی از تمام میکروکنترلر ها با معماری ARM، برنامه نویسی به زبان C++، C و اسمبلی، امکان شبیه سازی برنامه نوشته شده، محیط حرفه ای و یادگیری آسان این نرم افزار اشاره کرد.
  • IAR: یکی از قدرتمند ترین نرم افزارها برای توسعه پروژه های ARM قطعا نرم افزار IAR است. این نرم افزار دارای IDE و کامپایلر اختصاصی بوده و از رنج وسیعی از میکروکنترلر های ARM پشتیبانی میکند. دیباگر قوی این نرم افزار باعث شده است تا یکی از محبوب ترین ها باشد. اما تنها عیبی که دارد این است که به صورت پولی ارائه میشود و رایگان نیست.
  • Eclipse: این IDE قدرتمند برای مصارف متنوعی مورد استفاده قرار میگیرد. این IDE طبیعتا به تنهایی قادر به کامپایل کد شما نیست، پس باید یک کامپایلر قوی مثل GCC را به محیط آن متصل کرد. یکی از مزایای این ترکیب این است که هم IDE ایکلیپس و هم کامپایلر GCC به صورت رایگان ارائه میشوند.
  • کامپایلرهای دیگری که فقط به ذکر نام آنها بسنده میکنیم عبارت اند از: WinARM، Flowcode ARM، ARM ADS و …

در پایان امیدواریم که مطالب ارائه شده در این مقاله برای شما همراهان گرامی مفید بوده باشد.

کاربرد میکروکنترلر های ARM-STM32

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

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