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 |
|---|---|
|
Název souboru, který se má načíst jako řetězec. Název souboru musí obsahovat příponu souboru. |
|
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 |
|---|---|
|
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ý. |
|
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 |
|---|---|
|
Název souboru, který se má připojit jako řetězec. Název souboru musí obsahovat příponu souboru. |
|
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 |
|---|---|
|
Název souboru s obrázkem. |
|
Souřadnice x pro levý horní roh obrázku na obrazovce. |
|
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 |
|---|---|
|
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 |
|---|---|
|
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 |
|---|---|
|
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)