ソフトウェア
PR

【開発環境】Visual Studio Code上でArduino開発

kinketsu
記事内に商品プロモーションを含む場合があります

他サイトでは、Arduino IDEをインストールしてVSCodeにArduinoの開発環境を構築する方法が散見されますが、拡張機能の提供元(Microsoft社)は『Arduino IDE Ver.2以上は非サポートで、今後サポートする予定もない。使うならArduino CLIを使え。』と言ってますので、当サイトではArduino CLIをインストールする方で説明します。

なお、2024年5月現在Arduinoの拡張機能にはArduino CLIも一緒にバンドルされているので、改めてArduino CLIのインストールはしなくてもよいのですが、一応最新版にしておく手順を以下では説明します。

スポンサーリンク
1

Arduinoについて

Q
Arduinoってなに?

AVRマイコンを搭載したオープンソースハードウェアのマイコンボード』とネット上で説明がありますが、それだけじゃ正直よくわかりませんよね。

要は『誰でも簡単に安価にプログラミングができて、やる気があればそのマイコンボードを自作できるだけの情報が無料公開されてるマイコンボード』です。

Arduinoには専用の統合開発環境(IDE)が用意されており、コーディング・ビルド・ボードへのプログラム転送をこれ一つで完結できます。

Q
Arduinoでなにができるの?

Arduinoでは、例えば照度センサで明るさを測定して明るさによってライトの明度を制御する、というように、『何か』のデータをArduinoに入れ、それに応じて『何か』を制御することができます。この『何か』はセンサだったりモーターだったり……つまり可能性は無限大ということです!!

Q
無料で使えるの?

Arduino自体は買うことになりますが、例えば開発環境などボード以外は無料で使うことができます。なお、2024年5月現在、代表的なものとして以下がラインナップされていますが、それぞれをちょっと高機能にした亜種のようなものも販売されているのでチェックしてみてください。

最もコンパクト
Arduino Nano
料金(公式サイト)
$24.90
スタンダード
Arduino UNO Rev3
料金(公式サイト)
$27.60
UNOより多入力
Arduino Leonardo
料金(公式サイト)
$24.90
高機能
Arduino Mega 2560
料金(公式サイト)
$48.40
Q
仕事で使えるの?

Arduinoに関連するソフトウェア、ハードウェアはともにオープンソースですが、自社の製品に組み込んでリリースするような場合にはいくつかのライセンス上の制約が発生する模様です。余計なトラブルを避けるためにも、プロトタイプ開発くらいに留めておいたほうが良いかもしれません。

2

Visual Studio Code(VSCode)について

Q
Visual Studio Codeってなに?

Visual Studio Code(以下「VSCode」とする)は、Microsoft社が提供する『高機能なコードエディタ』です。ただ、このエディタは凄まじい機能拡張性を持っているので、統合開発環境と言えるほどにカスタマイズできてしまいます。しかし、逆に言うと自分で必要に応じてカスタマイズしないといけないため、初心者には少しハードルが高いかもしれません。

Q
Visual Studioと何が違うの?

Visual Studioは統合開発環境なので、コンパイラやデバッガなど最初から全部入りの状態と言えます。しかし、それゆえに開発できる言語が限られるなど拡張性の面はVSCodeの方に軍配が上がります。

Q
無料で使えるの?

オープンソースのソフトウェアであるため無料で使うことができます。ただし、一部のアドオンなどは有料販売されているものもあります。

Q
仕事で使えるの?

商用利用可なので仕事で使うことができます

3

VSCodeのインストール

次にVSCodeをインストールしていきましょう。まずはVSCodeをダウンロードします。

Windows10,11用のインストーラーをダウンロードします。

インストーラーファイル『VSCodeUserSetup-x64-[Ver.].exe』を起動する。

同意する』チェックボタンを選択し、『次へ』ボタンをクリックします。

インストール先フォルダパスはデフォルトでいいでしょう。

次へ』ボタンをクリックします。

次へ』ボタンをクリックします。

最低限『PATHへの追加』のチェックをおすすめします。

そして、『次へ』ボタンをクリックします。

インストール』ボタンをクリックします。

インストールが完了したら左の画面が表示されます。

完了』ボタンをクリックします。

4

VSCodeの拡張機能のインストール

VSCodeのウィンドウ左側にある『拡張機能マーク』をクリックします。

検索欄に「Arduino」と入力すると最上段に左記アイコンのプラグインが表示されます。

ここで『インストール』をクリックします。

おそらくArduinoの拡張機能をインストールしたらC/C++の拡張機能も一緒にインストールされると思いますが、もし入ってなければ検索欄に「C」と入力して表示された『C/C++』をインストールします。

その他の拡張機能としては、『arduino-snippets』というものが有名です。これは言わば入力の補完機能で、Windowsの予測変換のようにArduinoでよく使う定型コードを、一部を入力しただけで残りのコードを補完してくれる機能です。こちらも入れておいて損はないと思います。

5

Arduino CLIのインストール

以下のサイトからArduino CLIのインストーラーファイルをダウンロードします。

arduino-cli_[Ver.]_Windows_64bit.msi』を起動します。

Next』ボタンをクリックします。

Next』ボタンをクリックします。

Install』ボタンをクリックします。

インストールが完了したら『Finish』ボタンをクリックします。

6

拡張機能の設定

次に拡張機能の設定を行います。

拡張機能画面に表示されている拡張機能『Arduino』を選択し、右側の『歯車マーク』をクリックします。

すると、さらにメニューが表示されるので『拡張機能の設定』をクリックします。

すると、このような拡張機能の設定画面が表示されます。

私は以下のような設定にしていますが、この中で重要なのはハイライトになっている行の項目です。こちらは設定するようにしてください。
なお、”true”は✓をつけることを意味します。

Arduino拡張機能の設定一覧
項目
arudino.useArduinoClitrue
arduino.pathC:\Program Files\Arduino CLI
arduino.commandPatharduino-cli.exe
logLevelinfo
clearOutputOnBuildfalse
enableUSBDetectiontrue
disableTestingOpenfalse
skepHeaderProviderfalse
openPDEFiletypefalse
analyzeOnOpentrue
analyzeOnSettingChangetrue
disableIntelliSenseAutoGenfalse

拡張機能画面に表示されている拡張機能『C/C++』を選択し、右側の『歯車マーク』をクリックします。

同様にメニューが表示されるので『拡張機能の設定』をクリックします。

C/C++拡張機能の設定一覧
項目
C_Cpp.intelliSenseEngineTag Parser

最後にVSCodeを再起動してください。

7

動作テスト

簡単なプログラムを作って動かしてみましょう。今回はLEDをチカチカさせる(通称Lチカ)プログラムを作成して動作させてみます。なお、私が購入したArduino Nano everyにはLEDが搭載されてるので、改めて用意する必要はありません。
プログラムは以下のようなLEDをただ光らせるだけのものにしました。

const unsigned int D13 = 13U;

void setup()
{
        pinMode( D13, OUTPUT );
        digitalWrite( D13, HIGH );
}

void loop()
{
	/* 何もしない */
}

次に、ArduinoのボードをPCにUSBで接続します。

そして、いよいよArduinoのボードにプログラムを書き込みます。

VSCodeの画面の最下部にある『<Select Board Type>』をクリックします。すると、『Arduino Board Configuration』という画面が開くので、ここで該当するボードを選択してください。

もし、このときにボード一覧の中に該当するボードがない場合は、コマンドパレットに『Board Manager』と入力してBoard Managerを開き、検索欄に自分のボードの種類を入力してください。
以下のように対象のボードがありましたらインストールしてください。

VSCodeの画面の最下部にある『<Select Serial Port>』をクリックします。すると、上部に開くポートを表示してくれるので、これをそのまま選択します。
(ここではCOM3を開くみたいです。)

そして、画面右上の『Arduino:Upload』をクリックします。

2024.06.08 追記
ビルド時に発生する[WARNING]について

ビルド時にこのようなWARNINGが出ていましたので、これらの対処について追記しておきます。

[WARNING]Output path is…

もし、このようなWARNINGが表示された場合は、ビルド時に生成される中間生成ファイル(例えばelfファイルやmapファイル)の出力先が指定されていないことを注意されています。

なので、[.vscode]→[arduino.json]を開き、赤線部のような一文を追加してください。”./”は現在のフォルダ(プロジェクトフォルダ直下)を表すので、『現在のフォルダに”.build”というフォルダを作ってそこに出力する』という指定になります。なお、出力先やフォルダ名はご自身のお好きにしてもらえれば大丈夫です。

[WARNING]Failed to generate …

このWARNINGは出ていない人の方が多いかもしれませんが、一応書いておきます。

これは『inoファイル名』と『arduino.json中のsketchオプション記載のinoファイル名』が異なると発生する模様です。私の場合は、inoファイル名が『pachislot_dataget_sample.ino』で、sketchオプションの方が『Pachislot_DataGet_Sample.ino』でした。

2024.06.08 追記
インクルードパスが通らない

もし、上記のようにインクルードパスが通らない場合は、[.vscode]→[setting.json]を開き、お持ちのArduinoボードのライブラリが置いてあるパスを”C_Cpp.default.browse.path”に追加してください。
私の場合はArduino nano everyなので、megaavrの1.8.8というボードをインストールしましたから、以下のようなパスになっています。

ボードのLEDが光りました!!
ひとまずこれで環境構築は完了です。

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

ABOUT ME
金欠ぱとろん
金欠ぱとろん
ソフトウェアエンジニア
現役のエンジニアです。もともと回路が得意分野だったのに、なんやかんやあって今はソフトウェアの開発やってます。
電子工作DIY、エフェクター作り、ジャンク品の修理とか自分の好きなこと記事にしてます。
記事URLをコピーしました