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

ثعبان على لوح توصيل: 3 خطوات (بالصور)
ثعبان على لوح توصيل: 3 خطوات (بالصور)

فيديو: ثعبان على لوح توصيل: 3 خطوات (بالصور)

فيديو: ثعبان على لوح توصيل: 3 خطوات (بالصور)
فيديو: سكيت سمير سلطان 2024, شهر نوفمبر
Anonim
ثعبان على اللوح
ثعبان على اللوح
ثعبان على اللوح
ثعبان على اللوح
ثعبان على اللوح
ثعبان على اللوح

"هل لديك أية ألعاب على هاتفك؟"

"ليس تماما."

مقدمة:

أصبح Snake مشروعًا مفضلاً لدى المهندسين ، وهو سهل التحكم ، وسهل البرمجة ، وخالٍ من Nokia 6110. تم تنفيذه في أي شيء من مصفوفات LED وشاشات الكريستال السائل وإضاءة أرفف الكتب وحتى نوافذ المباني بأكملها. سنقوم بتطبيق Snake على لوحة توصيل صغيرة وشاشة OLED. لقد صنع الناس بالتأكيد مشغلات ثعبان أصغر حجمًا ، ولكن هذا يستخدم على وجه التحديد لوح التجارب ، مما يلغي الحاجة إلى تصميم ثنائي الفينيل متعدد الكلور أو اللحام.

(يمكنك فقط إنشاء تطبيق على هاتفك ، لكننا لا نفعل أشياء لأنها سهلة).

المتطلبات الأساسية:

فهم أساسي للدارات ، وكيفية عمل اللوح ، وفهم قوي للبرمجة في Arduino.

اللوازم

  • اردوينو نانو
  • 2 مقاومات عالية بشكل معقول (1 كيلو أوم)
  • اللوح الصغير
  • 2 أزرار انضغاطية
  • 22 AWG سلك صلب النواة
  • 128 × 64 أوليد

هذه روابط تابعة لشركة Amazon ، لذا أحصل على عمولة قليلة مع كل عملية بيع. إذا لم يكن لديك هذه الإمدادات بالفعل وترغب في دعم مشاريعي المستقبلية ، فاتبع هذه الروابط!:)

الخطوة 1: اللوح

اللوح
اللوح
اللوح
اللوح
اللوح
اللوح

من أجل صنع منتجنا النهائي ، من الواضح أنه يتعين علينا تجميع الأجهزة لبرمجة واختبار مشروعنا. مخطط النظام لهذا المشروع بسيط إلى حد ما ، لأنه لا يتضمن سوى 4 مكونات إجمالية.

1. ضعها:

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

ملحوظات:

نظرًا لأن OLED يستخدم ناقل I2C ، فيجب استخدام الدبابيس A4 و A5. لا يسمح حجم اللوح بوجود سكة كهربائية وأرضية ، لذلك استخدمت بعض الحيل لإنجاح كل شيء. يتم توفير الجهد الموجب للأزرار بواسطة المسامير D13 و A2. اكتشفت أن دبابيس Arduino لا يمكنها توفير التيار فحسب ، بل يمكنها أيضًا أن تغرق التيار أيضًا ، وبالتالي استخدمت A3 كأرضية للزر الأيمن. لتعظيم المساحة على اللوح ، قمت بتعليق نصف Nano من اللوح ودعمت دبابيس الجانب الأيسر بقطعة من الرغوة.

2. قم بإخراجها:

مع زوج من أدوات تقشير الأسلاك وكمية مناسبة من 22 AWG سلك صلب أساسي ، قم بتوصيل مكوناتك معًا بدقة. يعد استخدام نواة صلبة لإنشاء مشاريع الألواح شبه الدائمة أمرًا أساسيًا ، لأنه يمكنك قصها بالطول ، على عكس أسلاك التوصيل. تأكد من عدم ترك الكثير من الطول الزائد على الأسلاك الخاصة بك ، فسيؤدي ذلك إلى إنشاء لوحة فوضوية. قم بقص أطراف المقاومات المنسدلة بحيث تتلاءم مع اللوح.

(يمكنك أيضًا متابعة ما فعلته أعلاه.)

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

البرنامج والاختبار
البرنامج والاختبار

لإنقاذ نفسك من الصداع لاحقًا ، تأكد من أن OLED والأزرار تعمل بالطريقة التي من المفترض أن تعمل بها من خلال إنشاء برامج اختبار أساسية.

1. التخطيط والتخطيط والتخطيط:

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

2. الرمز ، الكود ، الكود:

بصراحة ، هذا المشروع هو تمرين برمجة أكبر من كونه تمرينًا على الأجهزة. كانت المكتبة الوحيدة التي استخدمتها هي مكتبة Adafruit's OLED ، دون احتساب مكتبات GFX و Wire الداعمة.

اجعلك تثبت مكتبة OLED في Adafruit عبر مدير مكتبة Arduino IDE.

لا يمكنني توثيق كل سطر من التعليمات البرمجية التي كتبتها ، ولكن إليك بعض النصائح:

نصائح:

تعليقات:

- أولاً وقبل كل شيء ، اكتب تعليقات أنيقة ومفيدة أثناء كتابة التعليمات البرمجية. في المستقبل ستشكرك أنت والآخرون الذين قرأوا الكود الخاص بك بالتأكيد.

ذاكرة:

- مع مشاريع أكثر تعقيدًا مثل هذه ، تصبح SRAM هي السلعة الأكثر شيوعًا. في مكتبة Adafruit ، يشغل المخزن المؤقت 128 × 64 OLED 1 كيلو بايت وحده ، وهو ما يمثل حوالي نصف الذاكرة في ATMega328p. لذلك أصبحت إدارة الذاكرة الذكية أكثر أهمية من أي وقت مضى.

- مع هياكل البيانات الكبيرة ، سوف تتراكم البيانات المحفوظة وتستهلك مساحة كبيرة. من أجل تقليل البصمة الذاكرة للمتغيرات الخاصة بي ، استخدمت أنواع بيانات أصغر (مثل القصيرة والبايت) عندما يمكنني ذلك.

- عادةً ما يتم تخزين السلاسل في ذاكرة SRAM ، ولكن استخدام الوظيفة F () سيضعها في PROGMEM بدلاً من ذلك ، مما يوفر الذاكرة الثمينة.

ملي:

- من أجل تحقيق توقيت أكثر دقة لدورات اللعبة ، استخدم وظيفة ميلي (). هناك الكثير من البرامج التعليمية والأمثلة الجيدة على الإنترنت.

التحديد المسبق:

- استخدم التوجيه #define preprocessor كطريقة سهلة لتعيين قيم دائمة في الكود.

اختبار:

- اختبر الكود الخاص بك كما تذهب. سيكون من الأسهل بكثير التخلص من الأخطاء.

الخطوة 3: استمتع

استمتع بلعبة الثعبان الجديدة!

(أعلم أنني فزت بـ 20 نقطة في الفيديو أعلاه ، يمكنك تعيين شرط الفوز أعلى في الكود الخاص بي.)

أشياء للتوسع فيها:

  • بطارية لسهولة النقل
  • أزرار أكثر أمانًا
  • لعبة ثعبان أصغر
  • المزيد من الألعاب؟

موصى به: