以下の内容はhttps://shuzo-kino.hateblo.jp/entry/2024/07/09/205124より取得しました。


M5stackのEEPROMを消す

の続き。
このままだと電源を再投入しようがファームを書き換えようがEEPROMが消えないので上書きリセットの方法を実装します

実際のところ

まずsetup関数より先に二つの関数を追加

// EEPROMをクリアする関数
void clearEEPROM() {
  for (int i = 0; i < ROMSIZE; i++) {
    EEPROM.write(i, 0xFF);
  }
  EEPROM.commit();
}

// デバイスを再起動する関数
void restartDevice() {
  ESP.restart();
}

loop関数の中に

void loop() {
  // ボタン操作でデバイスIDを変更
  M5.update();

  //...

  // BtnBを押下した際にEEPROMをクリアして再起動
  if (M5.BtnB.wasReleased()) {
    M5.Lcd.fillScreen(BLACK);
    M5.Lcd.setCursor(0, 0);
    M5.Lcd.println("Clearing EEPROM...");
    clearEEPROM();
    M5.Lcd.println("Restarting...");
    delay(2000);  // メッセージを表示するための遅延
    restartDevice();
  }
}



以上の内容はhttps://shuzo-kino.hateblo.jp/entry/2024/07/09/205124より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14