ESP32でLチカするまでの設定
この記事では、Arduino IDEでESP32の開発ができるようにするまでの手順を解説します。とくに、はじめてESP32を使う方のために、Lチカ(LED点滅)するまでの内容となります。
ESP32は、Wi-FiとBluetoothを備えた低コストで低消費電力なArduino互換機です。Arduino開発とほぼ変わらないプログラミングで開発が可能で、とても人気のあるデバイスです。
次のような方は、ぜひこの記事をご参考になさってみてください。
- Arduino IDEは使ったことあるけど、ESP32を使うのは初めて
- Macを使ってるけど、プログラムをESP32へアップロードできない
はじめに
今回の開発環境はこちらになります。
項目 | バージョン |
---|---|
Arduino互換機 | ESP32 DevKitV1 |
Arduino IDE | 1.8.15 |
パソコン | macOS Big Sur 11.2.3 |
ESP32の場合、通常のブレッドボードだと片側が覆われてしまうほど大きいです。よって、片側しかGPIOを使えない状態になってしまいます。
そこで、ブレッドボードを2つ使ったアイデアを思いつきました!写真のようにブレッドボードを2つ使えば、どんなに大きなボードでも大丈夫ですね。左右のスペースも広く取れるので、電子部品を悠々と置くことができます。
▼ または、サンハヤトのSAD-101ですと、横幅が広いためESP32をブレッドボードへ刺しても左右に空きが余ります!(現在はこちらを常用してます)
▼ Espressif社の純正ボードも販売されています。
▼ Arduinoのようにブレッドボードに装着しなくて済むタイプのものもあります。
ノートパソコンにブレッドボードをマウント
ブレッドボードをMacbookのディスプレイにマウントできるようなホルダーを3Dプリンターで作ってみました!サンハヤトのSAD-101のサイズに合わせて設計してます。
ご興味ある方はこちらの記事をご参考になさってみてください。
Arduino IDEの設定
ESP32のボードURLを追加
▼下記サイトから、最新のESP32のボードURLをコピーします。
上記サイトによれば、こちらが安定板のボードURLとなります(2023/3/31現在)。
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
安定版のボードだと次のようなエラーが出てしまい、プログラムを書き込むことができなかった。Error compiling for board ESP32 Dev Module.
次に、Arduino IDEでPreferences → Additional Boards Manager URLsを開き、先ほどコピーしたボードURLを追記します。
ESP32のBoardをインストール
ESP32のBoardをインストールを行います。
Arduino IDEで、Tools → Board → Boards Managerへと進みます。
そこで「esp32」で検索してESP32のボードをインストールします。
BoardとPortの選択
次に、BoardとPortの選択を行います。
Tools → Boardの一覧からESP32 Dev Moduleを選択します。正確にはお使いのESP32のボードに合わせてください。と言ってもESP32 Dev Moduleを選択しておけば、たいていは動いてしまいます。
その他の設定はデフォルトのままで大丈夫です。
ESP32とMacをUSBケーブルで繋いだら、Tools → PortでESP32が繋がれているシリアルポートを選択しましょう。シリアルポートの名前はわかりにくいので、USB機器を抜き差ししながら検討をつけていきます。
ESP32でLチカさせてみよう
それでは最後に、ESP32でLチカを行ってみます。
GPIO13番にLEDのアノードを繋ぎ、1kΩの抵抗を介してGNDへ接続しました。下のプログラムをスケッチに書いてアップロードすればLEDが点滅すると思います。
#define LED_PIN = 13
void setup() {
pinMode(LED_PIN, OUTPUT);
}
void loop() {
digitalWrite(LED_PIN, HIGH);
delay(500);
digitalWrite(LED_PIN, LOW);
delay(500);
}
ちなみに、ESP32には内蔵LEDが存在します。内蔵LEDもプログラムからコントロール可能です。その場合は、LED_PINの代わりに#define LED_BUILTIN 2 を定義して書き換えてみてください。
LEDの色と順方向電圧
ところで、LEDは、色の種類によって順方向電圧(VF)が異なります。一般的に、赤、橙、黄、緑では1.8~2.2V程度、白、、青のLEDは3.2V前後になります。
Arduinoのデジタルピンは電圧が5Vですが、ESP32では3.3Vとなりますので注意しましょう。