Tarjeta SD#
Introducción#
El uso de una tarjeta SD con VEX V5 le permite almacenar y acceder a archivos en una tarjeta SD extraíble insertada en la ranura para tarjetas SD del Brain. Ya sea que esté guardando datos del sensor o cargando imágenes personalizadas, estos métodos proporcionan un control total sobre las operaciones de los archivos. La tarjeta SD extraíble le permite transferir datos fácilmente entre su cerebro y la computadora.
El V5 Brain requiere una tarjeta SD de no más de 32 GB, formateada como FAT32. Las tarjetas SD de más de 32 GB utilizan el formato exFAT de forma predeterminada, que no es compatible con el V5 Brain. Asegúrese de que su tarjeta SD esté correctamente formateada en FAT32 antes de usarla.
Todos los archivos deben colocarse en la carpeta raíz de la tarjeta SD para ser accesibles.
Para los ejemplos a continuación, el cerebro construido incluye el acceso a los métodos de la tarjeta SD y se utilizará en todos los ejemplos posteriores a lo largo de esta documentación API cuando se haga referencia a esos métodos.
A continuación se muestra una lista de todos los métodos:
Acciones: realice operaciones de archivo y muestre imágenes desde la tarjeta SD.
loadfile– Carga un archivo de la tarjeta SD en un bytearray.savefile– Guarda una matriz de bytes en la tarjeta SD.appendfile– Añade un bytearray a un archivo existente.draw_image_from_file– Muestra una imagen de mapa de bits de la tarjeta SD.
Getters: devuelve la información de la tarjeta SD y el archivo.
is_inserted– Devuelve un booleano que indica si se ha insertado una tarjeta SD en el cerebro.filesize– Devuelve el tamaño de un archivo en bytes.size– Devuelve el tamaño de un archivo en bytes.exists– Devuelve un booleano que indica si se encuentra un archivo en la tarjeta SD.
Para obtener información sobre cómo construir un cerebro para obtener acceso a los métodos sdcard, consulte Cerebro.
Acciones#
loadfile#
loadfile carga un archivo de la tarjeta SD en un bytearray.
Usage:
brain.sdcard.loadfile(filename, buffer)
Parámetros |
Descripción |
|---|---|
|
El nombre del archivo a cargar como una cadena. El nombre del archivo debe incluir la extensión del archivo. |
|
Opcional. Un bytearray existente para cargar el contenido del archivo. Si la matriz de bytes existente es más grande, su contenido se sobrescribirá. Si la matriz de bytes existente es más pequeña, es posible que el método no cargue todos los datos. De forma predeterminada, se devolverá un nuevo bytearray si no se proporciona un búfer. |
# 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 guarda una matriz de bytes en la tarjeta SD.
Usage:
brain.sdcard.savefile(filename, buffer)
Parámetros |
Descripción |
|---|---|
|
El nombre del archivo a guardar como una cadena. El nombre del archivo debe incluir la extensión del archivo. Si el archivo ya existe, se sobrescribirá. Si el archivo no existe, se creará un nuevo archivo. |
|
Opcional. Un bytearray para escribir en el archivo. |
# 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 anexa un bytearray a un archivo existente, agregando nuevos datos al final del archivo sin alterar el contenido actual.
Usage:
brain.sdcard.appendfile(filename, buffer)
Parámetros |
Descripción |
|---|---|
|
El nombre del archivo a adjuntar como una cadena. El nombre del archivo debe incluir la extensión del archivo. |
|
Una matriz de bytes que contiene los datos a adjuntar. |
# 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 muestra una imagen de mapa de bits (BMP) almacenada en la tarjeta SD.
Los archivos .bmp están limitados a 5120 píxeles y 6KB de tamaño.
Nota: El V5 Brain solo admite la visualización de archivos .bmp. Se recomienda la codificación RLE de 8 bits para minimizar el tamaño del archivo.
Usage
brain.screen.draw_image_from_file(filename, x, y)
Parámetros |
Descripción |
|---|---|
|
El nombre de archivo de la imagen. |
|
La coordenada x para la esquina superior izquierda de la imagen en la pantalla. |
|
La coordenada y para la esquina superior izquierda de la imagen en la pantalla. |
# 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 devuelve un booleano que indica si una tarjeta SD está actualmente insertada en el cerebro.
True: el cerebro tiene una tarjeta SD insertada.False: el cerebro no tiene una tarjeta SD insertada.
Usage:
brain.sdcard.is_inserted()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
# 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 devuelve el tamaño de un archivo en bytes.
Usage:
brain.sdcard.filesize(filename)
Parámetros |
Descripción |
|---|---|
|
El nombre del archivo como una cadena. El nombre del archivo debe incluir la extensión del archivo. |
# 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 devuelve el tamaño de un archivo en bytes.
Usage:
brain.sdcard.size(filename)
Parámetros |
Descripción |
|---|---|
|
El nombre del archivo como una cadena. El nombre del archivo debe incluir la extensión del archivo. |
# 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 devuelve un booleano que indica si se encuentra un archivo en la tarjeta SD.
True: el archivo está en la tarjeta SD.False: el archivo no está en la tarjeta SD.
Usage:
brain.sdcard.exists(filename)
Parámetros |
Descripción |
|---|---|
|
El nombre del archivo como una cadena. El nombre del archivo debe incluir la extensión del archivo. |
# 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)