Benutzt man den Pico mit der Original Arduino-Platform (mbed), so stehen einige Funktionen/Bibliotheken nicht ohne Zutun zur Verfügung. Benötigt man die SD-Funktionen für eine per SPI angeschaltete SD-Karte, so hat man eine gute Library, die von Bill Greiman's SdFat abgeleitet wurde: https://github.com/khoih-prog/RP2040_SD Die Library wird bei einem vorhandenen PlatformIO-Projekt direkt hinzugefüügt, wenn man die Zeile lib_deps = khoih-prog/RP2040_SD in platform.ini einfügt. Beim nächsten Build werden die notwendigen Dateien aus dem Internet heruntergeladen, und stehen dann unter ... \PlatformIO<Ordner>.pio\libdeps\pico\RP2040_SD, wenn die Zeile unter [env:pico] eingefügt wurde. Leider kann man nicht direkt die Zeitstempel der Dateien herausbekommen. Es fehlen die Funktionen getLastWrite() und getCreationTime() in RP2040_SD.h. Ich habe diese Funktionen hinzugefügt und dazu entsprechend RP2040_SD.h und File.hpp angepaßt. Sollen neue Dateien mit Zeitstempel erzeugt werden, so muß man noch eine CallBack Funktion erstellen und den folgenden Aufruf machen: RP2040_SdFile::dateTimeCallback(DateTimeCallbackSD);
Die Funktion DateTimeCallbackSD sieht z.B. so aus:
1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
Die Variablen Tag,Monat,.. müssen natürlich die aktuellen Zeitwerte enthalten. Die geänderten Dateien der Lib befinden sich in der beigefügten zip-Datei und dazu ein Beispiel, wie sie genutzt werden können. Das Beipiel ist nicht vollständig, sondern soll nur das Prinzip darstellen.
Harald