بطاقة SD#

مقدمة#

تتيح لك واجهة برمجة تطبيقات بطاقة SD الخاصة بجهاز VEX IQ (الجيل الثاني) تخزين الملفات والوصول إليها على بطاقة SD قابلة للإزالة يتم إدخالها في فتحة بطاقة SD الخاصة بالجهاز. سواء كنت تحفظ بيانات المستشعرات أو تحمّل صورًا مخصصة، فإن هذه الطرق توفر لك تحكمًا كاملًا في عمليات الملفات. كما تتيح لك بطاقة SD القابلة للإزالة نقل البيانات بسهولة بين جهازك وجهاز الكمبيوتر.

يتطلب جهاز التحكم IQ (الجيل الثاني) بطاقة ذاكرة SD لا تتجاوز سعتها 32 جيجابايت، مهيأة بنظام FAT32. تستخدم بطاقات الذاكرة SD التي تزيد سعتها عن 32 جيجابايت نظام exFAT افتراضيًا، وهو غير متوافق مع جهاز التحكم VEX IQ (الجيل الثاني). تأكد من تهيئة بطاقة الذاكرة SD بنظام FAT32 قبل الاستخدام.

يجب وضع جميع الملفات في المجلد الرئيسي لبطاقة الذاكرة الخارجية (SD) حتى يمكن الوصول إليها.

تستخدم هذه الصفحة الاسم brain كمثال لاسم Brain. استبدله بالاسم الذي قمت بتكوينه حسب الحاجة.

فيما يلي قائمة بجميع الطرق:

الإجراءات — تنفيذ عمليات الملفات وعرض الصور من بطاقة الذاكرة الخارجية (SD).

  • loadfile — يقوم بتحميل محتويات ملف من بطاقة SD إلى مخزن مؤقت للذاكرة يوفره المستخدم.

  • savefile — يحفظ البيانات من مخزن مؤقت يوفره المستخدم إلى ملف على بطاقة SD الخاصة بـ IQ (الجيل الثاني) Brain.

  • appendfile — يقوم بإلحاق البيانات من مخزن مؤقت مقدم من المستخدم إلى نهاية ملف موجود على بطاقة SD الخاصة بـ IQ (الجيل الثاني) Brain.

  • draw_image_from_file — يعرض صورة نقطية من بطاقة SD.

المستلمون — إعادة بطاقة الذاكرة ومعلومات الملف.

  • is_inserted — تُرجع ما إذا كانت بطاقة SD قد تم إدخالها في الدماغ.

  • filesize — تُرجع حجم الملف.

  • size — تُرجع حجم الملف.

  • exists — تُرجع ما إذا كان الملف موجودًا على بطاقة SD.

الإجراءات#

loadfile#

loadfile يقوم بتحميل ملف من بطاقة SD إلى مصفوفة بايت.

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

حدود

وصف

filename

اسم الملف المراد تحميله كسلسلة نصية. يجب أن يتضمن اسم الملف امتداد الملف.

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 يحفظ مصفوفة بايتات في بطاقة SD.

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

حدود

وصف

filename

اسم الملف المراد حفظه كنص. يجب أن يتضمن اسم الملف امتداده. إذا كان الملف موجودًا بالفعل، فسيتم استبداله. أما إذا لم يكن موجودًا، فسيتم إنشاء ملف جديد.

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

appendfile#

appendfile يقوم بإلحاق مصفوفة بايت بملف موجود، مما يضيف بيانات جديدة إلى نهاية الملف دون تغيير المحتويات الحالية.

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

حدود

وصف

filename

اسم الملف المراد إضافته كسلسلة نصية. يجب أن يتضمن اسم الملف امتداد الملف.

buffer

مصفوفة بايت تحتوي على البيانات المراد إضافتها.

# 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 يعرض صورة نقطية (BMP) مخزنة على بطاقة SD.

تقتصر ملفات .bmp على 5120 بكسل وحجم 6 كيلوبايت.

ملاحظة: يدعم معالج IQ (الجيل الثاني) Brain عرض ملفين فقط .bmp .bmp. يُنصح باستخدام ترميز RLE ذي 8 بت لتقليل حجم الملف.

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

حدود

وصف

filename

اسم ملف الصورة.

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 تُرجع قيمة منطقية تشير إلى ما إذا كانت بطاقة 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 تُرجع حجم الملف بالبايت كعدد عشري (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 تُرجع حجم الملف بالبايت كعدد عشري (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 — الملف غير موجود على بطاقة الذاكرة الخارجية.

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)