جدول المحتويات:

MicroPython على SPIKE Prime: 12 خطوة
MicroPython على SPIKE Prime: 12 خطوة

فيديو: MicroPython على SPIKE Prime: 12 خطوة

فيديو: MicroPython على SPIKE Prime: 12 خطوة
فيديو: Getting Started with MicroPython on SPIKE PRIME (old) 2024, يوليو
Anonim
MicroPython على SPIKE Prime
MicroPython على SPIKE Prime

يمكنك ترميز SPIKE Prime باستخدام MicroPython وهي مجموعة فرعية من Python للمعالجات الصغيرة.

يمكنك استخدام أي محاكي طرفي لتشفير SPIKE Prime hub.

اللوازم

SPIKE Prime Hub

كمبيوتر مع منفذ USB / بلوتوث

كبل USB لتوصيل المحور بالكمبيوتر

الخطوة 1: احصل على محاكي طرفي

احصل على محاكي طرفي
احصل على محاكي طرفي
احصل على محاكي طرفي
احصل على محاكي طرفي

هناك العديد من الخيارات للاختيار من بينها.

يعمل CoolTerm على جميع المنصات ، بما في ذلك Pi

المعجون يعمل على النوافذ

أمر الشاشة في Terminal على نظام تشغيل يونكس

الخطوة 2: قم بتوصيل SPIKE Prime بمنفذ USB

قم بتوصيل SPIKE Prime بمنفذ USB
قم بتوصيل SPIKE Prime بمنفذ USB
قم بتوصيل SPIKE Prime بمنفذ USB
قم بتوصيل SPIKE Prime بمنفذ USB

استخدم كبل microUSB لتوصيل SPIKE Prime بالكمبيوتر.

الخطوة 3: ابحث عن المنفذ

ابحث عن المنفذ
ابحث عن المنفذ
ابحث عن المنفذ
ابحث عن المنفذ

نحتاج إلى معرفة المنفذ التسلسلي الذي يتصل به محور SPIKE Prime.

على نظام Mac ، اكتب

ls /dev/tty.usbmodem*

على جهاز الكمبيوتر ، انظر إلى مدير الجهاز الخاص بك تحت الرقم التسلسلي لمعرفة المنافذ التسلسلية التي قمت بتوصيلها

في pi ، سيكون شيئًا مثل ttyAMC0 - تحقق من مجلد / dev /

الخطوة 4: التوصيل

توصيل
توصيل
توصيل
توصيل

قم بتوصيل ما يصل إلى المنفذ الأيمن (من الخطوة السابقة) على 115200 باود

في Terminal ، اكتب

جهاز كمبيوتر $ screen / dev / 115200

في بيئة تطوير متكاملة أخرى ،

اضغط على فتح / توصيل (بعد إعداد المنافذ والباودرات)

ملاحظة: لا يوجد تماثل ، 8 بتات بيانات ، وبت توقف واحد

الخطوة 5: بدء تشغيل REPL

بدء تشغيل REPL
بدء تشغيل REPL
بدء تشغيل REPL
بدء تشغيل REPL
بدء تشغيل REPL
بدء تشغيل REPL

عند الاتصال بـ SPIKE Prime من الجهاز الطرفي / PUTTY ، سترى دفقًا من الأرقام والأحرف. هذه بيانات من أجهزة الاستشعار الداخلية لمحور SPIKE Prime. لتبدأ اضغط على control + c

سوف يقاطع المنفذ التسلسلي ويجب أن ترى شيئًا كهذا.

MicroPython v1.9.4-1146-gca9944357 في 2019-09-25 ؛ LEGO Technic Large Hub مع STM32F413xx اكتب "help ()" لمزيد من المعلومات.

أنت الآن جاهز للتشفير.

الخطوة 6: رمزك الأول

كودك الأول
كودك الأول

محور الاستيراد

hub.display.show ("Tufts")

لاحظ الأمر "import" - الذي يسحب مكتبة Python التي تتيح لك التحدث إلى SPIKE Prime. يجب أن تشاهد Tufts مكتوبة على مصفوفة LED على المحور.

الخطوة 7: اعرض اسمك

حاول الآن الكتابة

hub.display.show ('')

لاحظ أنه نظرًا لأنك قمت بالفعل باستيراد لوحة الوصل أعلاه ، فهي موجودة بالفعل في الذاكرة. إذا لم يكن الأمر كذلك ، فستتلقى خطأ مثل:

Traceback (آخر مكالمة أخيرة): ملف "" ، سطر 1 ، خطأ في الاسم: اسم "المحور" غير محدد

الخطوة 8: استخدام REPL

واحدة من أقوى سمات Python هي أنه يمكنك اختبار أي شيء قبل كتابة التعليمات البرمجية في REPL (اقرأ حلقة الطباعة EVAL).

سيقوم بتنفيذ أي أمر من أوامر python - حاول كتابة 2 + 2 أدناه وشاهد ما يقوله:

2+2

الخطوة 9: استكشاف MicroPython على SPIKE Prime

حان الوقت الآن للاستكشاف.

يحتوي المحور على الكثير من الوظائف - يمكنك معرفة ذلك بمجرد كتابة "المحور". (لا تنس الفترة بعد المحور) ثم الضغط على مفتاح TAB في REPL. سيُظهر لك ذلك جميع الطرق المختلفة التي يمكنك من خلالها إكمال الأمر.

التحدي: تعرف على ما إذا كان بإمكانك قراءة التسارع.

الخطوة العاشرة: قراءة قيم المستشعر … 1

تعود بيانات التسريع كمصفوفة من القيم. لذلك إذا كنت تريد قيمة X فقط ، فيمكنك المحاولة

hub.motion.accelerometer () [0]

أو أفضل طريقة لترميز هذا سيكون باستخدام متغيرات مثل هذا:

محور الاستيراد

تسريع = hub.motion.accelerometer () xAccel = تسريع [0] hub.display.show (str (xAccel))

الخطوة 11: قراءة قيم المستشعر … 2

قراءة قيم جهاز الاستشعار … 2
قراءة قيم جهاز الاستشعار … 2

يمكنك أيضًا عرض التسارع الثلاثة باستخدام حلقة.

سنقوم أيضًا باستيراد وقت المكتبة حتى نتمكن من التوقف مؤقتًا وإعطائك الوقت لقراءة الرقم على الشاشة.

جرب هذا الرمز:

محور الاستيراد ، utimeaccel = hub.motion.accelerometer () لـ Acc in Accel: hub.display.show (str (Acc)) utime.sleep (0.8)

في هذه المرحلة ، تصبح بعض الأشياء مهمة:

المسافات - Python هي كل شيء عن المسافة البادئة لليمين - على غرار الأقواس في اللغات الأخرى ، فإن المسافة البادئة تخبرك بما يوجد داخل حلقة for وما هو ليس كذلك.

عند استخدام REPL ، ستلاحظ أنه عندما تقوم بعمل مسافة بادئة ، فإنه لم يعد ينفذ السطر بل ينتظر منك إنهاء سطور الحلقة for قبل التنفيذ (ويتم استبدال >>> بـ…). لإنهاء حلقة for ، ما عليك سوى النقر على رجوع ثلاث مرات وسيتم تنفيذ الحلقة.

الخطوة 12: التحدي

بعد ذلك ، تحقق مما إذا كان يمكنك معرفة ما يفعله الكود أدناه - وحاول تنفيذه لمعرفة ما إذا كنت على حق.

محور الاستيراد ، وقت

بينما صحيح: تسريع = hub.motion.accelerometer () لـ Acc في التسريع: hub.display.show (str (Acc)) utime.sleep (0.8) إذا hub.port. B.device.get (): break

تلميح - أنت بحاجة إلى جهاز استشعار في المنفذ B.

موصى به: