عناوين الدرس

لعبة Whac-A-Mole

متقدم

سنقوم في هذا المشروع ببرمجة لعبة Whac-A-mole  المسلية من خلال استخدام عصا التحكم و RGB وحساب النقاط وعرضها على وحدة عرض 7-segment

makeblock-whac-a-mole

الأدوات المطلوبة

makeblock-whac-a-mole

Inventor Kit

القطع المستخدمة

 

سنستخدم في هذا المشروع القطع التالية:

makeblock-whac-a-mole

 

طريقة التوصيل

 

makeblock-whac-a-mole

 

المنفذ القطعة الالكترونية
منفذ3 RGB LED
منفذ4 7-segment
منفذ6 عصا التحكم joystick

 

الفكرة البرمجية

 

makeblock-whac-a-mole

تحتوي وحدة  RGBعلى   4  LED سنقوم ببرمجتها لتتم إضاءتها عشوائيا وبشكل سريع ، ونلاحق هذه الإضاءة عبر عصا التحكم، عند توافق توجيه العصا باتجاه LED المضاءة يتحول لونها من الأزرق إلى الأحمر وتسجيل نقطة تظهر على وحدة عرض 7-segment

makeblock-whac-a-mole

تتحرك عصا التحكم في اتجاهات مختلفة ، نحتاج لاختبارها وتحديد القيمة التي تعطيها في كل اتجاه .

نقوم بتوصيل عصا التحكم باللوحة Orion  في المنفذ 6
واستخدام الكود التالي لعرض القراءة على الشاشة

makeblock-whac-a-mole

قم بتحريك عصا التحكم في اتجاه Y  أعلى وأسفل وفي اتجاه X يمينا ويسارًا وتسجيل القيمة التي تعطيها في كل اتجاه لنستخدم هذه القيم في برمجة اللعبة

makeblock-whac-a-mole

 

برمجة المشروع

سنحتاج بداية لانشاء 4 متغيرات

المتغير الوظيفة
LED يشير إلى رقم LED في وحدة RGB
 Score لتسجيل النقاط عند التصويب
X  لتخزين قيمة حركة عصا التحكم في اتجاه X
Y لتخزين قيمة حركة عصا التحكم في اتجاه y

 

makeblock-whac-a-mole

 

نبدأ الكود بتعيين قيمة RGB LED وحدة 7-segment  على قيمة 0
وتعيين العداد على 0

makeblock-whac-a-mole

داخل حلقة Forever
نقوم بتعيين المتغير LED بحيث تتغير القيمة بصورة عشوائية من 0 – 4 وفق عدد LED أو من 0-8 لتقليل سرعة التغير في الإضاءة
ثم نضع أمر إضاءة LED بحيث تضاء حسب الرقم العشوائي كل مرة

makeblock-whac-a-mole

نقوم بتعيين المتغيرين X و Y على حركة عصا التحكم Joystick

makeblock-whac-a-mole

نستخدم جملتين  شرطيتين  if ..then
بحيث إذا كانت قيمة LED تساوي 1 (أي LED1 مضاءة)
وتم تصويب عصا التحكم في اتجاه LED (نضع قيمةY وفق القيمة التي حصلنا عليها عند اختبار عصا التحكم)

makeblock-whac-a-mole

نضيف الأمر بحيث تتغير الإضاءة من أزرق إلى أحمر

makeblock-whac-a-mole

وتسجيل نقطة في المتغير Score

makeblock-whac-a-mole

وعرض عدد النقاط على وحدة 7-segment

makeblock-whac-a-mole

 

makeblock-whac-a-mole

يتم كتابة الأكواد للاتجاهات و LED الأخرى بنفس الطريقة مع وضع القيم المناسبة

قم بالإطلاع على الكود كاملا :

makeblock-whac-a-mole

وللمزيد من المعلومات حول الكود يمكنك مراجعة  درس جولة حول الأوامر البرمجية.

 

 

X
تم إضافة المنتج إلى السلة بنجاح