Help us understand the problem. What is going on with this article?

Blue Pill(STM32F103ボード) を mbed 開発環境でLチカしてみる

More than 1 year has passed since last update.

Blue Pill + mbed

格安のSTM32F103ボードである Blue Pill。

Arduino 開発環境で作るのがカンタンだけど、mbed 環境でも開発できる。

mbed 開発環境に Blue Pill は勿論登録されていないけれども、ほぼ同じチップを使った Nucreo F103RBを使うことができる。
image

Nucreo F103RB はマイコンチップとしてSTM32F103RB を使っている。
Blue Pill はマイコンチップとしてSTM32F103C8T6を使っている。
違いはこんなところ。

MCU GPIO package Flash ADC
STM32F103RB LQFP64,TFBGA64 51 128KB 15~16
STM32F103C8T6 LQFP48,UFQFPN48 37 64KB 10

主にFlashが128KBと64KBの違いだけれど、実はBluePillのチップはFlashが128KB入っていたりする。

mbedでLチカ

まず、サンプルプログラム Nucreo_blink_ledを呼び出す。
ここでは、Nucreo_blink_led_BluePillと名前をつけました。

image

NucreoのLEDは、PA_5につながっているらしいです。BluePillではPC_13なのでそれを書き換えます。

image

「コンパイル」ボタンを押すとバイナリがダウンロードされます。

書込

ここで、Nucleo の場合はPCにボードを繋ぐと出現するUSBストレージにバイナリファイルをコピペします。

しかしながらBluePillにはそういった機能は無いので、ST-LinkやUSBシリアルアダプタを使って書き込むことになります。

ここではUSBシリアルを使ってみます。

配線

今回はBluePillのバリエーションの、RobotDynのボードと秋月電子の「FT232RQ USBシリアル変換キット」 を使いました。

IMG_20170929_132248.jpg

本家BluePillの場合はこちらを参照
https://qiita.com/nanbuwks/items/ba37f049f45378da0e2b

stm32flash

書込ソフトとして、stm32flashツールを使います。ここでは、Arduino_STM32をインストールした時にインストールしたものを使いました。

$ cd Arduino
$ cd hardware/Arduino_STM32-master/tools/linux64/stm32flash/
$ ./stm32flash -w ~/Downloads/Nucleo_blink_led_BluePill_NUCLEO_F103RB.bin -v -
g 0x0 /dev/ttyUSB0
stm32flash Arduino_STM32_0.9

http://github.com/rogerclarkmelbourne/arduino_stm32

Using Parser : Raw BINARY
Interface serial_posix: 57600 8E1
Version      : 0x22
Option 1     : 0x00
Option 2     : 0x00
Device ID    : 0x0410 (Medium-density)
- RAM        : 20KiB  (512b reserved by bootloader)
- Flash      : 128KiB (sector size: 4x1024)
- Option RAM : 16b
- System RAM : 2KiB
Write to memory
Erasing memory
Wrote and verified address 0x08004d40 (100.00%) Done.

Starting execution at address 0x08000000... done.

$

コレで書けました。

注意点

上記のプログラムを実行してみたら、LEDの1と0が逆になっているみたいでした。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away