SD-kaart#
Invoering#
De SD-kaart-API voor VEX IQ (2e generatie) stelt u in staat bestanden op te slaan en te openen op een verwijderbare SD-kaart die in de SD-kaartsleuf van de Brain is geplaatst. Of u nu sensorgegevens opslaat of aangepaste afbeeldingen laadt, deze methoden bieden volledige controle over bestandsbewerkingen. De verwijderbare SD-kaart maakt het bovendien mogelijk om eenvoudig gegevens over te dragen tussen uw Brain en computer.
De IQ (2e generatie) Brain vereist een SD-kaart van maximaal 32 GB, geformatteerd als FAT32. SD-kaarten groter dan 32 GB gebruiken standaard exFAT-formattering, wat niet compatibel is met de VEX IQ (2e generatie) Brain. Zorg ervoor dat uw SD-kaart correct is geformatteerd naar FAT32 voordat u deze gebruikt.
Alle bestanden moeten in de hoofdmap van de SD-kaart worden geplaatst om toegankelijk te zijn.
Op deze pagina wordt brain als voorbeeld Brain naam gebruikt. Vervang dit door uw eigen geconfigureerde naam indien nodig.
Hieronder vindt u een lijst met alle methoden:
Acties — Bestandsbewerkingen uitvoeren en afbeeldingen van de SD-kaart weergeven.
loadfile— Laadt de inhoud van een bestand van de SD-kaart in een door de gebruiker opgegeven geheugenbuffer.savefile— Slaat gegevens uit een door de gebruiker opgegeven buffer op in een bestand op de SD-kaart van de IQ (2e generatie) Brain.appendfile— Voegt gegevens uit een door de gebruiker aangeleverde buffer toe aan het einde van een bestaand bestand op de SD-kaart van de IQ (2e generatie) Brain.draw_image_from_file— Geeft een bitmapafbeelding van de SD-kaart weer.
Getters — Retourneer SD-kaart en bestandsinformatie.
is_inserted— Geeft aan of er een SD-kaart in de Brain is geplaatst.filesize— Geeft de grootte van een bestand terug.size— Geeft de grootte van een bestand terug.exists— Geeft aan of er een bestand op de SD-kaart is gevonden.
Acties#
loadfile#
loadfile laadt een bestand van de SD-kaart in een bytearray.
Usage:
brain.sdcard.loadfile(filename, buffer)
Parameters |
Beschrijving |
|---|---|
|
De naam van het te laden bestand als tekenreeks. De bestandsnaam moet de bestandsextensie bevatten. |
|
Optioneel. Een bestaande bytearray om de inhoud van het bestand in te laden. Als de bestaande bytearray groter is, wordt de inhoud ervan overschreven. Als de bestaande bytearray kleiner is, laadt de methode mogelijk niet alle gegevens. Standaard wordt een nieuwe bytearray geretourneerd als er geen buffer wordt opgegeven. |
# 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 slaat een bytearray op in de SD-kaart.
Usage:
brain.sdcard.savefile(filename, buffer)
Parameters |
Beschrijving |
|---|---|
|
De naam van het op te slaan bestand moet als tekenreeks worden ingevoerd. De bestandsnaam moet de bestandsextensie bevatten. Als het bestand al bestaat, wordt het overschreven. Als het bestand niet bestaat, wordt een nieuw bestand aangemaakt. |
|
Optioneel. Een bytearray om naar het bestand te schrijven. |
# 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 voegt een bytearray toe aan een bestaand bestand, waarbij nieuwe gegevens aan het einde van het bestand worden toegevoegd zonder de huidige inhoud te wijzigen.
Usage:
brain.sdcard.appendfile(filename, buffer)
Parameters |
Beschrijving |
|---|---|
|
De naam van het bestand dat moet worden toegevoegd, als tekenreeks. De bestandsnaam moet de bestandsextensie bevatten. |
|
Een bytearray met de toe te voegen gegevens. |
# 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 geeft een bitmapafbeelding (BMP) weer die op de SD-kaart is opgeslagen.
.bmp bestanden zijn beperkt tot 5120 pixels en 6 KB groot.
Let op: De IQ (2e generatie) Brain ondersteunt alleen de weergave van .bmp bestanden. 8-bits RLE-codering wordt aanbevolen om de bestandsgrootte te minimaliseren.
Usage
brain.screen.draw_image_from_file(filename, x, y)
Parameters |
Beschrijving |
|---|---|
|
De bestandsnaam van de afbeelding. |
|
De x-coördinaat van de linkerbovenhoek van de afbeelding op het scherm. |
|
De y-coördinaat van de linkerbovenhoek van de afbeelding op het scherm. |
# 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 retourneert een Booleaanse waarde die aangeeft of er momenteel een SD-kaart in de Brain is geplaatst.
True— Er is een SD-kaart in de hersenen geplaatst.False— Er is geen SD-kaart in de hersenen geplaatst.
Usage:
brain.sdcard.is_inserted()
Parameters |
Beschrijving |
|---|---|
Deze methode heeft geen parameters. |
# 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 retourneert de grootte van een bestand in bytes als een decimaal (float).
Usage:
brain.sdcard.filesize(filename)
Parameters |
Beschrijving |
|---|---|
|
De naam van het bestand als een tekenreeks. De bestandsnaam moet de bestandsextensie bevatten. |
# 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 retourneert de grootte van een bestand in bytes als een decimaal (float).
Usage:
brain.sdcard.size(filename)
Parameters |
Beschrijving |
|---|---|
|
De naam van het bestand als een tekenreeks. De bestandsnaam moet de bestandsextensie bevatten. |
# 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 retourneert een Booleaanse waarde die aangeeft of er een bestand op de SD-kaart is gevonden.
True— Het bestand staat op de SD-kaart.False— Het bestand staat niet op de SD-kaart.
Usage:
brain.sdcard.exists(filename)
Parameters |
Beschrijving |
|---|---|
|
De naam van het bestand als een tekenreeks. De bestandsnaam moet de bestandsextensie bevatten. |
# Add more text and display file size if the file exists
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)