通常の用途では、Arduino NANO などが安価で入手でき、すぐに使えるのだが、このボードを選択した理由は、12bit A/D と I/Oが欲しかったこと。
Arduino環境と言うのは、
・Arduino IDEでソフト開発ができる。
・プログラムの書き込みをUSB経由でできる。
ということ。一般的に、Arduinoのシリーズは、bootloader が書き込まれているが、この基板はそれがない。いろいろな書き込TOOLを使って、bootloader を書き込めば、以降は、USB経由で書き込み、デバッグができる。いくつかはまったりしたので、記録しておく。
使用したArduino IDE バージョンは Ver. 1.69 。
参考にしたページは
http://nuneno.cocolog-nifty.com/blog/2015/05/arduino-ide-164.html
Arduino のライブラリのダウンロード、インストールはここに
https://github.com/rogerclarkmelbourne/Arduino_STM32/wiki/Installation
bootloader 書き込みの手順はここにくわしい。
https://github.com/rogerclarkmelbourne/Arduino_STM32/wiki/stm32duino-bootloader
書き込みするバイナリファイルは、
https://github.com/rogerclarkmelbourne/STM32duino-bootloader/tree/master/STM32F1/binaries
の中から、「STM32 用のプログラマ ST-LINK V2 は持っていないので、シリアルでの書き込みとして、秋月の FT-232 USBシリアルボードを使う。
配線は、
FT-232USBシリアル <--> ST32ボード
TXD ------------------ PA10
RXD ------------------ PA9
当然ながら、電源+5V、GND も接続。
写真のように、BOOT0 の JUMPER をセットする。
Arduino_STM32 のフォルダの中に、stm32flash.exe があるので、DOS窓で起動して書き込む。フォルダや環境により、書き込むファイルの指定先、COMポートの番号ががちがうので、画像を参考に。
書き込みを終了して、BOOT0 のJUMPERを元にもどして、STM32ボードのUSBをPCに接続すると、デバイスドライバでは図のように、「 Maple DFU 」表示される。
Arduino IDE を図のように設定して、スケッチの書き込みを行うことができる。
なお、bootloader を書き込んだ直後には、シリアルポートは表示されない。
一度、スケッチの書き込みを行うと、デバイスドライバは変更されて、Maple Serial(COM )のポートとなる。
bootloader を書き込んで、スケッチを書き込んでも、USBポートのリセットがうまくいかなかったりなど、何らかの理由で、「 Maple DFU 」ままで、Maple Serial(COM )とならないことがある。
この状態になると、USBポートからの書き込みができなくなる。私の場合、再度、bootloader を書き込んで、OK となった。