[備忘録]VSCode-PlatformIO IDEを使って、ESP32の開発環境を構築およびLチカ


はじめに

ESP32で電子工作をする上で、Arduino IDEを使っていました。
最近、PlatformIO IDEを使うようになり、非常に使いやすいと感じました。
今回、環境構築の方法を紹介させていただきます。

紹介する内容

  • PlatformIO IDEのインストール
  • PlatformIO IDEのLチカベースに操作説明

確認した環境

  • ホストPC
    • windows10 64bit Home
    • VSCode - 1.41
  • ターゲットボード
    • ESP32-WROOM-32 開発ボード

手順

VSCode(Visual STudio Code)をインストール

Download Visual Studio Code
の公式より、インストーラをダウンロードし、インストールします。

※手元の環境では、Windows - User Installerを選択しました。

VSCodeの拡張機能よりPlatformIO IDEをインストール

VSCodeを起動し、拡張機能よりPlatformIO IDEをインストールします。

拡張機能のところで、"PlatformIO"と入力すれば、上位に表示されると思います。

Lチカ用のプロジェクトを作成する

インストールが完了すると、PIO Homeが表示されます。

※表示されない場合、コマンドパレット([Ctrl] + [Shift] + P)を表示し、
"PlatformIO: HOME"を選択すると表示されます。

"New Project"を選択します。

必要情報を入力します。

  • Name
    • プロジェクトの名前を指定(任意の名前)
    • BlinkLed
  • Board
    • ターゲットのボードを指定
    • Espressif ESP32 Dev Modeule
  • Framework
    • フレームワークを指定
    • Arduino
  • Location
    • 保存場所
    • チェックを外すと、直接パスを指定できる

"Finish"を選択する

プロジェクトのひな形が作成されます。

プロジェクトの通信設定を変更する

"platformio.ini"が設定ファイルとなります。

シリアル通信のボーレートを変更するには、

monitor_speed = 115200

を追記し、保存します。

Lチカのコードを記載する

"./src/main.cpp"にsetup(), loop()関数が定義されています。

Arduino IDE - inoファイルと異なり、

#include <Arduino.h>

が必要となります。

今回のサンプルコードと回路図は以下となります。

main.cpp
#include <Arduino.h>

#define LED_PIN   15

void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  delay(100);
  Serial.printf("%s - run\n",__func__);
  pinMode(LED_PIN, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  digitalWrite(LED_PIN, HIGH);
  Serial.printf("%s - LED_PIN - HIGH\n",__func__);
  delay(1000);
  digitalWrite(LED_PIN, LOW);
  Serial.printf("%s - LED_PIN - LOW\n",__func__);
  delay(1000);
}


ビルドする

画面下の①をクリックすると、ビルドが始まります。

②に結果が表示されます。

※コマンドパレット([Ctrl] + [Shift] + P)にて、"PlatformIo: Build"でも実行できます。

ターゲットにアップロードする

ホストPCとターゲットをmicroUSBケーブルで接続します。

画面下の①をクリックすると、アップロードが開始されます。

②に結果が表示されます。


※コマンドパレット([Ctrl] + [Shift] + P)にて、"PlatformIo: Upload"でも実行できます。

問題がなければ、書き込み後Lチカがはじまっています。

シリアル通信を確認する

画面下の①をクリックすると、シリアル通信が表示されます。

②に結果が表示されます。


※コマンドパレット([Ctrl] + [Shift] + P)にて、"PlatformIo: Serial Monitor"でも実行できます。

以上が基本的な手順となります。

補足

作業中に疑問やポイントを記載します。

COMポートの認識は?

"PIO Home" - "Devices"より確認することができます。

Arduino - IDEのライブラリマネージャーは?

"PIO Home" - "Libraries"より管理することができます。

"PIO Home"が毎回起動してしまう

赤丸の部分のチェックを外し解決

必要なライブラリのチェックは?

ビルドするときに、必要に応じて取得しているようです。

さいごに

今回紹介した内容は、一部の内容です。

もう少しつっこんだ使い方を別途記載したいと思っています。

参考

PlatformIo公式Docs