Woran könnte es liegen?
Wohl wieder ein "Speicherleck".
Aber konkret: weiss ich nicht genau.
Mir fällt auf, dass
File dirnie geschlossen wird, aber öfters per open neu erzeugt wird.- In einem loop Durchlauf alle Bilder angezeigt werden.
Was passiert bei dieser Variante ?
...
File dir;
void setup() {
...
dir = SD.open("/");
dir.rewindDirectory();
}
void loop() {
File entry = dir.openNextFile();
if ( ! entry ) {
dir.rewindDirectory();
Serial.println( F(" Von vorne! "));
return;
}
Serial.print(entry.name());
// skip directories
if (entry.isDirectory()) {
Serial.println("/");
} else {
if( bmpDraw(entry.name(),0,0) ) delay(2000);
}
entry.close();
}
Nur ein Test, wohl keine Lösung...
Wenn du in deiner Variante bmpDraw durch eine Dummy Funktion ersetzt,
boolean bmpDraw(char*, byte, byte ) { return true; }
läuft es dann ewig ?