フラッシユの読み書き
フラッシユの読み書き フラッシュへの書き込み ESP32のフラッシュメモリ で書いた通りフラッシュメモリに余裕がありますので読み書きしてみます。 ESP32のデフォルトのパーテション構成( Single factory app, no OTA )は以下です。 Name Type SubType Offset Size Flags nvs data nvs 0x9000 24K phy_init data phy 0xf000 4K factory app factory 0x10000 1M ここでストレージとして利用できるのはSubType=nvsのパーティションになります。 Name=nvsのパーティションがnvs_flash_init等で初期化されるデフォルトパーティションのようです。 デフォルトパーティションを使った場合 デフォルトパーティション(Name=nvs)を使った場合は以下のように読み書きできます。 プログラム # include <stdio.h> # include "freertos/FreeRTOS.h" # include "freertos/task.h" # include "nvs_flash.h" # include "esp_log.h" void app_main ( void ) { // デフォルトパーティション("nvs")を初期化 nvs_flash_init ( ) ; // "test"というKeyでオープン nvs_handle_t hHandle ; ESP_ERROR_CHECK ( nvs_open ( "test" , NVS_READWRITE , & hHandle ) ) ; // 読み込み int32_t counter = 0 ; err = nvs_get_i32 ( hHandle , ...