そんなわけで今回よりSTM32F4-Discoveryを使って遊んでみることにしたい。さて、まずはともかくマニュアルを入手からである。STMicroのSTM32F4-DiscoveryページにマニュアルやサンプルのFirmware(ArduinoではSketchと呼んだ、STM32F4用のプログラムの事)が落ちているので、まずはここから"UM1467: Getting started with software and firmware environments for the STM32F4DISCOVERY Kit"をダウンロードしてみて見ることにする(PDFファイル)。中身は恐ろしく簡単で、あと残念ながら英語のみであるが、難しい英語ではないのでチャレンジしていただければと思う。

で、最初にやることであるが、まずは2章のGetting starded(「さぁ始めよう」)から行きたい。用意するものは、STM32F4-Discovery本体とPC、それとStandard-A/Mini-BタイプのUSBケーブル(これは本体に同梱されていないので、別途用意する必要がある)だけで良い。4/46ページの写真には、他にイヤホンとStandard-A/Micro-Bタイプのケーブルも出てくるが、こちらは当面必要がないので後でいい。

さて、2.2章のRunning the built-in demonstrationの手順に従って、まずはSTM32F4-Discoveryの動作確認である。

(1) JP1ジャンパがOn(ショートされている)な事を確認(Photo01)。
(2) CN3ジャンパが2本ともOn(ショートされている)な事を確認(Photo02)。
(3) Mini USBコネクタを本体に挿し(Photo03)、Standard-AをPC本体のUSB端子に挿す(Photo04)。

Photo01: JP1は青いスイッチの上側に位置する。

Photo02: CN3はちょっと迷ったが、JP1の斜め上あたりに2つ並んでいるもの。これをOnにすると、オンボードのST-Linkが有効になり、Mini-USB経由での接続が可能になる。逆にこのピンをはずした場合、CN3の反対側の端にあるSWDコネクタ経由で外部のST-Linkをつなぐ形になる。

Photo03: このUSBはそんなわけで、オンボードのST-Linkにつなぐ形になる。この際に同時に電源供給がなされるので、システムが動くという訳。

Photo04: STLinkのドライバをインストールしていないのでこんなメッセージが出るが、今はまだ無視してよい。

問題がなければ、以上の手順でLEDの点滅が始まる筈だ(Movie01)。ここで問題があれば、USB端子の問題か、もしくはボードの初期不良ということになる。ただ可能性として、変なFirmwareが入っている可能性もあるので、この後で説明する手順で一度Firmwareの更新を行ってみて、それでも動きがおかしいという話であれば、販売店に交換なり新しいSTM32F4-Discoveryを入手なりという手順をとる事になるだろう。(余談ながら筆者だと交換の手間が面倒なので、多分新しいSTM32F4-Discoveryを買いに走ると思う)。

動画
Movie01:

さて、セルフテストが終わったらもう少し別のFirmwareを試してみるという手順になる。先のページの下のほうに、"Software & Development Tools"というエリアがあり、ここに22のサンプルを収めたfirmware packageがZIPの形で置かれている筈だ(この原稿執筆時点でのバージョンは1.1.0)。これをダウンロードして展開すれば色々なFirmwareが試せる...筈なのだが、話はそう簡単ではない。

STM32F4-Discoveryに関して、STMicroelectronics自身は実は直接的には開発ツール類を一切提供していない。その代わり(先のPDFのChapter 5に説明があるが)4種類の統合開発ツールがこのSTM32F4-Discoveryをサポートしている。

・IAR Embedded Workbench

フィンランドIAR社の提供する、組み込み業界では非常に代表的な統合開発環境。とりあえず手軽に使えるものとしては、30日無償で利用可能の評価版と、Kickstart editionと呼ばれる機能限定の無償版がある。評価版の方はフルパッケージだが、30日を越えて使う場合は正式版のライセンスを購入する必要がある。この正式版の価格は「お問い合わせください」ということでWebには掲載されていないのだが、LPC Tools LLC.という通販サイトでは256KB版が$3544、無制限バージョンが$6249となっており、ちょっと個人で買える金額ではない。

一方のKickstart editionの場合、

・プログラムサイズが32KB以内に制限される。
・MISRA C(MISRAという組織が開発したソフトウェア設計の標準規格)の対応はない。
・Power debug(IARの提供するJTAGプローブを使って消費電力を測定する仕組み。パフォーマンスプロファイラなどとの連動も可能)が出来ない。
・ラインタイムライブラリのソースコードは付いてこない(ランタイムのデバッグは事実上不可能)。

という制約はあるが、それ以外は正規版となんら変わりが無い。利用期間も事実上無制限(入手したところ、2037年まで有効なライセンスが発行された。まぁ25年使えれば十分だろう)である。入手は"KickStart edition of IAR Embedded Workbench for ARM"ページから行える(ユーザー情報の登録は必要)。

(続く)