SD-Karte#

Einführung#

Die Verwendung einer SD-Karte mit dem VEX V5 ermöglicht das Speichern und Abrufen von Dateien auf einer herausnehmbaren SD-Karte, die in den SD-Kartensteckplatz des Brain eingesetzt wird. Ob Sie Sensordaten speichern oder eigene Bilder laden – diese Methoden bieten volle Kontrolle über die Dateivorgänge. Die herausnehmbare SD-Karte ermöglicht zudem den einfachen Datenaustausch zwischen Ihrem Brain und Ihrem Computer.

Das V5 Brain benötigt eine SD-Karte mit maximal 32 GB Speicherkapazität, formatiert mit FAT32. SD-Karten mit mehr als 32 GB verwenden standardmäßig das exFAT-Format, welches nicht mit dem V5 Brain kompatibel ist. Stellen Sie daher vor der Verwendung sicher, dass Ihre SD-Karte korrekt mit FAT32 formatiert ist.

Alle Dateien müssen im Stammverzeichnis der SD-Karte abgelegt werden, um zugänglich zu sein.

In den folgenden Beispielen beinhaltet das konstruierte Gehirn den Zugriff auf die SD-Kartenmethoden und wird in allen nachfolgenden Beispielen in dieser API-Dokumentation verwendet, wenn auf diese Methoden Bezug genommen wird.

Nachfolgend finden Sie eine Liste aller Methoden:

Aktionen – Dateivorgänge durchführen und Bilder von der SD-Karte anzeigen.

  • loadfile – Lädt eine Datei von der SD-Karte in ein Bytearray.

  • savefile – Speichert ein Bytearray auf der SD-Karte.

  • appendfile – Fügt ein Byte-Array an eine bestehende Datei an.

  • draw_image_from_file – Zeigt ein Bitmap-Bild von der SD-Karte an.

Empfänger – Geben SD-Karten- und Dateiinformationen zurück.

  • is_inserted – Gibt einen booleschen Wert zurück, der angibt, ob eine SD-Karte in das Brain eingelegt ist.

  • filesize – Gibt die Größe einer Datei in Bytes zurück.

  • size – Gibt die Größe einer Datei in Bytes zurück.

  • exists – Gibt einen booleschen Wert zurück, der angibt, ob eine Datei auf der SD-Karte gefunden wurde.

Informationen zum Aufbau eines Brains, um Zugriff auf die Methoden sdcard zu erhalten, finden Sie unter Brain.

Aktionen#

loadfile#

loadfile lädt eine Datei von der SD-Karte in ein Bytearray.

Usage:
brain.sdcard.loadfile(filename, buffer)

Parameter

Beschreibung

filename

Der Name der zu ladenden Datei als Zeichenkette. Der Dateiname muss die Dateierweiterung enthalten.

buffer

Optional. Ein vorhandenes Byte-Array, in das der Dateiinhalt geladen werden soll. Ist das vorhandene Byte-Array größer, wird sein Inhalt überschrieben. Ist es kleiner, werden möglicherweise nicht alle Daten geladen. Standardmäßig wird ein neues Byte-Array zurückgegeben, falls kein Puffer angegeben wird.

# Check for SD card and show a file's text
if brain.sdcard.is_inserted():
    # Save new text to a file
    brain.sdcard.savefile("Note.txt", bytearray("VEX"))
    # Load the file and print it
    data = brain.sdcard.loadfile("Note.txt")
    brain.screen.print(data.decode("utf-8"))
else:
    brain.screen.print("Insert SD card")

savefile#

savefile speichert ein Bytearray auf der SD-Karte.

Usage:
brain.sdcard.savefile(filename, buffer)

Parameter

Beschreibung

filename

Der Name der zu speichernden Datei als Zeichenkette. Der Dateiname muss die Dateiendung enthalten. Existiert die Datei bereits, wird sie überschrieben. Existiert die Datei nicht, wird eine neue Datei erstellt.

buffer

Optional. Ein Byte-Array, das in die Datei geschrieben werden soll.

# Check for SD card and show a file's text
if brain.sdcard.is_inserted():
    # Save new text to a file
    brain.sdcard.savefile("Note.txt", bytearray("VEX"))
    # Load the file and print it
    data = brain.sdcard.loadfile("Note.txt")
    brain.screen.print(data.decode("utf-8"))
else:
    brain.screen.print("Insert SD card")

appendfile#

appendfile hängt ein Byte-Array an eine bestehende Datei an und fügt neue Daten am Ende der Datei hinzu, ohne den aktuellen Inhalt zu verändern.

Usage:
brain.sdcard.appendfile(filename, buffer)

Parameter

Beschreibung

filename

Der Name der Datei, die als Zeichenkette angehängt werden soll. Der Dateiname muss die Dateierweiterung enthalten.

buffer

Ein Byte-Array, das die anzuhängenden Daten enthält.

# Add more text and display file size
if brain.sdcard.exists("Note.txt"):
    brain.sdcard.appendfile("Note.txt", bytearray("code"))
    size = brain.sdcard.size("Note.txt")
    brain.screen.print("Size: ")
    brain.screen.print(size)

draw_image_from_file#

draw_image_from_file zeigt ein auf der SD-Karte gespeichertes Bitmap-Bild (BMP) an.

.bmp Dateien sind auf 5120 Pixel und 6 KB Größe beschränkt.

Hinweis: Das V5 Brain unterstützt nur die Anzeige .bmp Dateien. Zur Minimierung der Dateigröße wird die 8-Bit-RLE-Codierung empfohlen.

Usage
brain.screen.draw_image_from_file(filename, x, y)

Parameter

Beschreibung

filename

Der Dateiname des Bildes.

x

Die x-Koordinate der oberen linken Ecke des Bildes auf dem Bildschirm.

y

Die y-Koordinate der oberen linken Ecke des Bildes auf dem Bildschirm.

# Draw a bmp file on the Brain's screen at coordinate 0, 0
brain.screen.draw_image_from_file('test_image.bmp', 0, 0)

Getter#

is_inserted#

is_inserted gibt einen booleschen Wert zurück, der angibt, ob aktuell eine SD-Karte im Brain eingelegt ist.

  • True - Im Gehirn ist eine SD-Karte eingelegt.

  • False - Im Gehirn ist keine SD-Karte eingelegt.

Usage:
brain.sdcard.is_inserted()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

# Check for SD card and show a file's text
if brain.sdcard.is_inserted():
    # Save new text to a file
    brain.sdcard.savefile("Note.txt", bytearray("VEX"))
    # Load the file and print it
    data = brain.sdcard.loadfile("Note.txt")
    brain.screen.print(data.decode("utf-8"))
else:
    brain.screen.print("Insert SD card")

filesize#

filesize gibt die Größe einer Datei in Bytes zurück.

Usage:
brain.sdcard.filesize(filename)

Parameter

Beschreibung

filename

Der Dateiname als Zeichenkette. Der Dateiname muss die Dateierweiterung enthalten.

# Add more text and display file size
if brain.sdcard.exists("Note.txt"):
    brain.sdcard.appendfile("Note.txt", bytearray("code"))
    size = brain.sdcard.filesize("Note.txt")
    brain.screen.print("Size: ")
    brain.screen.print(size)

size#

size gibt die Größe einer Datei in Bytes zurück.

Usage:
brain.sdcard.size(filename)

Parameter

Beschreibung

filename

Der Dateiname als Zeichenkette. Der Dateiname muss die Dateierweiterung enthalten.

# Add more text and display file size
if brain.sdcard.exists("Note.txt"):
    brain.sdcard.appendfile("Note.txt", bytearray("code"))
    size = brain.sdcard.size("Note.txt")
    brain.screen.print("Size: ")
    brain.screen.print(size)

exists#

exists gibt einen booleschen Wert zurück, der angibt, ob eine Datei auf der SD-Karte gefunden wurde.

  • True - Die Datei befindet sich auf der SD-Karte.

  • False - Die Datei befindet sich nicht auf der SD-Karte.

Usage:
brain.sdcard.exists(filename)

Parameter

Beschreibung

filename

Der Dateiname als Zeichenkette. Der Dateiname muss die Dateierweiterung enthalten.

# Add more text and display file size
if brain.sdcard.exists("Note.txt"):
    brain.sdcard.appendfile("Note.txt", bytearray(" World"))
    size = brain.sdcard.size("Note.txt")
    brain.screen.print("Size: ")
    brain.screen.print(size)