コンテンツにスキップ
ショップ

ESP32 MCU:PlatformIOの設定

いつものAIとセットアップ

Gemini・その他のAI

質問文をコピーして、いつものAIに貼り付け。キットの確認から動作確認まで、一つずつ進められます。

Geminiを開く

質問文をコピーして、Geminiの入力欄に貼り付けてください。

質問文を確認

PlatformIO IDEを使って、AP02 ESP32 MCUリーフ(ESP32-WROOM-32)の開発環境を設定します。

Visual Studio Code (VSCode)は、Microsoft社が提供する軽量ながら強力なソース コード エディターで、デスクトップ上で実行され、Windows、macOS、および Linux で使用できます。PlatformIO IDEは、VSCodeの拡張機能で、ビルドが早く、ライブラリやボードのバージョンがプロジェクト毎に管理されているのが特長です。

  • ESP32 Wi-Fi Kit 2
  • パソコン (Windows、macOS 、または Linux)

  1. VS Codeをインストールします。
  2. 拡張機能からPlatformIO IDEを検索し、発行元がPlatformIOの拡張機能をインストールします。
  3. 初期設定が終わるまで待ち、再起動を求められたらVS Codeを再起動します。

PlatformIO Coreとシリアルモニターは拡張機能に含まれています。利用できる環境では同梱のPythonを使います。Pythonのインストールを求められた場合はPlatformIO公式の手順に従ってください。Linuxではpython3-venvも必要です。

日本語表示のJapanese Language Pack for Visual Studio Code、グラフ表示のTeleplotは、必要な場合に追加します。詳細はPlatformIO IDE公式の導入手順を参照してください。

書き込むと、MCUに入っているプログラムが置き換わります。後で購入時のデモを試す場合は、デモの書き戻し方を確認してください。

「Hello World」の事例で、platformIO IDEの使い方を紹介します。

  1. VSCodeを立ち上げ、ファイル→ 新しいウィンドウを開きます。

  2. PlatformIO(画面左のバー)をクリックし、PLATFORMIO QUICK ACCESS(画面左)を表示させます。

  3. PIO Home/Openをクリックします。

  4. New Projectをクリックすると、Project Wizardが表示されます。Name、Boad、Frameworkを以下の通り入力して、Finishをクリックします。新しいBoardを選択した時、プログラミングに必要なファイルのダウンロードするために数分かかります。

    • Name:ESP32_Hello_World_Pjtと記入
    • Board:Espressif ESP32 Dev Module を選択
    • Framework:Arduino を選択
  5. platformio.ini (画面左)を開き、 Projectで定義したBoardとFrameworkが、正しく定義されていることを確認します。

[env:esp32dev]
platform = espressif32
board = esp32dev
framework = arduino
  1. ESP32 MCUは、アップロード時に、COMポートの自動検出をするため、COMポートの番号の指定が不要になります。

  2. シリアル通信のボーレートをmonitor_speed =で定義します。以下の様に、platformio.iniに加えてください。

monitor_speed = 115200
  1. src/main.cpp(画面左)を開き、以下のコードを貼り付けてください。
    PlatformIO IDEのコードは、Arduino IDEのスケッチの先頭に#include <Arduino.h>を加えます。
#include <Arduino.h>
void setup() {
Serial.begin(115200);
delay(10);
}
void loop(){
Serial.println("Hello World");
delay(1000);
}
  1. PlatformIO ツールバー(画面下のバー)のProject Environment Switcherボタンを押すと、アクティブなプロジェクトが画面上側にすべて表示されます。実行するプロジェクトを正しく選択して、Buildボタンを押してください。


  2. こちら を参考に、LeafonyをPCに接続してください。

  3. Uploadボタンを押すと、プログラムがMCUに書き込まれます。

  4. MCUのリセットボタンを押して、プログラムを実行させます。

  5. シリアルモニターボタンを押して起動させ、Hello Worldを表示ができれば完成です。


platformio.iniの使用する[env:...]内のlib_depsに、サンプルに必要なものだけを追加します。配布元・指定方法・既存のバージョン指定はライブラリとボード定義にまとめています。Hello Worldには追加ライブラリは不要です。

PlatformIOには、Arduino IDEにあるシリアルプロッターがないため、VSCodeの拡張機能であるTeleplot for VSCodeを導入します。サンプルのソースコードをダウンロードして、試してください。

  1. GitHubからソースコードをダウンロードし、パソコンの所定の場所に保存1 します。

  2. プログラムを実行してください。

  3. 画面下のteleplotの表示をクリックして、COMポートを指定して、Open を押すとグラフが表示されます

  4. >varName:1234\nという形式のシリアルメッセージは、すべてteleplotに表示されます。詳しくは、こちらを参照してください。

// Plot a sinus
Serial.print(">sin:");
Serial.println(sin(i));
// Plot a cosinus
Serial.print(">cos:");
Serial.println(cos(i));

PlatformIO IDEを使った簡単なソースコードを準備しました。GitHubからダウンロードし、パソコンの所定の場所に保存1 してプログラムを試してください。

ItemSource code
温湿度センサ読み取りESP32_Thermo-Hygrometer_Pjt
照度センサ読み取りESP32_Illuminance_Meter_Pjt
加速度センサ読み取りESP32_Accelerometer_Pjt

AP型番とボード設定の対応はボード定義を選ぶを参照してください。書き込み方法・ポート指定は、各MCUの設定ページで確認します。

プログラムを記述する時のArduino IDEとの違い

Section titled “プログラムを記述する時のArduino IDEとの違い”
  1. #include <Arduino.h>をプログラムの先頭に記述
    Arduino IDEは、プログラム言語としてはC++を使っており、基本的な型の宣言やよく使うライブラリのヘッダファイルはArduino.hを書かなくても自動的にインクルードされますが、PlatformIO IDEは、Arduino.hがプログラムの先頭に記述する必要があります。

  2. 独自関数は使用する関数の前に定義
    Arduino IDEは、独自関数の定義を使用する関数の後に書いてもビルドがSUCCESSになりますが、PlatformIO IDEは、C++のルールに従って独自関数は使用する関数の前に定義する必要があります。

例えば、以下は、独自関数の設定は、使用する関数の後に書いてあるのでビルドがFAILになります。

void setup() {
// put your setup code here, to run once:
func();
}
void func() {
;
}

以下は、独自関数の定義は、使用する関数の前に書いてあるのでビルドがSUCSESSになります。

void func() {
;
}
void setup() {
// put your setup code here, to run once:
func();
}

以下は、プロトタイプ宣言するので、ビルドがSUCSESSになります。

// Prototypes
void func(void);
void setup() {
// put your setup code here, to run once:
func();
}
void func() {
;
}

プロジェクトフォルダの名前変更や削除

Section titled “プロジェクトフォルダの名前変更や削除”

Project Wizarで、New Projectを立ち上げると、フォルダが作成され、デフォルトでは、~/Documents/PlatformIO/Projects に保存されます。 Projectの名前変更やフォルダの削除は、Project Wizarではなく、エクスプローラから直接できます。

プロジェクトフォルダの保存場所の設定

Section titled “プロジェクトフォルダの保存場所の設定”

プロジェクトフォルダの保存場所の設定は、Project Wizarではなく、ターミナルから行います。

  1. VSCodeを立ち上げ、ファイル→ 新しいウィンドウを開きます。

  2. PlatformIO(画面左のバー)をクリックし、PLATFORMIO QUICK ACCESS(画面左)を表示させます。

  3. PIO Home/Openをクリックします。

  4. 以下のコードを実行します。
     pio settings set projects_dir <設定したい(絶対)パス>

  5. VSCodeを再起動します。

  1. デフォルトの保存場所は、C:\Users\<ユーザ名>\ドキュメント\PlatformIO\Projectsです。
    ↩ ↩2