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

نرد اردوينو لألعاب الطاولة: 4 خطوات
نرد اردوينو لألعاب الطاولة: 4 خطوات

فيديو: نرد اردوينو لألعاب الطاولة: 4 خطوات

فيديو: نرد اردوينو لألعاب الطاولة: 4 خطوات
فيديو: كيف تصنع لعبة dados الشهيرة 2024, يوليو
Anonim

بواسطة RoboCircuits_com

النرد الإلكتروني مع UTSOURCE
النرد الإلكتروني مع UTSOURCE
النرد الإلكتروني مع UTSOURCE
النرد الإلكتروني مع UTSOURCE
مفتاح مستوى الماء باستخدام D882
مفتاح مستوى الماء باستخدام D882
مفتاح مستوى الماء باستخدام D882
مفتاح مستوى الماء باستخدام D882
ساعة الوقت الحقيقي المحيط
ساعة الوقت الحقيقي المحيط
ساعة الوقت الحقيقي المحيط
ساعة الوقت الحقيقي المحيط

حول: YouTuber ، صانع الطائرات بدون طيار المزيد عن RoboCircuits_com »

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

لذلك قررت أن أصنع نردًا إلكترونيًا. لقد استخدمت Arduino لغرضي.

الخطوة 1: DIY Arduino

صُنع اردوينو هذا بواسطتي باستخدام متحكم atmega 328p. يتم طلب ثنائي الفينيل متعدد الكلور لهذا من "jlcpcb.com" لأنها توفر أفضل ثنائي الفينيل متعدد الكلور في فئتها بأسعار منخفضة. ثم قمت بلحام جميع الأجزاء وأخيراً حصلت على Arduino UNO اللطيف المظهر.

يتم تقديم جميع المخططات والملفات في مقالة Webiste الخاصة بي -

الخطوة 2: صنع المشروع

حسنا!!!!

يكفي عن اردوينو. الآن دعونا نجعل المشروع. بالنسبة للقيم العشوائية ، استخدمت وظيفة عشوائية في arduino ID للحصول على القيم من 1 إلى 6 عندما أضغط على الزر. لذا شاهد هذا الفيديو الكامل لتعرف كيف يتم هذا المشروع.

الخطوة 3: الكود

/ * تم تصميم هذا الرمز بواسطة RoboCircuits

Suvbscribe me on youtube https://youtube.com/robocircuits أو قم بزيارة robocircuits.com علينا دائمًا تضمين المكتبة * /

# تضمين "LedControl.h"

/ * نحتاج الآن إلى LedControl للعمل معه. ***** لن تعمل أرقام التعريف الشخصي هذه على الأرجح مع جهازك ***** يتم توصيل دبوس 12 بـ DataIn pin 11 متصل بـ CLK pin 10 متصل بـ LOAD لدينا MAX72XX واحد فقط. * /

LedControl lc = LedControl (12 ، 11 ، 10 ، 1) ؛

/ * ننتظر دائمًا قليلاً بين تحديثات العرض * / وقت تأخير طويل بدون توقيع = 500 ؛ ستة بايت [8] = {B00000000، B11011011، B11011011، B00000000، B00000000، B11011011، B11011011، B00000000} ؛ خمسة بايت [8] = {B00000000، B01100110، B01100110، B00011000، B00011000، B01100110، B01100110، B00000000} ؛ أربعة بايت [8] = {B00000000، B01100110، B01100110، B00000000، B00000000، B01100110، B01100110، B00000000} ؛ ثلاثة بايت [8] = {B11000000، B11000000، B00000000، B00011000، B00011000، B00000000، B00000011، B00000011} ؛ البايت الثاني [8] = {B00000000 ، B00000000 ، B00000000 ، B01100110 ، B01100110 ، B00000000 ، B00000000 ، B00000000} ؛ البايت واحد [8] = {B00000000 ، B00000000 ، B00000000 ، B00011000 ، B00011000 ، B00000000 ، B00000000 ، B00000000} ؛

إعداد باطل () {/ * MAX72XX في وضع توفير الطاقة عند بدء التشغيل ، يتعين علينا إجراء مكالمة تنبيه * / lc.shutdown (0 ، false) ؛ / * اضبط السطوع على قيم متوسطة * / lc.setIntensity (0 ، 8) ؛ / * وامسح الشاشة * / lc.clearDisplay (0) ؛ }

/ * ستعرض هذه الطريقة الأحرف (تحتاج على الأقل 7 × 7 مصابيح LED لرؤية الأحرف بأكملها) * / باطل واحد 1 () {/ * هنا البيانات الخاصة بالأحرف * / / * تعرضها الآن واحدة تلو الأخرى باستخدام حرف صغير تأخير * / lc.setRow (0، 0، واحد [0]) ؛ lc.setRow (0، 1، one [1]) ؛ lc.setRow (0، 2، one [2]) ؛ lc.setRow (0، 3، one [3]) ؛ lc.setRow (0، 4، one [4]) ؛ lc.setRow (0، 5، one [5]) ؛ lc.setRow (0، 6، one [6]) ؛ lc.setRow (0، 7، one [7]) ؛ تأخير (تأخير) ؛ } void two2 () {/ * هنا البيانات الخاصة بالأحرف * / / * تعرضها الآن واحدًا تلو الآخر بتأخير بسيط * / lc.setRow (0، 0، two [0])؛ lc.setRow (0، 1، two [1]) ؛ lc.setRow (0، 2، two [2]) ؛ lc.setRow (0، 3، two [3]) ؛ lc.setRow (0، 4، two [4]) ؛ lc.setRow (0، 5، two [5]) ؛ lc.setRow (0، 6، two [6]) ؛ lc.setRow (0، 7، two [7]) ؛ تأخير (تأخير) ؛ } void three3 () {/ * هنا البيانات الخاصة بالأحرف * / / * تعرضها الآن واحدة تلو الأخرى بتأخير بسيط * / lc.setRow (0، 0، three [0])؛ lc.setRow (0، 1، three [1]) ؛ lc.setRow (0، 2، ثلاثة [2]) ؛ lc.setRow (0، 3، three [3]) ؛ lc.setRow (0، 4، three [4]) ؛ lc.setRow (0، 5، three [5]) ؛ lc.setRow (0، 6، three [6]) ؛ lc.setRow (0، 7، ثلاثة [7]) ؛ تأخير (تأخير) ؛ } void four4 () {/ * هنا البيانات الخاصة بالأحرف * / / * تعرضها الآن أربعة × أربعة بتأخير بسيط * / lc.setRow (0، 0، four [0])؛ lc.setRow (0، 1، أربعة [1]) ؛ lc.setRow (0، 2، أربعة [2]) ؛ lc.setRow (0، 3، أربعة [3]) ؛ lc.setRow (0، 4، أربعة [4]) ؛ lc.setRow (0، 5، أربعة [5]) ؛ lc.setRow (0، 6، أربعة [6]) ؛ lc.setRow (0، 7، أربعة [7]) ؛ تأخير (تأخير) ؛ } void five () {/ * هنا البيانات الخاصة بالأحرف * / / * تعرضها الآن خمسة × خمسة بتأخير بسيط * / lc.setRow (0، 0، five [0])؛ lc.setRow (0، 1، five [1]) ؛ lc.setRow (0، 2، خمسة [2]) ؛ lc.setRow (0، 3، خمسة [3]) ؛ lc.setRow (0، 4، خمسة [4]) ؛ lc.setRow (0، 5، five [5]) ؛ lc.setRow (0، 6، خمسة [6]) ؛ lc.setRow (0، 7، خمسة [7]) ؛

تأخير (تأخير) ؛ } void six6 () {/ * هنا البيانات الخاصة بالأحرف * / / * تعرضها الآن ستة × ستة بتأخير بسيط * / lc.setRow (0، 0، six [0])؛ lc.setRow (0، 1، six [1]) ؛ lc.setRow (0، 2، six [2]) ؛ lc.setRow (0، 3، six [3]) ؛ lc.setRow (0، 4، six [4]) ؛ lc.setRow (0، 5، six [5]) ؛ lc.setRow (0، 6، six [6]) ؛ lc.setRow (0، 7، six [7]) ؛ تأخير (تأخير) ؛ }

حلقة باطلة () {int x؛ إذا (analogRead (A4) == 1000) {x = عشوائي (1 ، 6) ؛ } switch (x) {case 1: one1 ()؛ استراحة؛ الحالة 2: two2 () ؛ استراحة؛ الحالة 3: three3 () ؛ استراحة؛ الحالة 4: four4 () ؛ استراحة؛ الحالة 5: Five5 () ؛ استراحة؛ الحالة 6: six6 () ؛ استراحة؛} }

الخطوة 4: اعجب بالمشاركة

اشترك معنا على يوتيوب -

مثلنا على Facebook -

قم بزيارة -

موصى به: