Karta SD#
Wstęp#
Użycie karty SD z VEX V5 umożliwia przechowywanie i dostęp do plików na wymiennej karcie SD włożonej do gniazda karty SD w Brain. Niezależnie od tego, czy zapisujesz dane z czujnika, czy ładujesz własne obrazy, te metody zapewniają pełną kontrolę nad operacjami na plikach. Wymienna karta SD umożliwia łatwe przesyłanie danych między Brain a komputerem.
V5 Brain wymaga karty SD o pojemności nie większej niż 32 GB, sformatowanej w systemie FAT32. Karty SD o pojemności powyżej 32 GB domyślnie korzystają z formatu exFAT, który nie jest kompatybilny z V5 Brain. Przed użyciem upewnij się, że karta SD jest prawidłowo sformatowana w systemie FAT32.
Aby były dostępne, wszystkie pliki muszą zostać umieszczone w folderze głównym karty SD.
W poniższych przykładach skonstruowany Brain obejmuje dostęp do metod karty SD i będzie używany we wszystkich kolejnych przykładach w tej dokumentacji API podczas odwoływania się do tych metod.
Poniżej znajduje się lista wszystkich metod:
Akcje – wykonywanie operacji na plikach i wyświetlanie obrazów z karty SD.
loadfile– Ładuje plik z karty SD do tablicy bajtów.savefile– Zapisuje tablicę bajtów na karcie SD.appendfile– Dodaje tablicę bajtów do istniejącego pliku.draw_image_from_file– Wyświetla obraz bitmapowy z karty SD.
Gettery – zwracają informacje o karcie SD i pliku.
is_inserted– Zwraca wartość logiczną wskazującą, czy karta SD jest włożona do mózgu.filesize– Zwraca rozmiar pliku w bajtach.size– Zwraca rozmiar pliku w bajtach.exists– Zwraca wartość logiczną wskazującą, czy plik został znaleziony na karcie SD.
Informacje na temat konstruowania mózgu w celu uzyskania dostępu do metod sdcard można znaleźć w Mózg.
Akcje#
loadfile#
loadfile ładuje plik z karty SD do tablicy bajtów.
Usage:
brain.sdcard.loadfile(filename, buffer)
Parametry |
Opis |
|---|---|
|
Nazwa pliku do załadowania jako ciąg znaków. Nazwa pliku musi zawierać rozszerzenie pliku. |
|
Opcjonalnie. Istniejąca tablica bajtów, do której ma zostać załadowana zawartość pliku. Jeśli istniejąca tablica bajtów jest większa, jej zawartość zostanie nadpisana. Jeśli istniejąca tablica bajtów jest mniejsza, metoda może nie załadować wszystkich danych. Domyślnie, jeśli bufor nie zostanie podany, zostanie zwrócona nowa tablica bajtów. |
# 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 zapisuje tablicę bajtów na karcie SD.
Usage:
brain.sdcard.savefile(filename, buffer)
Parametry |
Opis |
|---|---|
|
Nazwa pliku do zapisania jako ciąg znaków. Nazwa pliku musi zawierać rozszerzenie pliku. Jeśli plik już istnieje, zostanie nadpisany. Jeśli plik nie istnieje, zostanie utworzony nowy plik. |
|
Opcjonalnie. Tablica bajtów do zapisania w pliku. |
# 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 dołącza tablicę bajtów do istniejącego pliku, dodając nowe dane na końcu pliku bez zmiany bieżącej zawartości.
Usage:
brain.sdcard.appendfile(filename, buffer)
Parametry |
Opis |
|---|---|
|
Nazwa pliku do dołączenia w postaci ciągu znaków. Nazwa pliku musi zawierać rozszerzenie pliku. |
|
Tablica bajtów zawierająca dane do dołączenia. |
# 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 wyświetla obraz bitmapowy (BMP) zapisany na karcie SD.
Pliki .bmp są ograniczone do 5120 pikseli i rozmiaru 6 KB.
Uwaga: V5 Brain obsługuje wyłącznie wyświetlanie plików .bmp W celu zminimalizowania rozmiaru pliku zaleca się stosowanie 8-bitowego kodowania RLE.
Usage
brain.screen.draw_image_from_file(filename, x, y)
Parametry |
Opis |
|---|---|
|
Nazwa pliku obrazu. |
|
Współrzędna x lewego górnego rogu obrazu na ekranie. |
|
Współrzędna y lewego górnego rogu obrazu na ekranie. |
# Draw a bmp file on the Brain's screen at coordinate 0, 0
brain.screen.draw_image_from_file('test_image.bmp', 0, 0)
Getters#
is_inserted#
is_inserted zwraca wartość logiczną wskazującą, czy karta SD jest aktualnie włożona do mózgu.
True- W mózgu znajduje się karta SD.False- W mózgu nie ma włożonej karty SD.
Usage:
brain.sdcard.is_inserted()
Parametry |
Opis |
|---|---|
Ta metoda nie ma żadnych parametrów. |
# 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 zwraca rozmiar pliku w bajtach.
Usage:
brain.sdcard.filesize(filename)
Parametry |
Opis |
|---|---|
|
Nazwa pliku w postaci ciągu znaków. Nazwa pliku musi zawierać rozszerzenie pliku. |
# 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 zwraca rozmiar pliku w bajtach.
Usage:
brain.sdcard.size(filename)
Parametry |
Opis |
|---|---|
|
Nazwa pliku w postaci ciągu znaków. Nazwa pliku musi zawierać rozszerzenie pliku. |
# 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 zwraca wartość logiczną wskazującą, czy plik został znaleziony na karcie SD.
True- Plik znajduje się na karcie SD.False- Plik nie znajduje się na karcie SD.
Usage:
brain.sdcard.exists(filename)
Parametry |
Opis |
|---|---|
|
Nazwa pliku w postaci ciągu znaków. Nazwa pliku musi zawierać rozszerzenie pliku. |
# 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)