ESP32のPreferenceでデータを保存

技術関連

ESP32には設定データ等を保存するための簡単な方法があります。これはESP32の外部接続(ケース内部)のFlashに保存されます。

やり方は以下の通り

ヘッダーインクルード

#include <Preferences.h>

プログラム

Preferences prefs;

// 保存
prefs.begin("my-app", false);  // 第2引数falseで読み書き可
prefs.putString("ssid", "MyWiFi");
prefs.putString("pass", "MyPass");
prefs.putInt("counter", 100);
prefs.putString("check", "checkval");
prefs.end();

// 読み込み
prefs.begin("my-app", true);  // trueで読み取り専用
String ssid = prefs.getString("ssid", "default");
String pass = prefs.getString("pass", "");
int counter = prefs.getInt("counter", 0);
if(prefs.isKey("check")){
   String check = prefs.getString("check","");
}
prefs.end();


unsigned long pressStart = 0;
bool buttonPressed = false;

  unsigned long startTime = millis();
  bool buttonHeld = true;
  
  while (millis() - startTime < 5000) {
    if (digitalRead(BUTTON_PIN) == HIGH) {
      buttonHeld = false;
      break;
    }
    delay(10);
  }
   if (pressDuration >= 5000) {
     prefs.begin("my-app", false);  
     prefs.clear();
     prefs.end();
   }
 }

タイトルとURLをコピーしました