Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
46
Help us understand the problem. What is going on with this article?

More than 1 year has passed since last update.

@mmt

VSCodeでArduino開発環境の準備

VSCodeでArduino開発環境の準備

シリアルモニタの文字化けやincludeのリンク切れがあったので解消メモ

手順

  1. ArduinoIDEのダウンロードとインストール
  2. VScodeのプラグインをインストールとArduinoIDEへのパス設定
  3. VScodeのsetting.jsonと.vscode/c_cpp_properties.jsonの設定

1. ArduinoIDEのダウンロードとインストール

arduino-1.8.9-windows.exeのダウンロードとインストール

Windows Installer, for Windows XP and up からダウンロード
何も考えず「次へ」的なボタンを押してすすめる
https://www.arduino.cc/en/Main/Software
NoName_2019-9-9_17-26-15_No-00.png

2. VScodeのプラグインをインストール

Arduinoプラグインをインストール

Marketplaceで「Arduino」検索で出てくるプラグインをインストール
NoName_2019-9-9_17-28-51_No-00.png

Arduino:Pathを設定

VScodeの左下歯車の「設定>拡張機能>Arduino configurationで「Arduino:Path」を設定
NoName_2019-9-9_17-31-11_No-00.png

3. VScodeのsetting.jsonと.vscode/c_cpp_properties.jsonの設定

パスを拾うようにするためにこれらを設定すると良いらしい
(設定しなくてもビルドできたけど、コンソールでエラー出てるの気になるから。。)

VScodeのsetting.json

ヘッダー名を探してくれるようになる?

"C_Cpp.intelliSenseEngine": "Tag Parser"

.vscode/c_cpp_properties.json

#include関係のパスが通ってないので設定を追加する

#c_cpp_properties.json
{
  "env": {
    "PACKAGES_PATH": "C:/Program Files (x86)/Arduino",
    "USER_PATH": "C:/Users/username/Documents/Arduino"
  },
  "configurations": [{
    "name": "Win32",
    "includePath": [
      "${workspaceFolder}"
    ],
    "browse": {
      "path": [
        "${workspaceFolder}",
        "${env:PACKAGES_PATH}/tools",
        "${env:PACKAGES_PATH}/hardware",
        "${env:PACKAGES_PATH}/libraries",
        "${env:USER_PATH}/libraries"
      ]
    },
    "forcedInclude": [
      "C:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino\\Arduino.h"
    ],
    "intelliSenseMode": "msvc-x64",
    "compilerPath": "C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/cl.exe",
    "cStandard": "c11",
    "cppStandard": "c++17"
  }],
  "version": 4
}

プロパティ名 説明メモ
env json内の環境変数
PACKAGES_PATH TD
USER_PATH TD
${env:PACKAGES_PATH}/tools Arduinoが元々持っているライブラリ
${env:PACKAGES_PATH}/hardware Arduinoが元々持っているライブラリ
${env:PACKAGES_PATH}/libraries Arduinoが元々持っているライブラリ
${env:PACKAGES_PATH}/libraries Zipなどで追加したライブラリ

参考サイト

46
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
46
Help us understand the problem. What is going on with this article?