Arduino UNO R4で始めるTOPPERS RTOS開発
Arduino UNO R4でマルチタスクを体験できるArduino_TOPPERS_ASP-renesas_uno
を試す手順を紹介しようと思います。
Arduinoの開発環境はいくつかありますが、まずはArduino IDE 2を使いWindows環境で説明します。
そのあと、Arduino CLIとVisual Studio Codeで同じ事を行ってみたいと思います。
Arduino IDE 2でスケッチ例の実行
Arduino IDE 2
をインストールします。この記事ではユーザーごとにインストールした場合で説明します。
Arduino IDE 2
が起動したら、Arduino UNO R4
向けの環境をボードマネージャからインストールします。
左側の白い領域の二番目のアイコンがボードマネージャで、これをクリックします。検索窓でR4
と入力するとArduino UNO R4
が表示されるので、インストールします。
Arduino UNO R4
をPCとUSB接続します。
上側の緑の領域にある「ボードを選択」をクリックして表示される一覧に「Arduino UNO R4」が現れるので選択します。
次にTOPPERS/ASP Arduino UNO R4 ライブラリ(TA2LIB)を下記のサイトからzip形式でダウンロードします。
https://github.com/toppers/Arduino_TOPPERS_ASP-renesas_uno
Arduino IDE 2
の画面のメニューから、「スケッチ」→「ライブラリをインクルード」→「ZIP形式のライブラリをインストール」を選択し、ダウンロードしたZIPファイルArduino_TOPPERS_ASP-renesas_uno-master.zip
を選択します。
用意されているスケッチ例を試してみます。メニューから「ファイル」→「スケッチ例」→「ToppersASP-renesas_uno」→「ToppersASP_Blink」を指定します。
コードが表示されたら、上側の緑の領域にある「→」アイコンの書き込みボタンを押して、ビルドと書き込みを行います。書き込みが終わったら、右上の虫眼鏡アイコンのシリアルモニタボタンを押します。
シリアルモニタに文字が流れ、Arduino UNO R4
のLEDが点滅すると思います。
これで、Arduino IDE 2
でスケッチ例の実行ができました。
Arduino CLIを使ってみる
Arduino IDE
は使いやすいのですが、Arduino以外にも組み込み開発スキルの幅を広げたいと思った方は、Arduino CLI
から入ってみるのはどうでしょう?
Arduino CLI
はArduino IDE
の機能をコマンドラインから使えるようにしたもので、コマンドを呼び出すビルドツールのMakefile
などから使えるようになります。Makefile
はTOPPERS OSのビルドでも使用しています。
コマンドラインでの開発方法を知ることは、他のコマンドとの組み合わせが出来るようになるので、知っていて損はないと思います。
開発にはコードの編集も必要なので、コマンドラインが使えるコードエディタVisual Studio Code
も使って、Arduino IDE
と同じ事をしてみたいと思います。
まず、Visual Studio Code
をインストールします。
作業用のフォルダを作成して、Visual Studio Code
でフォルダを開きます。この作業用のフォルダを以後ワークスペースと呼びます。
次に下記の拡張機能をインストールします。識別名で検索すると確実です。
-
Japanese Language Pack for Visual Studio Code:
識別名「
ms-ceintl.vscode-language-pack-ja
」Visual Studio Code
を日本語表示にします。必須ではありませんが、この記事では日本語の表示で説明していきます。
-
Serial Monitor:
識別名「
ms-vscode.vscode-serial-monitor
」Arduino UNO R4
とUSBシリアル通信を行うのに使用します。
-
C/C++:
識別名「
ms-vscode.cpptools
」C/C++全般の開発に使用します。この記事ではコードの編集は行わないのですが、ArduinoのスケッチはC++のコードになっているので、インストールしておきます。
次にARDUINO CLI
を使えるようにします。システムにインストールする必要がない実行ファイル一つで動作するものとなっているので、ワークスペースに置いて使うことにします。
下記のサイトからWindows exe 64bit
をダウンロードし、tools
フォルダを作成し、ダウンロードしたZIPファイルの中身を展開しておきます。
https://arduino.github.io/arduino-cli/0.35/installation/
Visual Studio Code
のターミナルでarduino-cli
が使えるように、ワークスペースの設定でtools
フォルダにPATH
を通します。
F1
キーを押して、「基本設定:ワークスペース設定を開く」を選択します。preferences
の途中まで入力すると表示されると思います。
「設定の検索」に「env」と入力して、Terminal > Integreted > Env: Windows
のsettings.jsonで設定
をクリックします。
開かれたファイルsettings.json
を下記のように編集します。
{
"terminal.integrated.env.windows": {
"PATH": "tools;${env:PATH}"
}
}
保存したらCtrl+@
を押してターミナルを開きます。arduino-cli
と入力すると実行されると思います。パスが通っていることが確認できました。
ここまでの操作で、このワークスペースでArduino IDE
が使える様になりました。Visual Studio Code
でこのフォルダを開けばarduino-cli
を使えます。
Arduino IDE 2
でインストールしたボードやライブラリと共有しているようなので、先ほどの操作で完了しているのですが、同じ操作を行うコマンド入力例を一通り書いておきます。
-
スケッチの作成
arduino-cli sketch new ToppersASP_Blink
新しく
ToppersASP_Blink
というフォルダと、その下にToppersASP_Blink.ino
ファイルが出来ます。 -
ボードのインストール
arduino-cli core install arduino:renesas_uno
-
ライブラリのインストール
TOPPERS/ASP Arduino UNO R4 ライブラリ(TA2LIB)を下記のサイトからzip形式でダウンロードします。
https://github.com/toppers/Arduino_TOPPERS_ASP-renesas_uno
次のコマンドでインストールします。
{/path/to/}
の所は書き換えてください。arduino-cli lib install --zip-path {/path/to/}Arduino_TOPPERS_ASP-renesas_uno-master.zip
-
ボードの一覧
arduino-cli board list
何も接続していないと、
No boards found.
と表示されます。
Arduino UNO R4
を接続していると、下記のように表示されます。シリアルポート Protocol タイプ Board Name FQBN Core COM3 serial Serial Port (USB) Arduino UNO R4 Minima arduino:renesas_uno:minima arduino:renesas_uno
-
スケッチ例のコピー
下記のコマンドでスケッチ例が表示されます。
arduino-cli lib examples
Examples for library ToppersASP-renesas_uno
を探してパスを覚えておき、中身をワークスペースのToppersASP_Blink
フォルダにコピーします。下記の
$env:USERPROFILE
はPowerShell向けで、コマンドプロンプトなら%USERPROFILE%
です。copy $env:USERPROFILE\Documents\Arduino\libraries\ToppersASP-renesas_uno\examples\ToppersASP_Blink\* ToppersASP_Blink
-
スケッチのコンパイル
arduino-cli compile -b arduino:renesas_uno:minima ToppersASP_Blink
-
ボードへのアップロード
下記の
COM3
の部分は、ボードの一覧で表示されたシリアルポートの値で書き換えてください。arduino-cli upload -b arduino:renesas_uno:minima -p COM3 ToppersASP_Blink
-
シリアルモニタの表示
Visual Studio Code
の「ターミナル」と同じ領域にある、別のタブ「シリアル モニター」に切り替えて、「Port」を変更し「Start Monitoring」を押します。
これで、IDEと同じ事ができました。
Makefile
について紹介しましたが、下記にArduino CLI
を使ったMakefile
がありましたので紹介します。
https://github.com/digiampietro/arduino-makefile
Windowsの標準状態ではMakefile
を使うことが出来ませんが、msysやWSLを使うことでMakefile
を使うことができ、Visual Studio Code
でも使うことが出来ますので、機会があったら記事を書きたいと思います。