【開発環境】Visual Studio Code上でArduino開発
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/1f25dc1b4c972d14c4c400a47db5c1ee-1.png)
Arduinoについて
- Arduinoってなに?
-
『AVRマイコンを搭載したオープンソースハードウェアのマイコンボード』とネット上で説明がありますが、それだけじゃ正直よくわかりませんよね。
要は『誰でも簡単に安価にプログラミングができて、やる気があればそのマイコンボードを自作できるだけの情報が無料公開されてるマイコンボード』です。
Arduinoには専用の統合開発環境(IDE)が用意されており、コーディング・ビルド・ボードへのプログラム転送をこれ一つで完結できます。
- Arduinoでなにができるの?
-
Arduinoでは、例えば照度センサで明るさを測定して明るさによってライトの明度を制御する、というように、『何か』のデータをArduinoに入れ、それに応じて『何か』を制御することができます。この『何か』はセンサだったりモーターだったり……つまり可能性は無限大ということです!!
- 無料で使えるの?
-
Arduino自体は買うことになりますが、例えば開発環境などボード以外は無料で使うことができます。なお、2024年5月現在、代表的なものとして以下がラインナップされていますが、それぞれをちょっと高機能にした亜種のようなものも販売されているのでチェックしてみてください。
- 仕事で使えるの?
-
Arduinoに関連するソフトウェア、ハードウェアはともにオープンソースですが、自社の製品に組み込んでリリースするような場合にはいくつかのライセンス上の制約が発生する模様です。余計なトラブルを避けるためにも、プロトタイプ開発くらいに留めておいたほうが良いかもしれません。
Visual Studio Code(VSCode)について
- Visual Studio Codeってなに?
-
Visual Studio Code(以下「VSCode」とする)は、Microsoft社が提供する『高機能なコードエディタ』です。ただ、このエディタは凄まじい機能拡張性を持っているので、統合開発環境と言えるほどにカスタマイズできてしまいます。しかし、逆に言うと自分で必要に応じてカスタマイズしないといけないため、初心者には少しハードルが高いかもしれません。
- Visual Studioと何が違うの?
-
Visual Studioは統合開発環境なので、コンパイラやデバッガなど最初から全部入りの状態と言えます。しかし、それゆえに開発できる言語が限られるなど拡張性の面はVSCodeの方に軍配が上がります。
- 無料で使えるの?
-
オープンソースのソフトウェアであるため無料で使うことができます。ただし、一部のアドオンなどは有料販売されているものもあります。
- 仕事で使えるの?
-
商用利用可なので仕事で使うことができます。
VSCodeのインストール
次にVSCodeをインストールしていきましょう。まずはVSCodeをダウンロードします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/043c805df23cb11d93a735b9b9a90b9f-1.jpg)
Windows10,11用のインストーラーをダウンロードします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/14930eb61eda43d69a5a555f105c6f3e.jpg)
インストーラーファイル『VSCodeUserSetup-x64-[Ver.].exe』を起動する。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/a031d61a2b0eba50c0b37942e94d81af.jpg)
『同意する』チェックボタンを選択し、『次へ』ボタンをクリックします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/a614bb2ecda444d47bf5dabe110e5a6a.jpg)
インストール先フォルダパスはデフォルトでいいでしょう。
『次へ』ボタンをクリックします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/57bb4600ca97ec3fb2582a46c58eb40a.jpg)
『次へ』ボタンをクリックします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/fa9281f2bf65be26049f0356bcd04cdf.jpg)
最低限『PATHへの追加』のチェックをおすすめします。
そして、『次へ』ボタンをクリックします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/c1f10c390f8d21ff8f949329691f774a.jpg)
『インストール』ボタンをクリックします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/2f469e84106ae664bde7b011b8ab9fb9.jpg)
インストールが完了したら左の画面が表示されます。
『完了』ボタンをクリックします。
VSCodeの拡張機能のインストール
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/8afe3bdf7488c21ce8bba9710e8ec49e.jpg)
VSCodeのウィンドウ左側にある『拡張機能マーク』をクリックします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/8615609141a7b2f56a275707c5306e47.jpg)
検索欄に「Arduino」と入力すると最上段に左記アイコンのプラグインが表示されます。
ここで『インストール』をクリックします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/f4913708d27be67ec490537afdd61a42.jpg)
おそらくArduinoの拡張機能をインストールしたらC/C++の拡張機能も一緒にインストールされると思いますが、もし入ってなければ検索欄に「C」と入力して表示された『C/C++』をインストールします。
Arduino CLIのインストール
以下のサイトからArduino CLIのインストーラーファイルをダウンロードします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/2c0b763a6e5978c9b78e192a376781f7.jpg)
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/782065a20ab992ed8ec705ddbcc82d9a.jpg)
『arduino-cli_[Ver.]_Windows_64bit.msi』を起動します。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/d1eb602d8a3a8c4d305e3731ec516362.jpg)
『Next』ボタンをクリックします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/fd7ad7549c031aabaacdd751940ef787.jpg)
『Next』ボタンをクリックします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/2b6236cce5acf6535cfb223256df0dae.jpg)
『Install』ボタンをクリックします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/8eaf39e8ed5c9aca75a9acf7c06507db.jpg)
インストールが完了したら『Finish』ボタンをクリックします。
拡張機能の設定
次に拡張機能の設定を行います。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/1597bfd2050ba7b68d0c1933edae6d6c.jpg)
拡張機能画面に表示されている拡張機能『Arduino』を選択し、右側の『歯車マーク』をクリックします。
すると、さらにメニューが表示されるので『拡張機能の設定』をクリックします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/210948428ada4bd1bfe58de57d05211f.jpg)
すると、このような拡張機能の設定画面が表示されます。
私は以下のような設定にしていますが、この中で重要なのはハイライトになっている行の項目です。こちらは設定するようにしてください。
なお、”true”は✓をつけることを意味します。
項目 | 値 |
---|---|
arudino.useArduinoCli | true |
arduino.path | C:\Program Files\Arduino CLI |
arduino.commandPath | arduino-cli.exe |
logLevel | info |
clearOutputOnBuild | false |
enableUSBDetection | true |
disableTestingOpen | false |
skepHeaderProvider | false |
openPDEFiletype | false |
analyzeOnOpen | true |
analyzeOnSettingChange | true |
disableIntelliSenseAutoGen | false |
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/4493e83a47a23d392a818c583e2e813a.jpg)
拡張機能画面に表示されている拡張機能『C/C++』を選択し、右側の『歯車マーク』をクリックします。
同様にメニューが表示されるので『拡張機能の設定』をクリックします。
項目 | 値 |
---|---|
C_Cpp.intelliSenseEngine | Tag Parser |
最後にVSCodeを再起動してください。
動作テスト
簡単なプログラムを作って動かしてみましょう。今回はLEDをチカチカさせる(通称Lチカ)プログラムを作成して動作させてみます。なお、私が購入したArduino Nano everyにはLEDが搭載されてるので、改めて用意する必要はありません。
プログラムは以下のようなLEDをただ光らせるだけのものにしました。
const unsigned int D13 = 13U;
void setup()
{
pinMode( D13, OUTPUT );
digitalWrite( D13, HIGH );
}
void loop()
{
/* 何もしない */
}
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/DSC_2349-e1716737821749.jpg)
次に、ArduinoのボードをPCにUSBで接続します。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/2f0c6809a34c44a76ea7bcfe9e0a83d7.jpg)
そして、いよいよArduinoのボードにプログラムを書き込みます。
VSCodeの画面の最下部にある『<Select Board Type>』をクリックします。すると、『Arduino Board Configuration』という画面が開くので、ここで該当するボードを選択してください。
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/de04719988d0c4505f723d47f83646af.jpg)
VSCodeの画面の最下部にある『<Select Serial Port>』をクリックします。すると、上部に開くポートを表示してくれるので、これをそのまま選択します。
(ここではCOM3を開くみたいです。)
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/9d898f0a67e3c168ee655c125de05f47.jpg)
そして、画面右上の『Arduino:Upload』をクリックします。
![](https://kinketsu-patron.com/wp-content/uploads/2024/06/4d21b25ad9b668017df4e0c4e6b6d3a8-e1717853605749.png)
ビルド時にこのようなWARNINGが出ていましたので、これらの対処について追記しておきます。
[WARNING]Output path is…
もし、このようなWARNINGが表示された場合は、ビルド時に生成される中間生成ファイル(例えばelfファイルやmapファイル)の出力先が指定されていないことを注意されています。
なので、[.vscode]→[arduino.json]を開き、赤線部のような一文を追加してください。”./”は現在のフォルダ(プロジェクトフォルダ直下)を表すので、『現在のフォルダに”.build”というフォルダを作ってそこに出力する』という指定になります。なお、出力先やフォルダ名はご自身のお好きにしてもらえれば大丈夫です。
![](https://kinketsu-patron.com/wp-content/uploads/2024/06/d5b650f9a3db8975057b8f7bd87d3114-e1717853788328.png)
[WARNING]Failed to generate …
このWARNINGは出ていない人の方が多いかもしれませんが、一応書いておきます。
これは『inoファイル名』と『arduino.json中のsketchオプション記載のinoファイル名』が異なると発生する模様です。私の場合は、inoファイル名が『pachislot_dataget_sample.ino』で、sketchオプションの方が『Pachislot_DataGet_Sample.ino』でした。
![](https://kinketsu-patron.com/wp-content/uploads/2024/06/34886c46de1ce4a1c0cdf3c530f5456c-e1717857335675.png)
もし、上記のようにインクルードパスが通らない場合は、[.vscode]→[setting.json]を開き、お持ちのArduinoボードのライブラリが置いてあるパスを”C_Cpp.default.browse.path”に追加してください。
私の場合はArduino nano everyなので、megaavrの1.8.8というボードをインストールしましたから、以下のようなパスになっています。
![](https://kinketsu-patron.com/wp-content/uploads/2024/06/97078c2c40d37c685f831570a5c7d921-1024x388.png)
![](https://kinketsu-patron.com/wp-content/uploads/2024/05/DSC_2350-1024x566.jpg)
ボードのLEDが光りました!!
ひとまずこれで環境構築は完了です。