Ⅲ. ESP32で複数センサから計測

 『超小型格安チップ「ESP-WROOM-02(ESP8266)」はどこまで使えるか?』で製作した温度・湿度・気圧・照度のセンサーをESP32で計測できるようにします。と言っても、これらはすべてI2C通信を利用しているので、前章のRTCをI2CでESP32に接続したことですでに必要な接続は完了しています。
 またスケッチも、I2C初期化処理を書き換えるだけで動作します。

 ※スケッチのダウンロードは右側の[Download]ボタンをクリックしてください。    

1.既存コードの変更

 コードの変更は次の1カ所だけです。

 5行目: Wire.begin()からの変更。
void setup() {
    Serial.begin(115200);

    // Prepare I2C protocol.
    Wire.begin(21,22);    // Define(SDA, SCL)
      
    // Prepare WiFi system.
    WiFi.begin(ssid, password);
    while (WiFi.status() != WL_CONNECTED) {
      delay(500);
      Serial.print(".");
    }
    Serial.println("\r\nWiFi connected!");

    // Recreate NTPClient object.
    timeClient = NTPClient(ntpUDP, sNtpUrl, iNtpOffset);
}


2.複数センサーの計測結果を検証する

 変更後のスケッチをesp32I2C.inoの名称で保存して、[ツール]タブからシリアルモニタを開きます。
 ESP32開発ボードの右ボタン[FLASH]を押したまま左ボタン[RESET]を押下した後、IDEの「マイコンボードに書き込む」アイコンをクリックしてください。コンパイルとマイコンボードへの書き込みが終わると、シリアルモニターに次のような計測結果が表示されます。


3.ESP-WROOM-32と開発ボード

 この章はこれで終わりなので、以下にESP-WROOM-32と開発ボードについて整理しておきましょう。
(1)ESP-WROOM-32の周辺回路図

 下図はESP32をパーッケージングしたESP-WROOM-32の単体を使用する場合の回路図です。Espressif Systems社(December 9, 2016) 『ESP-WROOM-32 Datasheet』からの引用です。


(2)開発ボードのピンレイアウト

 下図はEspressif Systems社の『ESP32 Dev Board PINMAP』です。

 ※GPIO6~11は内部でFLASHメモリとの接続に使用しているので利用できません!

以上!

 
Copyright (C) 2011-2024 Marchan, All rights reserved.