SD karta#

Zavedení#

Použití SD karty s VEX V5 vám umožňuje ukládat a přistupovat k souborům na vyjímatelné SD kartě vložené do slotu pro SD karty v zařízení Brain. Ať už ukládáte data ze senzorů nebo načítáte vlastní obrázky, tyto metody poskytují plnou kontrolu nad operacemi se soubory. Vyjímatelná SD karta umožňuje snadný přenos dat mezi zařízením Brain a počítačem.

V5 Brain vyžaduje SD kartu s kapacitou maximálně 32 GB, naformátovanou jako FAT32. SD karty větší než 32 GB standardně používají formátování exFAT, které není s V5 Brain kompatibilní. Před použitím se ujistěte, že je vaše SD karta správně naformátována na FAT32.

Všechny soubory musí být umístěny v kořenovém adresáři SD karty, aby byly přístupné.

V níže uvedených příkladech zahrnuje konstruovaný Brain přístup k metodám SD karty a bude použit ve všech následujících příkladech v této dokumentaci k API při odkazování na tyto metody.

Níže je uveden seznam všech metod:

Akce – Provádění operací se soubory a zobrazení obrázků z SD karty.

  • loadfile – Načte soubor z SD karty do pole typu bytearray.

  • savefile – Uloží bajtové pole na SD kartu.

  • appendfile – Připojí objekt typu bytearray k existujícímu souboru.

  • draw_image_from_file – Zobrazí bitmapový obrázek z SD karty.

Gettery – Vrací informace o SD kartě a souboru.

  • is_inserted – Vrací booleovskou hodnotu označující, zda je do Brainu vložena SD karta.

  • filesize – Vrátí velikost souboru v bajtech.

  • size – Vrátí velikost souboru v bajtech.

  • exists – Vrací booleovskou hodnotu označující, zda je na SD kartě nalezen soubor.

Informace o konstrukci Brainu pro získání přístupu k metodám sdcard naleznete v Brain.

Akce#

loadfile#

loadfile načte soubor z SD karty do pole typu bytearray.

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

Parametry

Popis

filename

Název souboru, který se má načíst jako řetězec. Název souboru musí obsahovat příponu souboru.

buffer

Volitelné. Existující pole bytearray, do kterého se má načíst obsah souboru. Pokud je existující pole bytearray větší, jeho obsah bude přepsán. Pokud je existující pole bytearray menší, metoda nemusí načíst všechna data. Ve výchozím nastavení bude vráceno nové pole bytearray, pokud není poskytnuta žádná vyrovnávací paměť.

# 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 uloží bajtové pole (bytearray) na SD kartu.

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

Parametry

Popis

filename

Název souboru, který se má uložit jako řetězec. Název souboru musí obsahovat příponu souboru. Pokud soubor již existuje, bude přepsán. Pokud soubor neexistuje, bude vytvořen nový.

buffer

Volitelné. Objekt bytearray, který se má zapsat do souboru.

# 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 připojí objekt bytearray k existujícímu souboru a přidá nová data na konec souboru bez změny aktuálního obsahu.

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

Parametry

Popis

filename

Název souboru, který se má připojit jako řetězec. Název souboru musí obsahovat příponu souboru.

buffer

Pole typu bytearray obsahující data, která se mají připojit.

# 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 zobrazí bitmapový obrázek (BMP) uložený na SD kartě.

Soubory .bmp jsou omezeny na 5120 pixelů a velikost 6 kB.

Poznámka: V5 Brain podporuje zobrazení pouze souborů .bmp Pro minimalizaci velikosti souboru se doporučuje 8bitové kódování RLE.

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

Parametry

Popis

filename

Název souboru s obrázkem.

x

Souřadnice x pro levý horní roh obrázku na obrazovce.

y

Souřadnice y pro levý horní roh obrázku na obrazovce.

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

Gettery#

is_inserted#

is_inserted vrací booleovskou hodnotu označující, zda je do Brainu aktuálně vložena SD karta.

  • True - Brain má vloženou SD kartu.

  • False - Brain nemá vloženou SD kartu.

Usage:
brain.sdcard.is_inserted()

Parametry

Popis

Tato metoda nemá žádné parametry.

# 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 vrací velikost souboru v bajtech.

Usage:
brain.sdcard.filesize(filename)

Parametry

Popis

filename

Název souboru jako řetězec. Název souboru musí obsahovat příponu souboru.

# 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 vrací velikost souboru v bajtech.

Usage:
brain.sdcard.size(filename)

Parametry

Popis

filename

Název souboru jako řetězec. Název souboru musí obsahovat příponu souboru.

# 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 vrací booleovskou hodnotu označující, zda je soubor na SD kartě nalezen.

  • True - Soubor je na SD kartě.

  • False - Soubor není na SD kartě.

Usage:
brain.sdcard.exists(filename)

Parametry

Popis

filename

Název souboru jako řetězec. Název souboru musí obsahovat příponu souboru.

# 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)