In diesem Beitrag zeige ich dir, wie du eine SD-Karte anschließen kannst, um dort per BASIC Daten vom Raspberry Pi Pico zu speichern.
Im letzten Beitrag Raspberry Pi Pico BASIC #2 – Quellcode organisieren habe ich dir bereits gezeigt, wie du deine Daten auf dem Raspberry Pi Pico in Slots und Dateien speichern kannst. Hier geht es nun ein Stückchen weiter und ich zeige dir wie du ein SD-Karten Modul anschließt und auf einer SD-Karte deine Daten speicherst.
Benötigte Ressourcen für den Anschluss einer SD-Karte an den Raspberry Pi Pico
Wenn du eine SD-Karte an den Raspberry Pi Pico anschließen möchtest, dann benötigst du:
- einen Raspberry Pi Pico* oder Pico W*,
- ein Micro-USB-Datenkabel*,
- ein SD-Karten Modul*,
- eine SD-Karte*,
- ein paar Breadboardkabel*, weiblich-weiblich, 10 cm,
- ein GPIO Expander Board*
Hinweis von mir: Die mit einem Sternchen (*) markierten Links sind Affiliate-Links. Wenn du über diese Links einkaufst, erhalte ich eine kleine Provision, die dazu beiträgt, diesen Blog zu unterstützen. Der Preis für dich bleibt dabei unverändert. Vielen Dank für deine Unterstützung!
In meinem Fall verwende ich ein GPIO Expander Board, das ist natürlich keine Pflicht und du kannst die Breadboardkabel auch so an den Pi Pico anschließen. Jedoch finde ich dieses etwas aufgeräumter.
Im Beitrag DIY Expansion Board für Raspberry PI Pico mit Grove Adapter habe ich dir bereits mein kleines Board vorgestellt welches ebenso gut funktioniert, der Vorteil vom GPIO Expander Board von Waveshare ist jedoch, dass dieser noch einen Adapter für die Pi Hats hat.
Anschluss eines SD-Karten Moduls an den Raspberry Pi Pico
Das mir vorliegende Modul wird per SPI an den Pi Pico angeschlossen. Du hast am Mikrocontroller zwei SPI Schnittstellen.
Die Grafik ist vom Hersteller und darf ich mit freundlicher Genehmigung auf meinem Blog verwenden.
In meinem Fall nutze ich die SPI0 Pins für den Anschluss.
SD-Karten Modul | Raspberry Pi Pico / Pico W |
---|---|
GND | GND |
+5 | 5V / VBUS |
CS | GP22 |
MOSI | GP19 |
SCK | GP18 |
MISO | GP16 |
Einrichten in PicoMite
Wenn das SD-Karten Modul angeschlossen ist, dann muss dieses noch eingerichtet werden. Dazu nutzen wir den nachfolgenden Befehl:
OPTION SYSTEM SPI GP18, GP19, G16
Danach definieren wir noch den CS Pin des SD-Karten-Moduls mit:
OPTION SDCARD GP22
Auswählen des Laufwerkes
Auswählen des Laufwerkes für die SD-Karte
Die SD-Karte wird per Default auf dem Laufwerk “B” eingebunden.
Mit dem Befehl DRIVE $buchstabe können wir nun auf dieses wechseln.
DRIVE "B:"
Unterstützte SD-Karten
Es werden nicht alle SD-Karten unterstützt. Ggf. erhältst du den Fehler “There is no valid FAT volume”.
Ich habe noch viele alte SD-Karten rumfliegen und konnte nachfolgende SD-Karten wiederverwenden:
- MEDION – 256 MB,
- Intenso – 1 GB,
- CnMemory – 4 GB (First class),
- SanDisk – 4 GB (SDHC class 4),
- HAMA – 8 GB (SDHC class 6)
Quellcode verwalten
Wir können jetzt unseren Code auf dem Raspberry Pi Pico schreiben oder aber auch auf dem Computer in einem Editor unserer Wahl. Wir müssen dabei lediglich aufpassen, dass der Code nicht größer als 100 KB wird.
Wie bereits im Beitrag Raspberry Pi Pico BASIC #2 – Quellcode organisieren aufgelistet, kannst du mit den nachfolgenden Befehlen deine Dateien auch auf der SD-Karte verwalten.
Befehl | Beschreibung | Beispiel |
---|---|---|
SAVE “<Dateiname>.bas” | Speichert den aktuellen Quellcode in eine Datei auf dem Pi Pico | save “prog1.bas” |
LOAD “<Dateiname>” | Lädt die Daten aus der Datei und behält diese im Speicher | load “prog1.bas” |
KILL “<Dateiname>” | Lösch eine Datei vom Pi Pico | kill “prog1.bas” |
FILES | Listet alle Dateien & Ordner auf | files |
MKDIR “<Ordnername>” | Erstellt einen Ordner | mkdir “ordner1” |
CHDIR “<Ordnername>” | Wechselt in einen Ordner | chdir “ordner1” |
RMDIR “<Ordnername” | Löscht einen Ordner | rmdir “ordner1” |
RENAME “<Datei>” AS “<Datei>” | Vergibt der Datei oder Ordner einen neuen Namen (den zweiten Parameter) | rename “prog1.bas” as “prog2.bas” rename “ordner1” as “ordner2” |
1 thought on “Raspberry Pi Pico BASIC #4 – SD-Karte anschließen”