Κάρτα SD#

Εισαγωγή#

Το API κάρτας SD για το VEX IQ (2ης γενιάς) σάς επιτρέπει να αποθηκεύετε και να έχετε πρόσβαση σε αρχεία σε μια αφαιρούμενη κάρτα SD που έχει εισαχθεί στην υποδοχή κάρτας SD του Brain. Είτε αποθηκεύετε δεδομένα αισθητήρα είτε φορτώνετε προσαρμοσμένες εικόνες, αυτές οι μέθοδοι παρέχουν πλήρη έλεγχο στις λειτουργίες αρχείων. Η αφαιρούμενη κάρτα SD σάς επιτρέπει να μεταφέρετε εύκολα δεδομένα μεταξύ του Brain σας και του υπολογιστή.

Ο IQ (2ης γενιάς) Brain απαιτεί κάρτα SD όχι μεγαλύτερη από 32GB, με μορφοποίηση FAT32. Οι κάρτες SD που είναι μεγαλύτερες από 32GB χρησιμοποιούν μορφοποίηση exFAT από προεπιλογή, η οποία δεν είναι συμβατή με τον VEX IQ (2ης γενιάς) Brain. Βεβαιωθείτε ότι η κάρτα SD σας έχει μορφοποιηθεί σωστά σε FAT32 πριν από τη χρήση.

Όλα τα αρχεία πρέπει να τοποθετούνται στον ριζικό φάκελο της κάρτας SD για να είναι προσβάσιμα.

Αυτή η σελίδα χρησιμοποιεί brain ως παράδειγμα ονόματος Brain. Αντικαταστήστε το με το δικό σας διαμορφωμένο όνομα, όπως απαιτείται.

Παρακάτω είναι μια λίστα με όλες τις μεθόδους:

Ενέργειες — Εκτελέστε λειτουργίες αρχείων και εμφανίστε εικόνες από την κάρτα SD.

  • loadfile — Φορτώνει τα περιεχόμενα ενός αρχείου από την κάρτα SD σε μια προσωρινή μνήμη που παρέχεται από τον χρήστη.

  • savefile — Αποθηκεύει δεδομένα από ένα buffer που παρέχεται από τον χρήστη σε ένα αρχείο στην κάρτα SD του IQ (2ης γενιάς) Brain.

  • appendfile — Προσθέτει δεδομένα από ένα buffer που παρέχεται από τον χρήστη στο τέλος ενός υπάρχοντος αρχείου στην κάρτα SD του IQ (2ης γενιάς) Brain.

  • draw_image_from_file — Εμφανίζει μια εικόνα Bitmap από την κάρτα SD.

Λήπτες — Επιστρέφουν πληροφορίες κάρτας SD και αρχείου.

  • is_inserted — Επιστρέφει εάν μια κάρτα SD έχει εισαχθεί στον εγκέφαλο.

  • filesize — Επιστρέφει το μέγεθος ενός αρχείου.

  • size — Επιστρέφει το μέγεθος ενός αρχείου.

  • exists — Επιστρέφει εάν ένα αρχείο βρίσκεται στην κάρτα SD.

Ενέργειες#

loadfile#

loadfile φορτώνει ένα αρχείο από την κάρτα SD σε ένα bytearray.

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

Παράμετροι

Περιγραφή

filename

Το όνομα του αρχείου που θα φορτωθεί ως συμβολοσειρά. Το όνομα του αρχείου πρέπει να περιλαμβάνει την επέκταση αρχείου.

buffer

Προαιρετικό. Ένα υπάρχον bytearray για τη φόρτωση του περιεχομένου του αρχείου. Εάν το υπάρχον bytearray είναι μεγαλύτερο, το περιεχόμενό του θα αντικατασταθεί. Εάν το υπάρχον bytearray είναι μικρότερο, η μέθοδος ενδέχεται να μην φορτώσει όλα τα δεδομένα. Από προεπιλογή, θα επιστραφεί ένα νέο bytearray εάν ​​δεν παρέχεται buffer.

# 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 αποθηκεύει ένα bytearray στην κάρτα SD.

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

Παράμετροι

Περιγραφή

filename

Το όνομα του αρχείου που θα αποθηκευτεί ως συμβολοσειρά. Το όνομα του αρχείου πρέπει να περιλαμβάνει την επέκταση αρχείου. Εάν το αρχείο υπάρχει ήδη, θα αντικατασταθεί. Εάν το αρχείο δεν υπάρχει, θα δημιουργηθεί ένα νέο αρχείο.

buffer

Προαιρετικό. Ένα bytearray για εγγραφή στο αρχείο.

# 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 προσαρτά ένα bytearray σε ένα υπάρχον αρχείο, προσθέτοντας νέα δεδομένα στο τέλος του αρχείου χωρίς να τροποποιεί τα τρέχοντα περιεχόμενα.

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

Παράμετροι

Περιγραφή

filename

Το όνομα του αρχείου που θα προστεθεί ως συμβολοσειρά. Το όνομα του αρχείου πρέπει να περιλαμβάνει την επέκταση αρχείου.

buffer

Ένα bytearray που περιέχει τα δεδομένα που θα προστεθούν.

# 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 εμφανίζει μια εικόνα Bitmap (BMP) που είναι αποθηκευμένη στην κάρτα SD.

Τα αρχεία .bmp περιορίζονται σε 5120 pixel και 6KB σε μέγεθος.

Σημείωση: Το IQ (2ης γενιάς) Brain υποστηρίζει μόνο την εμφάνιση αρχείων .bmp Συνιστάται η κωδικοποίηση RLE 8-bit για την ελαχιστοποίηση του μεγέθους του αρχείου.

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

Παράμετροι

Περιγραφή

filename

Το όνομα αρχείου της εικόνας.

x

Η συντεταγμένη x για την επάνω αριστερή γωνία της εικόνας στην οθόνη.

y

Η συντεταγμένη y για την επάνω αριστερή γωνία της εικόνας στην οθόνη.

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

Αποκτητές#

is_inserted#

Η συνάρτηση is_inserted επιστρέφει μια Boolean τιμή που υποδεικνύει εάν μια κάρτα SD έχει εισαχθεί αυτήν τη στιγμή στον εγκέφαλο.

  • True — Ο εγκέφαλος έχει τοποθετήσει μια κάρτα SD.

  • False — Ο εγκέφαλος δεν έχει τοποθετήσει κάρτα SD.

Usage:
brain.sdcard.is_inserted()

Παράμετροι

Περιγραφή

Αυτή η μέθοδος δεν έχει παραμέτρους.

# 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 επιστρέφει το μέγεθος ενός αρχείου σε bytes ως δεκαδικό (float).

Usage:
brain.sdcard.filesize(filename)

Παράμετροι

Περιγραφή

filename

Το όνομα του αρχείου ως συμβολοσειρά. Το όνομα του αρχείου πρέπει να περιλαμβάνει την επέκταση αρχείου.

# 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 επιστρέφει το μέγεθος ενός αρχείου σε bytes ως δεκαδικό (float).

Usage:
brain.sdcard.size(filename)

Παράμετροι

Περιγραφή

filename

Το όνομα του αρχείου ως συμβολοσειρά. Το όνομα του αρχείου πρέπει να περιλαμβάνει την επέκταση αρχείου.

# 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 επιστρέφει μια λογική τιμή που υποδεικνύει εάν ένα αρχείο βρίσκεται στην κάρτα SD.

  • True — Το αρχείο βρίσκεται στην κάρτα SD.

  • False — Το αρχείο δεν βρίσκεται στην κάρτα SD.

Usage:
brain.sdcard.exists(filename)

Παράμετροι

Περιγραφή

filename

Το όνομα του αρχείου ως συμβολοσειρά. Το όνομα του αρχείου πρέπει να περιλαμβάνει την επέκταση αρχείου.

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