「Arduino IDE」はArduinoでの統合開発環境として、スケッチをプログラミングする時にお世話になっている方も多いと思います。
しかし、まあ、使いにくい・・・
コード量が増えていくと何を書いているのか分からなくなります・・・
できれば普段使っているようなエディターでコードは書きたいところです。
そこで、
Microsoftが作っている拡張機能『Visual Studio Code Extension for Arduino』を使って、
Visual Studio Codeでスケッチを書けるようにしました。
先日、オープンソース化されましたね!
https://blogs.msdn.microsoft.com/iotdev/2017/07/06/visual-studio-code-extension-for-arduino-is-now-open-sourced/
https://github.com/Microsoft/vscode-arduino
インストール
Arduino IDEをインストールする
「Arduino IDEは使わないって言ったじゃないか!」と思うかもしれませんが、
内部的にはArduino IDEの機能が使われています。もし持っていなければダウンロードしてください。
『Visual Studio Code Extension for Arduino』をインストールする
Visual Studio Codeを開き、拡張機能からArduino
と検索しExtensionをインストールします。
Microsoftのvscode-arduino
となっているやつ
簡単な使い方
基本的に command + shift + P
でコマンドパレットを開き実行します。
Arduinoと検索すると、拡張機能のコマンドが増えているはず
サンプルコードを開いてみる
試しに Arduino: Examples
を開いてみると、Arduino IDEに入ってたいつものサンプルコード達が表示されます。
Build-In Examples/01.Basics/Blink
を選択
開くとこんな感じ、Lチカサンプルです。
ボードを選択
右下のステータスバーにある<Select Board Type>
と書かれている部分
もしくは command + shift + P
=> Arduino: Board Config
からマイコンボードの選択画面が開きますので、使用するボードを選択します。
シリアルポートを選択
右下のステータスバーにあるCOM1
と書かれている部分
もしくは command + shift + P
=> Arduino: Select a serial port
から通信に使用するシリアルポートを選択します。
Arduinoに書き込む
command + option + U
もしくは command + shift + P
=> Arduino: Upload
を実行すると、Arduinoへスケッチを書き込むことができます。
シリアル通信でデバッグ
Arduinoのデバッグにはシリアル通信でログを確認するのが一般的だと思います。
VS Codeだけでシリアル通信のやり取りも可能です。
ボーレートを設定
右下のステータスバーに書かれている数字の部分(初期値は9600でした)
もしくは command + shift + P
=> Arduino: Change Board Rate
でシリアル通信速度(ボーレート)を設定
コードの修正
先程のBlinkを少し修正して、シリアル通信のコードを書き加えました。
このコードを command + shift + P
=> Arduino: Upload
で再び書き込みます。
void setup() {
Serial.begin(9600);
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
Serial.println(1);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
Serial.println(0);
delay(1000);
}
Onだったら1
、Offだったら0
が交互に出力されるはず
シリアルモニターを表示
右下のステータスバーに書かれている電源のプラグみたいなアイコン
もしくは command + shift + P
=> Arduino: Open Serial Monitor
でシリアルモニターが表示されます。
接続中はアイコンが☓になっているので、クリックするとCloseされます。
設定ファイル
.vscode/json:arduino.json
の中に設定ファイルが出来上がっている。
{
"sketch": "Blink.ino",
"port": "/dev/cu.usbmodem1421",
"board": "arduino:avr:uno"
}
ここに設定が保存されているので、毎回設定し直す必要がなくて便利!
おわり
Verify
や Send Text to Serial Port
などもあり、Arduino IDEにある機能は一通り揃っているようです。
書き込みがワンクリックで出来ないのがちょっと不便ですが、概ね良い感じです。
Library Manager
はこっちの方が見やすい
ちなみにcommand + shift + P
は F1
でも開けます