#103初級

ESP32でLEDを点滅

ESP32のGPIO出力の基本を学びます。デジタルピンからLEDを点灯・消灯させて、点滅させます。Arduino UNOの定番のLED点滅プロジェクトのESP32版です。Arduino環境で使う基本的な点滅コマンドは同じですが、ESP32のピン配置と3.3 VのGPIO電圧レベルはArduino UNOとは異なります。

4.7(37)
99 完了
ESP32でLEDを点滅
ESP32の最初の一歩です。ボードに接続したLEDが0.5秒間点灯し、0.5秒間消灯する動作を繰り返します。必要なのはLED1個、抵抗1個、配線数本だけです。LEDが点滅し始めれば、ボードが動作し、プログラムが書き込まれたことを確認できます。

動画

回路図

ESP32でLEDを点滅 - Circuit

ソースコード

Arduino (C++)
1// ─────────────────────────────────────────
2//   BlueGrays · bluegrays.com
3//   LED Blink with ESP32
4// ─────────────────────────────────────────
5// Blinks an LED on GPIO 5 of the ESP32 every 500 ms. It is the ESP32
6// version of the classic Arduino blink sketch; only the pin number
7// changes.
8//
9// Pins:
10//   GPIO 5 -> Red LED (with a 220 ohm resistor)
11//   GND    -> LED short leg (cathode)
12
13void setup() {
14  pinMode(5, OUTPUT);     // LED pin as output
15}
16
17void loop() {
18  digitalWrite(5, HIGH);  // Turn the LED on
19  delay(500);             // Wait 0.5 s
20  digitalWrite(5, LOW);   // Turn the LED off
21  delay(500);
22}
23

よくある質問

ESP32のどのピンをLEDに使えますか?▾

GPIO 2、4、5、12–19、21–23、25–27、32、33は出力として安全に使えます。GPIO 34–39は入力専用なので、LEDを駆動できません。GPIO 6–11は内部フラッシュメモリに接続されているため、絶対に使わないでください。

ESP32の3.3 V出力でLEDを使う場合、どの抵抗が適していますか?▾

ESP32のピンは3.3 Vを出力します。赤色LEDには100–220 Ωの抵抗が適しています。220 Ωなら約6–7 mAの電流が流れ、LEDの点灯をはっきり確認できます。青色や白色のLEDは順方向電圧が高いため、3.3 Vでは暗く見えることがあります。

コードの書き込み中に「Connecting...」と表示されたまま止まります。どうすればよいですか?▾

ESP32ボードによっては、書き込みモードに入るためにBOOTボタンを押し続ける必要があります。「Connecting...」と表示されたらBOOTボタンを押し続け、書き込みが始まったら離してください。また、USBケーブルがデータ通信に対応していることを確認してください。

Arduinoのコードは変更せずにESP32で動きますか?▾

基本的な関数(pinMode、digitalWrite、delay)は同じなので、多くの場合はピン番号を変更するだけで使えます。「ツール」メニューでボードに「ESP32 Dev Module」を選んでください。