こんにちは、NABEです。
前回は開発環境構築を前に、開発環境とは何かを勉強しました。
今回は実際にトレーニングトレーサーの開発環境を構築していきます。
マニュアルではMacOS、Ubuntu、Windowsの3種類に対応しています。
私はWindowsを使って行います。
Arduino IDEの準備
Arduino IDEをインストール
開発に使うノートPCへ、統合開発環境のArduino IDEをインストールします。
Arduino IDEについて詳しくは前回のブログをご覧ください。
まずはArduinoのホームページからMicrosoft Storeにアクセスしてダウンロードします。
バージョンは1.8.13でした。
ダウンロードは無料ですが、途中で「CONTRIBUTE & DOWNLOAD」を選択すると、開発者へ募金することができます。
ダウンロード後、起動するとスケッチ画面が表示されます。
Arduinoではプログラミングのことを「スケッチ」と呼びます。
Nucleoを扱えるようにする
Arduino IDEはArduinoボード以外に様々なマイコンボードと互換性がありますが、トレーニングトレーサーに搭載されているNucleoを使えるようにするには追加パッケージをインストールする必要があります。
ファイル→環境設定から「追加のボードマネージャのURL」欄に下記URLを入力するとインストールできるようになります。
https://raw.githubusercontent.com/stm32duino/BoardManagerFiles/master/STM32/package_stm_index.json
追加パッケージのURLはGitHub※で公開されています。
※Gitというツールを活用して開発者を支援するWebサービス
トレーニングトレーサーのマニュアルにもURLが書いてあるので、コピー&ペーストするだけですぐできました。
Arduinoを再起動してボードマネージャーを起動したら、今回使用するマイコン「STM32」に対応したパッケージをDLします。
トレーニングトレーサーのマイコンボード「Nucleo F303K8」が選べるようになりました!
書き込みツールの準備
STM32_Programmer_CLIをインストール
Arduino IDEで書いたプログラムを実際にNecleoボードに書き込むためにはSTM32_Programmer_CLIというソフトが別途必要になります。
STM32_Programmer_CLIは、Necleoボードを開発しているSTマイクロエレクトロニクス社(以下、ST社)が開発者向けに提供しているソフトです。
今回はSTM32_Programmer_CLIが同梱されているSTM32CubeProgrammerというソフトをインストールします。
ST社の開発者向けダウンロードページからダウンロードします。
会員登録(無料)が必須なのですが、すべて英語のページなのでちょっと苦戦しました。
また、STM32CubeProgrammerにはJavaのダウンロードも必須です。
PCに入っていない場合は案内が出るのでそれに従ってダウンロードします。
デバイスドライバの更新確認
デバイスドライバとは、OSからハードウェアを制御・操作するための橋渡しを行うソフトウェアです。
例えば、プリンタを使うときはそのプリンタ用のデバイスドライバがありますよね。
トレーニングトレーサーとPCを繋げるときにも同じようにデバイスドライバが必要となります。
Necleoボードには、書き込みを行うためにST-Linkというライタ兼デバッガが搭載されています。
PCからNecleoボードに接続するときの玄関口のような役割をします。
ST-Linkがどのようなものか気になる方は、のりさんの書いていた記事がとても参考になったので見てみてください。

さて、今回必要なのはこのST-Linkに接続するためのデバイスドライバです。
実際にPCとNecleoボードを接続して、デバイスドライバが自動的に更新されているか確認していきます。
もし、更新されていなかった場合は自分でST社からダウンロードして更新します。
ボードのUSBmicroBコネクタにケーブルを接続します。
こういうケーブルを挿したり抜いたりするとき、どこか折ってしまわないかと思っていつもおっかなびっくりやっています。
接続したらPCのデバイスマネージャーを開いて、デバイスがどのように認識されているか確認します。
ポートに「STMicroelectronics STLink Virtual COM Port」
ユニバーサルシリアルデバイスに「ST-Link Debug」
と表示されていた場合は自動で更新されているので問題ありません。確認完了です。
もし、ほかのデバイスまたは不明なデバイスの欄に「ST-Link Debug」が表示され、警告マークがついていた場合はST社のダウンロードページからデバイスドライバをダウンロードして、手動で更新します。
開発環境の構築完了!
ここまで行ったことをまとめます。
・開発に使用するArduino IDEをダウンロード
・Arduino IDE単体ではNecleoボードに書き込みが出来ないため、書き込み用ソフトのSTM32_Programmer_CLIをダウンロード
・PCがNecleoボードのST-Linkを認識して書き込みができるか、デバイスドライバを確認

イメージ
以上で開発環境の構築が終わりました。
実際にトレーニングトレーサーを動かすときには、Arduino IDEの操作によって書き込みまでを自動で行うので、STM32_Programmer_CLIやデバイスドライバに対して何かをする必要はありません。
見えないところで頑張ってくれるというわけです。
次回はいよいよ、PCとトレーニングトレーサーを繋げます!
Lチカが出来る予感。
Part.6へつづく