ESP32 入力ピンのPULL UP PULL DOWN テスト
JH7UBC 2019.12.25


ESP32の入力ピンのPULL UP PULL DOWNのテストをします。
まず、ESP32 DevKitのピン配列は次のようになっています。

(この画像の原典は、分からないのですが、見やすいので使わせていただきます)
デフォルトでPULL UP、PULL DOWNされているピンは、pu、pdで表示されています。

Arduinoでは、pinMode(ピン番号,INPUT_PULLUP);でINPUTピンをPULL UPすることができます。
(ESP32ではPULL_DOWNも指定することができることを確認しました。)
ESP32では、次のようにPULL UP,PULL DOWN,両方,PULLなしを設定することができます。

gpio_set_pull_mode(GPIO_NUM,PULL_MODE);

GPIO_NUM:GPIO_NUM_0〜GPIO_NUM_39

PULL_MODE:
        GPIO_PULLUP_ONLY プルアップ
        GPIO_PULLDOWN_ONLY プルダウン
        GPIO_PULLUP_PULLDOWN プルアップ、プルダウン両方
        GPIO_FLOATING プルアップ、プルダウンなし

 ESP32のデータシートでは、プルアップ抵抗、プルダウン抵抗とも45kΩとなっています。
各モードを設定したときのピンの電圧を調べてみます。
スケッチです。GPIO25を0.5秒ごとにプルアップ、プルダウン、両方、なし設定を繰り返します。


GPIO25の電圧をPicoScopeで見てみると

PULLUP_ONLYで3.3V、PULLDOWN_ONLYで0V、PULLUP_PULLDOWNで約1.6V、FLOATINGで0Vです。

inserted by FC2 system