در این پست از سایت اِمیک, یک پست آموزشی با عنوان آشنایی با مینی هدر برد STM32F103C8T6 Blue Pill قرار داده شده است. اگر با میکروکنترلرهای سری STM32 آشنا باشید، احتمالاً نام Blue Pill یا همان مینی هدر برد STM32F103C8T6 به گوشتان خورده است. این برد یکی از پرطرفدارترین بردهای مبتنی بر میکروکنترلر STM32 است که به دلیل قیمت مناسب، قابلیتهای بالا و سازگاری با ابزارهای توسعه مختلف، جایگاه ویژهای در بین علاقهمندان به الکترونیک پیدا کرده است.
در این پست میخواهیم به طور کامل با این برد آشنا شویم، ویژگیها و امکانات آن را بررسی کنیم و ببینیم چطور میتوان از آن در پروژههای مختلف استفاده کرد.
معرفی کلی برد Blue Pill
برد STM32F103C8T6 Blue Pill یک مینی هدر برد است که بر پایه میکروکنترلر STM32F103C8T6 از خانوادهی ARM Cortex-M3 طراحی شده است. این میکروکنترلر محصول شرکت STMicroelectronics بوده و در پروژههای کنترل صنعتی، سیستم های تعبیه شده یا سیستم های نهفته (Embedded Systems) و حتی کاربردهای آموزشی مورد استفاده قرار میگیرد. قبلا یک پست با عنوان “آشنایی با میکروکنترلر STM32F103C8T6” در سایت منتشر کرده بودم که می توانید ان پست را نیز مطالعه کنید.

نام «Blue Pill» در واقع از رنگ آبی برد گرفته شده است. این برد ابعادی کوچک (تقریباً ۵۲×۲۳ میلی متر) دارد و برای استفاده روی بردبورد بسیار مناسب است.
ویژگیهای اصلی برد STM32F103C8T6 Blue Pill
برد Blue Pill از نظر سخت افزاری در ردهی بسیار خوبی قرار دارد. در جدول زیر خلاصهای از ویژگی های کلیدی آن را مشاهده میکنید:
| ویژگی | توضیحات |
|---|---|
| میکروکنترلر | STM32F103C8T6 (هسته ARM Cortex-M3، سرعت تا 72MHz) |
| حافظه فلش (Flash) | 64KB |
| حافظه RAM | 20KB |
| ولتاژ کاری | 3.3 ولت (برخی پینها تحمل ۵ ولت دارند) |
| تعداد پینهای GPIO | حدود ۳۷ عدد |
| تعداد کانالهای ADC | ۱۰ کانال با دقت ۱۲ بیت |
| رابط های ارتباطی | USART، SPI، I²C، USB، CAN |
| تایمرها | چند تایمر ۱۶ بیتی و ۳۲ بیتی |
| کریستالها | ۸ مگاهرتز (اصلی) و ۳۲.۷۶۸ کیلوهرتز (RTC) |
| ابعاد برد | ۵۲ × ۲۳ میلیمتر |
برد از طریق پورت USB Mini-B تغذیه میشود و دارای رگولاتور داخلی AMS1117-3.3V است که ولتاژ ۵ ولت ورودی را به ۳.۳ ولت تبدیل میکند. همچنین میتوان آن را از طریق پین های ۵V یا ۳.۳V نیز تغذیه کرد.
پینها و اتصالات برد STM32F103C8T6 Blue Pill
برد Blue Pill دارای دو ردیف ۲۰ تایی پین در طرفین است که تقریباً تمام پایه های میکروکنترلر را در دسترس قرار میدهد. این چینش باعث میشود بتوان آن را به راحتی روی بردبورد استفاده کرد.
پینهای تغذیه و کنترل
| پین | توضیح |
|---|---|
| 5V | ورودی ۵ ولت (از USB یا منبع خارجی) |
| 3.3V | تغذیه خروجی یا ورودی ۳.۳ ولت |
| GND | زمین (Ground) |
| VBAT | تغذیه مخصوص RTC |
| RESET | ریست کردن میکروکنترلر |
| BOOT0 / BOOT1 | برای انتخاب حالت بوت |
جامپرهای BOOT0 و BOOT1
برد دو جامپر BOOT0 و BOOT1 دارد که منبع بوت را مشخص میکنند:
| BOOT1 | BOOT0 | حالت بوت | توضیح |
|---|---|---|---|
| 0 | 0 | Flash Memory | اجرای برنامه اصلی (حالت معمولی) |
| 0 | 1 | System Memory | ورود به Bootloader داخلی برای پروگرام از طریق USB/UART |
| 1 | 0 | SRAM | بوت از حافظه RAM |
| 1 | 1 | رزرو | استفاده نمیشود |
برای کار عادی، هر دو جامپر روی ۰ باشند. برای پروگرام از بوت لودر، فقط BOOT0 را روی ۱ بگذارید، بعد از آپلود دوباره به ۰ برگردانید.
پینهای ارتباطی
| رابط | پینها | توضیح |
|---|---|---|
| USART1 | PA9 (TX), PA10 (RX) | ارتباط سریال اصلی |
| USART2 | PA2 (TX), PA3 (RX) | پورت سریال دوم |
| SPI1 | PA5, PA6, PA7 | ارتباط با ماژولها و سنسورها |
| I²C1 | PB6 (SCL), PB7 (SDA) | ارتباط با سنسور و LCD |
| USB | PA11 (DM), PA12 (DP) | ارتباط با رایانه |
| CAN | PA11 (RX), PA12 (TX) | برای شبکه صنعتی CAN Bus |
ورودیهای آنالوگ و PWM
- ۱۰ کانال ADC با دقت ۱۲ بیت روی پایههای PA0 تا PA7 و PB0، PB1
- تایمرهای چندگانه با قابلیت PWM در پایه های مختلف (برای کنترل موتور و LED RGB)
سایر بخشها
- LED آبی روی پین PC13 برای تست یا نمایش وضعیت
- کلید Reset برای راهاندازی مجدد
- پورت SWD برای اتصال پروگرامر ST-Link
- پورت Mini-USB برای تغذیه و ارتباط با کامپیوتر
نحوهی پروگرام کردن برد Blue Pill
پروگرام کردن برد Blue Pill به روش های مختلفی انجام میشود. بسته به ابزار موجود، میتوانید یکی از روش های زیر را انتخاب کنید:
۱. از طریق USB (در صورت داشتن Bootloader)
در برخی نسخهها بوت لودر USB نصب است و میتوان فقط با کابل USB برنامه را آپلود کرد.
کافی است:
- جامپر BOOT0 را روی ۱ بگذارید،
- برد را به کامپیوتر وصل کنید،
- با نرمافزار STM32CubeProgrammer یا Flash Loader فایل برنامه را بریزید،
- سپس BOOT0 را به ۰ برگردانید و برد را ریست کنید.
۲. از طریق پروگرامر ST-Link
پایدارترین و حرفهای ترین روش است.
پینهای SWDIO و SWCLK را به پروگرامر ST-Link وصل کنید و از نرمافزار STM32CubeProgrammer یا Keil uVision برای آپلود استفاده کنید.
این روش امکان دیباگ (Debug) کردن را نیز فراهم میکند.
۳. از طریق مبدل USB به سریال (UART)
با استفاده از مبدل USB-to-Serial میتوانید از طریق پین های PA9 (TX) و PA10 (RX) برد را پروگرام کنید.
در این حالت، جامپر BOOT0 باید روی ۱ باشد.
پس از آپلود، آن را به ۰ برگردانید.
۴. از طریق Arduino IDE
برای پروژه های ساده تر، میتوانید Blue Pill را مثل بردهای آردوینو برنامه نویسی کنید.
کافی است بستهی STM32 را در Boards Manager نصب کرده و روش آپلود را روی STM32CubeProgrammer (SWD) یا USB تنظیم کنید.
کدنویسی دقیقاً مشابه آردوینو است.
مزایا و معایب برد Blue Pill
مزایا:
- قیمت پایین و عملکرد بالا
- پردازنده ۳۲ بیتی و سرعت زیاد
- امکانات کامل ارتباطی
- سازگار با ابزارهای مختلف (STM32CubeIDE، Keil، Arduino IDE)
- مصرف توان پایین
معایب:
- نیاز به دقت در تنظیم Bootloader
- حساس تر از بردهای آردوینو نسبت به نوسان ولتاژ
- ولتاژ کاری ۳.۳ ولت (عدم سازگاری مستقیم با همه ماژول های ۵ ولتی)
جمع بندی
برد STM32F103C8T6 Blue Pill یکی از بهترین انتخاب ها برای ورود به دنیای میکروکنترلرهای ARM است.
با امکاناتی مانند پورت USB، تایمرهای قدرتمند، ADC دقیق و رابط های متنوع، این برد میتواند پایهی بسیاری از پروژههای آموزشی، صنعتی و تحقیقاتی باشد.
اگر قبلاً با آردوینو کار کردهاید، Blue Pill یک گام منطقی و جذاب برای یادگیری میکروکنترلرهای حرفهای تر است.
نظر یادتون نره…




