1 AliExpress でBlack Pill 購入
2 arduino ide1.8.5をダウンロード
ちなみに元々使ってた1.6.X系だとコンパイルができなかった。
ツール → ボード → Board Manager を選択して、
Arduino SAM Boards (32-bits ARM Coretex-M3) by Arduino を選択してインストールします。
3 ブートローダーの書き込み
↓を参考に
ARM ボード STM32F103C8T6 (Black Pill) で L チカ - JH1LHVの雑記帳
ジャンパ設定をブートローダ書き込み用にする
rs232のシリアルモジュールとblack pillを接続
black pill | USB シリアル |
---|---|
RX | PA9 |
TX | PA10 |
GND | G |
3.3V | V3 |
stのflash loader demonstratorインストール
ダウンロードにはstのアカウントが必要。
flash loader demonstratorからの書き込み
シリアルをつないで一度リセットボタンを押さないと
flash loader demonstratorが認識してくれなかったので気を付ける。
次に進む
page0 0x8000000を選ぶ
black pill用としてgeneric_boot20_pb12.binをつかった。 gitbubのファイルの中にある。
4 githubから環境ダウンロード
https://github.com/rogerclarkmelbourne/Arduino_STM32
↓のinstall のwindowsの項目に従ってやればよい。
Installation · rogerclarkmelbourne/Arduino_STM32 Wiki · GitHub
コンパイル環境
コンパイル環境はフォルダ丸ごと
*\arduino-1.8.5\hardware 以下にコピーする。
たとえば、C:\arduino-1.8.5\hardware\Arduino_STM32-master
デバイスドライバ
デバイスドライバはarduino ideから書き込み前にインストールしてないといけない。
navigate to the folder: /drivers/win/ and run: install_drivers.bat.を実行する。
インストールしてないと、以下のエラーメッセージがでて書き込みが失敗する。
Couldn't find the DFU device: [1EAF:0003]
5 arduino IDEからプログラム書き込み
ジャンパ設定をarduino動作用にする
PCとmicro USB接続する
ブートローダ書き込み時はuart接続しないといけないが、 arduinoとして使うときはUSBから接続できる。
ArduinoIDEのボード設定をする。
↑のとおりボード設定をする。
プログラムを用意する。
void setup() { // put your setup code here, to run once: pinMode(PB12, OUTPUT); } void loop() { // put your main code here, to run repeatedly: digitalWrite(PB12, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(PB12, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
LEDのポートはPB12にする。
書き込み完了!!
参考リンク
ARM ボード STM32F103C8T6 (Black Pill) で L チカ - JH1LHVの雑記帳 SMT32F103を使ってみる STM32F103 Black Pill - STM32duino wiki