برخلاف برد شناخته شده آردوینو UNO، ماژول Blue Pin مبتنی بر میکروکنترلر آرم STM32F103C8 یک برد توسعه میکروکنترلر 32 بیتی آرم Cortex-M3 با کارایی بالا است که در حداکثر فرکانس کاری 72 مگاهرتز کار می کند. همانطور که میدانید برد Arduino UNO در پروژههای پیچیدهتر محدودیتهایی دارد زیرا پینهای ورودی/خروجی محدود، ADC با وضوح پایین، سرعت پایینتر PWM و پینهای اینتراپت کمتری دارد. با استفاده از این برد Blue Pin می توان بر این محدودیت ها غلبه کرد. این ماژول دارای پایه های ورودی/خروجی بیشتر، ADC های 12 بیتی، پایه های اینتراپت خارجی بیشتر، سرعت PWM بالاتر و بسیاری ویژگی های دیگر است. برد Blue Pill دارای بیش از یک پورت I2C، UART و SPI است که به برقراری ارتباط با سایر دستگاه ها بسیار سریعتر از برد Arduino UNO کمک می کند. دارای تعداد زیادی پین ورودی/خروجی است که اتصال سنسورها، ماژولها و سایر قطعات الکترونیکی بیشتری را به برد آسانتر میکند. برای برنامه ریزی برد Blue Pill از نرم افزار Arduino IDE می توانیم استفاده کنیم و از همان مجموعه دستورالعمل های برنامه نویسی برد Arduino UNO استفاده کنیم.
مشخصات برد Blue Pill
نام میکروکنترلر: STM32F103C8T6
حداکثر فرکانس: 72 مگاهرتز
حافظه فلش: 64 یا 128 کیلوبایت
SRAM : بیست کیلوبایت
ولتاژ ورودی: 2-3.3ولت DC
16 کانال ADC
پورت ورودی/خروجی: 37
تایمر: 7
دو پورت I2C
سه پورت UART
دو پورت SPI
رابط CAN
کاربردهای Blue Pill
رباتیک و اتوماسیون
توسعه سنسورها
نمونه سازی سریع
محصولات مصرفی
Blue Pill در مقابل آردوینو UNO
مشخصات | Blue Pill | Arduino UNO |
پردازنده | STM32F103C8T6 | Atmega328P |
معماری | ARM Cortex-M3 32-bit RISC | AVR 8-bit RISC |
فرکانس کاری | 72MHz | 16MHz |
ولتاژ کاری | 5V DC | 3.3V DC |
پورت UART | 3 | 1 |
پورت SPI | 2 | 1 |
پورت I2C | 2 | 1 |
پایه های ورودی/خروجی دیجیتال | 37 | 14 |
پایه های انالوگ | 10 | 8 |
عناصر روی برد Blue Pin
STM32F103C8T6: این آی سی میکروکنترلر اصلی است که توسط برد Blue Pill استفاده می شود.
کانکتور MicroUSB: برای اتصال برد به لپ تاپ استفاده می شود.
دکمه ریست: برای تنظیم مجدد برد استفاده می شود.
کریستال 8 مگاهرتز: این کریستال توسط میکروکنترلر اصلی STM32 استفاده می شود.
نوسان ساز 32.768 کیلوهرتز: این نوسان ساز برای ساعت واقعی (RTC) است.
LED وضعیت پاور: این LED برای نشان دادن روشن بودن پاور استفاده می شود.
LED داخلی: این LED به پین PC13 (مطابق با ماژول آردوینو) متصل می شود.
انتخابگر BOOT: این پین ها برای انتخاب بین BOOT1 و BOOT0 استفاده می شوند. برای BOOT0 جامپرها را به پایه های بالایی و برای انتخاب BOOT1، جامپرها را به پایه های پایین وصل کنید. اگر BOOT0 انتخاب شده باشد، وقتی برد را ریست میکنید یا به برد برق میدهید، کد روی برد ذخیره میشود. اگر BOOT1 انتخاب شده باشد، وقتی برد را ریست می کنید یا به برد برق می دهید، برنامه قبلی ذخیره شده روی برد پاک می شود.
رابط SWD: برای برنامه نویسی و اشکال زدایی با استفاده از ST-Link استفاده می شود
پیکربندی پین برد Blue Pin
شماره پایه | پایه های برد | پایه های آردوینو | دیگر پایه های مورد استفاده | پایه های PWM | پایه های ADC |
1 | PB12 | 28 | SS2 | ||
2 | PB13 | 29 | SCK2 | ||
3 | PB14 | 30 | MISO2 | ||
4 | PB15 | 31 | MOSI2 | ||
5 | PA8 | 8 | PWM | ||
6 | PA9 | 9 | TX1 | PWM | |
7 | PA10 | 10 | TX2 | PWM | |
8 | PA11 | 11 | USB- | ||
9 | PA12 | 12 | USB+ | ||
10 | PA15 | 15 | |||
11 | PB3 | 19 | |||
12 | PB4 | 20 | |||
13 | PB5 | 21 | |||
14 | PB6 | 22 | SCL1 | PWM | |
15 | PB7 | 23 | SDA2 | PWM | |
16 | PB8 | 24 | PWM | ||
17 | PB9 | 25 | PWM | ||
18 | 5V | ||||
19 | GND | ||||
20 | 3.3V | ||||
21 | VBAT | ||||
22 | PC13 | 32 | LED | ||
23 | PC14 | 33 | |||
24 | PC15 | 34 | |||
25 | PA0 | 0 | PWM | ADC0 | |
26 | PA1 | 1 | PWM | ADC1 | |
27 | PA2 | 2 | TX2 | PWM | ADC2 |
28 | PA3 | 3 | RX2 | PWM | ADC3 |
29 | PA4 | 4 | SS1 | ADC4 | |
30 | PA5 | 5 | SCK1 | ADC5 | |
31 | PA6 | 6 | MISO1 | PWM | ADC6 |
32 | PA7 | 7 | MOSI1 | PWM | ADC7 |
33 | PB0 | 16 | PWM | ADC8 | |
34 | PB1 | 17 | PWM | ADC9 | |
35 | PB10 | 26 | TX3/ SDA2 | ||
36 | PB11 | 27 | RX3/ SCL2 | ||
37 | RESET | ||||
38 | 3.3V | ||||
39 | GND | ||||
40 | GND |
41 | 3.3V | |||||
42 | PA13 | 34 | JTMS/ SWDIO | |||
43 | PA14 | 37 | JTCK/ SWCLK | |||
44 | GND | |||||
45 | GND | |||||
46 | PB2 | 18 | BOOT1 | |||
47 | 3.3V | |||||
48 | 3.3v | |||||
49 | BOOT0 | |||||
50 | GND |
نکته مهم: هنگام نوشتن کد آردوینو، از شماره پایه ذکر شده در ستون پایه های آردوینو در جدول بالا استفاده میکنیم.
برنامه نویسی برد Blue Pill با Arduino IDE
مرحله 1: برد Blue Pill را تهیه کنید.
مرحله 2: برد Blue Pill را با یک منبع تغذیه USB 5 ولت تغذیه کنید.
مرحله 3: مبدل USB به UART را همانطور که در شکل زیر نشان داده شده است وصل کنید.
مرحله 4: حالت 3.3 ولت را در USB به مبدل سریال با اتصال جامپرها همانطور که در شکل بالا نشان داده شده است انتخاب کنید.
مرحله 5: مبدل USB به UART را به لپ تاپ وصل کنید.
مرحله 6: نرم افزار ARDUINO را باز کنید
مرحله 7: روی گزینه file کلیک کنید
مرحله 8: روی Preferences کلیک کنید
مرحله 9: لینک زیر را در additional board manager URLs قرار دهید: http://dan.drown.org/stm32duino/package_STM32duino_index.json
مرحله 10: روی OK کلیک کنید
مرحله 11: روی Tools کلیک کنید
مرحله 12: روی Board کلیک کنید
مرحله 13: روی Board manager کلیک کنید و مدتی صبر کنید
مرحله 14: به پایین بروید و STM32F1xx/GD32F1xx xx را پیدا کنید و سپس بر روی install کلیک کنید. مدتی صبر کنید تا برد دانلود شود.
مرحله 15: اگر پیام زیررا دریافت کردید، board manager را ببندید
مطمئن شوید که برد Blue Pill شما با کمک مبدل USB به UART به لپ تاپ متصل است. اکنون، اولین کد چشمک زن LED خود را روی برد آپلود می کنیم. این کد را در Arduino IDE قرار دهید. همانطور که در شکل نشان داده شده است یک LED را به پایه A6 برد وصل کنید. از نظر پین های نگاشت شده آردوینو، پین A6 برد بلو پیل پایه D6 در آردوینو است، برای این کار می توانید به جدول تنظیمات پایه مراجعه کنید. هنگام نوشتن کد خود برای برد Blue Pill، فقط باید از شماره پین مطابق با پین های نقشه برداری شده آردوینو استفاده کنید. تمامی دستورات یکسان هستند.
()void setup
}
;pinMode(6,OUTPUT)
{
()void loop
}
;digitalWrite(6,HIGH)
;delay(1000)
;digitalWrite(6,LOW)
;delay(1000)
{
شکل مدار برای اتصال LED به برد Blue Pill
برای آپلود کد در برد Blue Pill مراحل زیر را دنبال کنید.
مرحله 1: روی Tools کلیک کنید و سپس روی Board کلیک کنید
مرحله2: برد STM32F1 را انتخاب کنید
مرحله3: روی سری STM32F103C کلیک کنید.
مرحله4: پورت را انتخاب کنید.
مرحله 5: روی دکمه آپلود کلیک کنید و پس از آپلود LED شروع به چشمک زدن می کند.
دیدگاه خود را بنویسید