Skip to content

نشاط

ساعة توقيف باللمس

متوسط | MakeCode, Python | أزرار, شاشة LED, شعار اللمس | العمليات الحسابية, القياس, القيم المنطقية, المتغيرات, المدخلات/المخرجات

الخطوة 1: اصنعها

ماذا يعني؟

اصنع ساعة توقيت حقيقية باستخدام مستشعر شعار اللمس الخاص بجهاز micro:bit كزر إضافي.

مقدمة

دليل البرمجة

ما ستتعلمه

  • كيفية استخدام مستشعر شعار اللمس الجديد في جهاز micro:bit كزر إضافي في مشروع عملي
  • كيفية استخدام المتغيرات المشغلات الحسابية لقياس الوقت
  • كيفية استخدام المشغلات الحسابية لتحويل الوحدات (مللي ثانية إلى ثوان)
  • ما هو متغير القيم المنطقية وكيف يمكن استخدامه للتحكم في تدفق البرنامج

كيف تستخدمه؟

  • ضع البرنامج على micro:bit جديد مع مكبر الصوت المدمج.
  • اضغط على الزر A لبدء تشغيل ساعة التوقيت. يتم عرض قلب متحرك على شاشة LED أثناء التوقيت.
  • اضغط على الزر B لإيقافها. يمكنك أن تبدأ وتتوقف أكثر من مرة كما تريد، وسوف تستمر في الإضافة إلى ذلك الوقت، تمامًا مثل ساعة التوقيت الحقيقية.
  • اضغط على شعار اللمس الذهبي في مقدمة micro:bit لإظهار الوقت المقاس بالثواني.
  • لإعادة تعيين الوقت إلى الصفر، اضغط على زر إعادة التعيين على الجزء الخلفي في micro:bit.

كيف يعمل ؟

  • micro:bit يتتبع طول الوقت الذي تم فيه تشغيله بالمللي ثانية (أجزاء الألف من الثانية). هذا يسمى وقت التشغيل.
  • عند الضغط على الزر A، يتم تعيين متغير يسمى بداية إلى وقت التشغيل الحالي
  • عندما تضغط على الزر B، بداية يتم خصم الوقت من وقت التشغيل الجديد للتعرف على الوقت الذي انقضى منذ أن بدأت ساعة التوقيت. هذا الفرق يضاف إلى الوقت الإجمالي، والذي يتم تخزينه في متغير يسمى الوقت.
  • إذا قمت بالضغط على شعار اللمس، فإن البرنامج يظهر إجمالي الوقت المنقضي على شاشة LED. يحوّل الوقت من المللي ثانية (أجزاء الألف من الثانية) إلى ثوان بتقسيمه على 1000. يستخدم عامل القسمة الصحيحة لإعطاء نتيجة بأعداد صحيحة (أعداد صحيحة).
  • البرنامج يستخدم أيضًا متغير قيمة منطقية يسمى قيد التشغيل للتحكم في البرنامج. متغيرات القيم المنطقية يمكن أن تحتوي فقط على قيمتين: صح أو خطأ. إذا كان تشغيل صحيحًا، يتم بدء تشغيل ساعة التوقيت. إذا كان تشغيل خطأ، فإن ساعة التوقيت لم يتم تشغيلها أو تم إيقافها.
  • إذا كان قيد التشغيل صحيح، تحافظ حلقة على حركة القلب تظهر على شاشة LED.
  • سيظهر الوقت فقط عندما تضغط على الشعار إذا تم إيقاف ساعة التوقيت، إذا كان قيد التشغيل فهو ليس صحيح.
  • الكود يمنع قراءات خاطئة عن طريق التأكد من أن المتغير وقت لا يتغير إلا عند الضغط على الزر B إذا كانت ساعة التوقف قد بدأت بالفعل، إذا كان قيد التشغيل صحيح.

ما تحتاجه

  • micro:bit جديد مع صوت (أو محاكي MakeCode)
  • محرر MakeCode أو Python
  • حزمة البطارية (اختياري)

الخطوة 2: برمجها

1from microbit import *
2time = 0
3start = 0
4running = False
5
6while True:
7    if running:
8        display.show(Image.HEART)
9        sleep(300)
10        display.show(Image.HEART_SMALL)
11        sleep(300)
12    else:
13        display.show(Image.ASLEEP)
14    if button_a.was_pressed():
15        running = True
16        start = running_time()
17    if button_b.was_pressed():
18        if running:
19            time += running_time() - start
20        running = False
21    if pin_logo.is_touched():
22        if not running:
23            display.scroll(int(time/1000))

الخطوة 3: حسّنها

  • قم بتعديل البرنامج حتى تتمكن من إعادة تعيين الوقت عن طريق هز micro:bit.
  • اجعل عداد الوقت أكثر دقة باستخدام أجزاء من الأرقام بدلًا من عدد صحيح (أعداد كاملة).
  • أضف خاصية الوقت لدرجة أنه إذا لمست الشعار أثناء تشغيل ساعة التوقيف فإنه يظهر الوقت في تلك النقطة. تذكر أن تتأكد من عدم إضافة هذا إلى مجموع الوقت المتغير.