ESP32を使用する場合の注意点

ESP32を使用する場合は以下の注意点があります。

Arduinoでのピンの指定

Arduinoのピン名称ではなく、ESP32のIO番号で指定します。 Arduinoピン名称A1、A2は、Wi-Fiを使用する場合(WiFi.hをインクルードする場合)アナログ入力として使用できません。

Arduinoピン番号A0、A3、A4、A5は出力にすることはできません。

Arduinoピン名称 ESP32 IO番号 制限事項
A0 IO36 出力設定不可
A1 IO25 ※1
A2 IO26 ※1
A3 IO39 出力設定不可
A4 IO34 出力設定不可
A5 IO35 出力設定不可

※1:A1、A2は、Wi-Fiを使用する場合(WiFi.hをインクルードする場合)アナログ入力として使用できません。

以下のピンはブートストラップに使用しているため、プルアップ、プルダウンの制限があります。 | Arduinoピン名称 | ESP32 IO番号 | 制限事項 | | :————– | :———– | :————- | | D4 | IO12 | プルアップ禁止 | | D7 | IO15 | プルダウン禁止 | | D10 | IO5 | プルダウン禁止 |

電池動作

ESP32 MCUはコイン電池では動作しません。

UART

ESP32ではハードウエアシリアルが3系統使用可能です。UART0とUART2は以下の通りです。 | UART番号 | 信号名 | Arduinoピン名称 | ESP32 IO番号 | | :——- | :—– | :————– | :———– | | UART0 | RXD0 | D0 | IO3 | | | TXD0 | D1 | IO1 | | UART2 | TXD2 | D8 | IO17 | | | RXD2 | D9 | IO16 |

UART1を使用する場合はピン番号を変更する必要があります。通常、Arduinoピン番号A1、A2をUART1として使用します。 変更後のピン番号は以下の通りです。 | UART番号 | 信号名 | Arduinoピン名称 | ESP32 IO番号 | | :——- | :—– | :————– | :———– | | UART1 | TXD1 | A1 | IO25 | | | RXD1 | A2 | IO26 |

Arduinoスケッチの設定例

HardwareSerial Serial1(1); // UART1 (RX=9, TX=10)

void setup() {
  Serial1.begin(9600, SERIAL_8N1, 26, 25); // ピンを変更 (RX=26, TX=25)
}

タッチセンサ

ESP32は静電容量式タッチセンサの機能を持っています。 配線の容量によって値が変わるので閾値の調整が必要です。 | Leafonyピン番号 | Arduinoピン名称 | ESP32 IO番号 | タッチセンサ番号 | 備考 | | :————– | :————– | :———– | :————— | :————————– | | 7 | D6 | IO14 | T6 | - | | 9 | D7 | IO15 | T3 | - | | 22 | D2 | IO4 | T0 | - | | 24 | D3 | IO27 | T7 | ESP32 Wi-Fi Kitでは使用不可 | | 26 | D4 | IO12 | T5 | - | | 28 | D5 | IO13 | T4 | - |

最終更新 November 12, 2020