برنامه نویسی برد STM32 توسط کامپایلر آردوینو IDE(قسمت اول)

الکترونیک و رباتیک -> برد های توسعه 20530 سجاد میابی

فایده‌ی راه اندازی برد STM32 توسط این کامپایلر چیست؟

آردوینو به عنوان یک بستر سخت افزاری و نرم افزاری برای پیاده سازی بوردهای الکترونیکی با هدف آسان کردن ساخت بوردها و کدنویسی آنها جزء محبوب ترین پلتفرم‌های الکترونیکی برای مهندسین الکترونیک به شمار می‌رود. با این حال هر چه بیشتر با آن درگیر شویم متوجه می‌شویم که به دلیل داشتن پردازنده ۸ بیتی با سرعت بسیار پایین برای کاربرد‌های صنعتی جوابگو نیست. خوشبختانه درحال حاضر بورد توسعه‌ی STM32F103C8T6 با هسته‌ی آرم ۳۲ بیتی Cortex-M3 می‌تواند جایگزین آن شود.

یکی ازجالب‌ترین کارها امکان استفاده از کامپایلر آردوینو IDE برای پروگرام کردن بوردهای STM32 است. بنابراین در این آموزش ابتدا به معرفی بورد STM32 و بررسی ویژگی‌های آن پرداخته و سپس روش راه اندازی یک LED چشمک زن از طریق این بورد و محیط آردوینو را بیان می‌کنیم.

مشخصات بورد توسعه ARM Cortex M3 STM32F103C8

  • STM : مخفف نام شرکت سازنده STMicroelectronic
  • ۳۲: بر اساس معماری ۳۲ بیتی ARM
  • F103: نشان دهنده‌ی معماری ARM Cortex M3
  • C: بیانگر تعداد ۴۸ پین
  • ۸ : ۶۴KB حافظه فلش
  • T: نوع پکیج LQFP
  • ۶ : دمای عملیاتی -۴۰ تا ۸۵ درجه سانتی‌گراد

سایرمشخصات میکروکنترلر:

  • معماری : آرم ۳۲ بیتی Cortex M3
  • ولتاژ کاری : ۲٫۷ ولت تا ۳٫۶ ولت
  • فرکانس پردازنده : ۷۲ مگاهرتز
  • تعداد پین های ورودی / خروجی : ۳۷
  • تعداد پین های PWM : 12
  • پین های ورودی آنالوگ : ۱۰ (۱۲ بیتی)
  • تعداد ورودی USART : 3
  • تعداد ورودی I2C : 2
  • تعداد ورودی SPI : 2
  • حافظه فلش :۶۴ کیلوبایت
  • حافظهRAM:بیست کیلوبایت

جهت دستیابی به اطلاعات بیشتر به دیتاشیت محصول مراجعه کنید.

تجهیزات مورد نیاز برای این پروژه شامل موارد زیر است:

چگونه STM32F103C8T6 را پروگرام کنیم؟

روش‌های زیادی برای پروگرام کردن تراشه‌های ARM از جمله STM32 وجود دارد. یکی از معروف و متداول روش‌ها استفاده از کامپایلر Keil ARM MDK است . همچنین کامپایلرهای دیگری نظیر IAR workbench , Atollic TrueStudio MicroC Pro ARM , Crossworks ARM , Ride 7 و … نیز قابل استفاده هستند. اما آنچه این بورد را محبوب کرده توانایی برنامه نویسی آن با کامپایلر آردوینو IDE است. به این ترتیب افرادی که با زبان برنامه نویسی و کتابخانه‌های آردوینو آشنایی داشته باشند می‌توانند توسط STM32 پروژه‌هایی را ایجاد کنند.

اتصالات STM32

برای پروگرام کردن STM32 توسط کامپایلر آردوینو IDE باید ازماژول مبدل USB به سریال FTDI استفاده کنیم. همانطور که در تصویر زیر می‌بینید این ماژول به پین‌های Rx و Tx بورد STM32 وصل شده است.

پین Vcc ماژول FTDI به پین  ۵V و پین GND آن به زمین بورد STM32 متصل شده است.  پین Rx و Tx از ماژول FTDI به ترتیب به پین A9 و A10  بورد متصل می شوند.

آماده سازی کامپایلر آردوینو IDE برای STM32

گام اول: آخرین نسخه‌ی Arduino IDE را توسط این لینک نصب کنید.

گام دوم: پس از نصب  آردوینو IDE پکیج‌های مورد نیاز برای بورد STM32 را دانلود کنید. مسیر File -> Preferences را دنبال کنید.

گام سوم: با  باز کردن  Preferences صفحه‌ی زیر نمایش داده خواهد شد. در قسمت additional Boards Manager URL لینک زیر را قرار داده و روی OK کلیک کنید.

http://dan.drown.org/stm32duino/package_STM32duino_index.json

گام چهارم: حال وارد مسیر Tool -> Boards -> Board Manager شده و “STM32F1” را جستجو کرده  و پکیج‌های آن را نصب کنید.

گام پنجم: بعد از اتمام نصب وارد Tools شده و بوردهای سری  Generic STM32F103 را پیدا کنید. روش پروگرام را به حالت Serial نیز تغییر دهید.

گام ششم: مبدل FTDI را به کامپیوتر متصل کرده و پورت COM آن را در مسیر زیر انتخاب کنید.

Tools->Port

 

گام هفتم: پس از اعمال این تغییرات گوشه سمت راست کامپایلر Arduino IDE را بررسی کنید که به صورت زیر باشد.

برنامه نویسی برد STM32 توسط کامپایلر آردوینو IDE

حال کامپایلر Arduino IDE برای پروگرام کردن برد STM32 آماده است. برای دیدن پروژه راه اندازی LED چشمک زن وارد این لینک شوید.