Bonjour à tous
Je fais un sketch tout simple pour lire un fichier stocké en mémoire flash d'un ESP32.
On m'a dit qu'il fallait utiliser la librairie "lorol/LITTLEFS". En effet cela semble bien, mais la compile plante.
Mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <arduino.h>
#include <FS.h>
#include <LITTLEFS.h>
 
#define FORMAT_SPIFFS_IF_FAILED true
 
String tempo;
bool go = true;
 
void litFichier(fs::FS &fs, const char *dir){
  tempo ="";
  File fic=fs.open(dir,"r");
  if(!fic || fic.isDirectory()){
    Serial.println("Erreur");
    fic.close();
    return;
  }
  else{
    while(fic.available()){
      tempo+=(char)fic.read();
    }
  }
  fic.close();
}
 
void setup() {
  Serial.begin(9600);
  if(!LITTLEFS.begin(FORMAT_SPIFFS_IF_FAILED)) Serial.println("SPIFFS  MOUNT FAILED");
  delay(500);
  litFichier(LITTLEFS,"/index.html");
}
 
void loop() {
  if(go){
    Serial.println(tempo);
    go=false;
  }
}
Résultat de la compile:
.pio/libdeps/esp32doit-devkit-v1/LittleFS_esp32/src/LITTLEFS.cpp: In member function 'virtual bool LITTLEFSImpl::exists(const char*)':
.pio/libdeps/esp32doit-devkit-v1/LittleFS_esp32/src/LITTLEFS.cpp:44:28: error: no matching
function for call to 'LITTLEFSImpl::open(const char*&, const char [2])'
File f = open(path, "r");
^
In file included from .pio/libdeps/esp32doit-devkit-v1/LittleFS_esp32/src/LITTLEFS.cpp:17:
C:/Users/Mormic/.platformio/packages/framework-arduinoespressif32/libraries/FS/src/vfs_api.h:38:17: note: candidate: 'virtual fs::FileImplPtr VFSImpl::open(const char*, const char*,
bool)'
FileImplPtr open(const char* path, const char* mode, const bool create) override;
^~~~
C:/Users/Mormic/.platformio/packages/framework-arduinoespressif32/libraries/FS/src/vfs_api.h:38:17: note: candidate expects 3 arguments, 2 provided
*** [.pio\build\esp32doit-devkit-v1\lib3ef\LittleFS_esp32\LITTLEFS.cpp.o] Error 1
=============================== [FAILED] Took 10.84 seconds ===============================
Mon platformio.ini:
[env:esp32doit-devkit-v1]
platform = espressif32
board = esp32doit-devkit-v1
framework = arduino
board_build.partitions = huge_app.csv
board_build.f_cpu = 240000000L
lib_deps = lorol/LittleFS_esp32@^1.0.6
Est-ce que quelqu'un voit d'où vient mon problème?
Merci