جدول المحتويات:
- الخطوة 1: توصيل أسلاك جهاز التحكم
- الخطوة 2: فك الشفرة وتشغيلها
- الخطوة 3: إعداد Project 64
- الخطوة 4: كود اردوينو في العمق
- الخطوة 5: المراجع
فيديو: استخدم Arduino مع وحدة التحكم N64: 5 خطوات (بالصور)
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:42
هناك برامج تعليمية لاستخدام وحدة تحكم NES مع Arduino ، ولكن استخدام وحدة التحكم N64 الأكثر تعقيدًا وعصا التحكم التناظرية لها جاذبية واضحة. إذا كان لديك Arduino في الجوار ولا ترغب في شراء Adaptoid ، فإن هذه التعليمات ستجعل من الممكن لعب ألعاب مقلدة في Project 64 باستخدام Ardunio ووحدة التحكم N64 ، فهل هذا صعب؟ / هل سيتلف أشيائي؟ لن يؤدي هذا إلى تعديل وحدة التحكم الخاصة بك بأي شكل من الأشكال ، كما أن الأسلاك بسيطة للغاية ، لذلك إذا فعلت كل شيء بعناية فلن يكون هناك أي خطر على وحدة التحكم الخاصة بك ، ويمكنك فكها في أي وقت لاستخدامها مع وحدة التحكم N64. تحتاج: Arduino - 30 دولارًا - معالجة 1.0 - مجانًا برنامج أردوينو - 3 قطع مجانية من الأسلاك - كبل USB مجاني (آمل)
الخطوة 1: توصيل أسلاك جهاز التحكم
أول شيء عليك القيام به هو توصيل Arduino بجهاز التحكم. تستخدم وحدة التحكم ثلاثة خيوط فقط: + 3.3V ، والإشارة ، والأرض. بالنظر مباشرة إلى القابس ، تكون الأرض في أقصى اليسار ، والإشارة في المنتصف ، و + 3.3 فولت على اليمين. باستخدام السلك ، قم بتوصيل الأرض و + 3.3 فولت بالمسامير المعنية على Arduino ، وقم بتوصيل سلك الإشارة بدبوس Digital 2 على Ardunio. ملاحظة: إذا كان لديك رمز آخر على Arduino ، فيجب عليك فصل وحدة التحكم وتحميلها الكود الجديد من الصفحة التالية إلى Arduino قبل تشغيله مع وحدة التحكم المرفقة. قم بتوصيل Arduino بتوصيل كابل USB وستحصل Arduino على الطاقة.
الخطوة 2: فك الشفرة وتشغيلها
تم كتابة هذا الرمز بواسطتي ، مع أجزاء من ملف N64_Arduino استنادًا إلى رمز التجميع الذي كتبه Andrew Brown. أرشيفات ZIP: يحتوي الملفان Zip أدناه على الكود المطلوب لتشغيل Arduino ثم تفسير البيانات التي يرسلها إلى الكمبيوتر. يجب تجميع ملف N64_Arduino في Arduino IDE ، ويعمل N64_Controller في معالجة 1.0. N64_Arduino يجب تحميل ملف PDE هذا إلى Arduino وتشغيله دون أي عوائق إذا كان لديك كل شيء متصل بشكل صحيح. يقوم ببساطة بالاستعلام عن وحدة التحكم N64 للحصول على البيانات الموجودة على الأزرار والعصا التناظرية وإرسالها مرة أخرى إلى الكمبيوتر عبر المنفذ التسلسلي. من السهل تعديله ، على سبيل المثال ، يمكنك استخدام الطرق من هذا الملف للاستعلام عن وحدة تحكم واستخدام البيانات لتشغيل روبوت Arduino بدلاً من إرساله مرة أخرى إلى الكمبيوتر. البيانات المرسلة بواسطة Arduino وتحويلها إلى ضغطات لوحة مفاتيح يمكنك تعيينها إلى محاكي مثل Project 64. قد تحتاج إلى تغيير الخط String portName = Serial.list () [1] ؛ لمطابقة Arduino الخاص بك ، يجب أن يكون إما Serial.list () [0] ؛ Serial.list () [1] ، أو Serial.list () [2] ؛ تحرير: أضف "import java.awt. Robot؛" "استيراد java.awt. AWTException ؛" "import java.awt.event. InputEvent؛" إلى الكود إذا كنت تستخدم معالجة 1.1N64_Controller_mouse هذا هو نفسه N64_Controller ، فيما عدا أن العصا التناظرية تتحكم بالماوس ، وليس مفاتيح الأسهم. A و B هما النقر الأيمن والأيسر ، على التوالي. لتنشيط الماوس ، اضغط على زر البدء في وحدة التحكم الخاصة بك.
الخطوة 3: إعداد Project 64
قبل أن تتمكن من استخدام وحدة التحكم ، يجب توصيل Arduino وتشغيل الكود الذي قمت بتنزيله في الخطوة الأخيرة ، ويجب أن تكون المعالجة 1.0 مفتوحة مع تشغيل برنامج N64_Controller. اختبرها في Notepad ، والضغط على الزر A يجب أن تكتب A ، B يجب أن تكتب B ، إلخ. لذا الآن لديك وحدة تحكم عاملة (نأمل) وتريد أن تلعب بعض الألعاب. -emu.com/downloads/Set Key Mappings ابدأ تشغيل PJ 64 وافتح قائمة الإعدادات أولاً (Ctrl + T). قم بتغيير وحدة التحكم في الإدخال إلى الإدخال المباشر لـ N-Rage. افتح قائمة "تكوين وحدة التحكم الإضافية" واضبط التعيينات باستخدام وحدة التحكم. ابدأ اللعب! يجب أن تكون جاهزًا للبدء الآن! قم بتنزيل بعض ROM وابدأ في الاستمتاع بمحول Homebrew N64.
الخطوة 4: كود اردوينو في العمق
بروتوكول N64 يتم تشفير البتات المرسلة من وإلى وحدة التحكم N64 على واجهة السلك الواحد بنبضات عريضة 4 s. A '0' هي 3s منخفضة و 1 s عالية. A '1' هي 1 منخفضة و 3 s عالية. يستخدم كود Arduino في الطريقتين N64_send أو N64_receive رمز التجميع المحدد التوقيت بعناية والذي كتبه أندرو براون لضبط خط البيانات للتواصل مع وحدة التحكم. يتم استخدام الكتل nop لانتظار الكميات المناسبة من s قبل استقصاء سطر إرسال البيانات. عند بدء التشغيل ، يتم إرسال 0x00 إلى وحدة التحكم ، وبعد ذلك يكون الأمر الوحيد المستخدم هو 0x01 للاستعلام عن حالة وحدة التحكم. تشفير البيانات عند استلام البيانات بعد 0x01 ، تصل إلى 16 بت من معلومات الزر و 16 بت من معلومات عصا التحكم التناظرية. ستبدو البيانات بالشكل 44000000000000400044440044000444. تنسيق البتات هو: A ، B ، Z ، Start ، Dup ، Ddown ، Dleft ، Dright ، 0 ، 0 ، L ، R ، Cup ، Cdown ، Cleft ، Cright + 16 بت من التناظرية موقف العصا. يمر الأسلوب translate_raw_data () عبر 32 بت ، وإدخالها في البنية N64_status. أول 16 بت بسيطة 1 أو 0 ، ولكن آخر 16 بت يتم ترجمتها إلى عدد صحيح تقريبًا في النطاق (-80 ، 80) بواسطة لـ (i = 0 ؛ i <8 ؛ i ++) {N64_status.stick_x | = N64_raw_dump [16 + أنا]؟ (0x80 >> i): 0 ؛ } بعد أن تكون البيانات في هذا النموذج البسيط ، من السهل أن تفعل بها ما تريده. في هذه الحالة ، يتم إرسالها ببساطة عبر المنفذ التسلسلي في طريقة الحلقة () كسلسلة من البيانات الثنائية ذات عددين صحيحين لقيمتي x و y. قد تبدو البيانات المرسلة عبر المنفذ التسلسلي كما يلي: 0400000000000400 63-67 مما يعني أنه تم الضغط على زرين وكان عصا التحكم عند 63 ، -67.
الخطوة 5: المراجع
كان مشروع Andrew Brown لإنشاء gamecube إلى محول N64 باستخدام Arduino لا يقدر بثمن أثناء الترميز لهذا المشروع:
يمكن العثور على مخططات مفيدة هنا: https://www.raphnet.net/electronique/gc_n64_usb/index_en.php يمكن العثور على معلومات حول بروتوكول ملكية وحدات التحكم N64 هنا:
موصى به:
وحدة طاقة إنترنت الأشياء: إضافة ميزة قياس طاقة إنترنت الأشياء إلى وحدة التحكم في شحن الطاقة الشمسية لدي: 19 خطوة (بالصور)
وحدة طاقة إنترنت الأشياء: إضافة ميزة قياس طاقة إنترنت الأشياء إلى وحدة التحكم في شحن الطاقة الشمسية الخاصة بي: مرحبًا بالجميع ، أتمنى أن تكونوا جميعًا رائعون! في هذا الدليل ، سأوضح لك كيف صنعت وحدة قياس طاقة إنترنت الأشياء التي تحسب كمية الطاقة التي تولدها الألواح الشمسية الخاصة بي ، والتي يتم استخدامها بواسطة جهاز التحكم في الشحن الشمسي الخاص بي
استخدم برنامج Homie الثابت لتشغيل وحدة تبديل Sonoff (تعتمد على ESP8266): 5 خطوات (بالصور)
استخدم برنامج Homie الثابت لتشغيل وحدة تبديل Sonoff (تستند إلى ESP8266): هذه متابعة قابلة للتوجيه ، لقد كتبت هذا بعد قليل من & quot؛ إنشاء أجهزة Homie لإنترنت الأشياء أو أتمتة المنزل & quot ؛. كان التركيز الأخير على المراقبة الأساسية (DHT22 ، DS18B20 ، الضوء) حول لوحات D1 Mini ، هذه المرة ، أود أن أوضح كيف
استخدم وحدة HC-05 Bluetooth لتحقيق اتصال Micro: bit بالهاتف المحمول: 9 خطوات (بالصور)
استخدم وحدة HC-05 Bluetooth لتحقيق اتصال Micro: bit بالهاتف المحمول: في الفصل استخدم وحدة HC-06 Bluetooth لتحقيق اتصال Micro: bit بالهاتف المحمول ، تحدثنا عن كيفية استخدام HC-06 لتحقيق التواصل بين الميكرو: بت والهاتف المحمول. باستثناء HC-06 ، هناك وحدة بلوتوث مشتركة أخرى
استخدم وحدة HC-06 Bluetooth لتحقيق اتصال Micro: bit بالهاتف المحمول: 8 خطوات (بالصور)
استخدم وحدة HC-06 Bluetooth لتحقيق اتصال Micro: bit بالهاتف المحمول: أخبرني الكثير من الأصدقاء من حولي الذين يلعبون micro: bit أن اتصال Bluetooth الخاص بـ micro: bit غير مستقر. من السهل قطع الاتصال. إذا استخدمنا micropython ، فلا يمكن استخدام البلوتوث. قبل أن يتم حل هذه المشكلة عن طريق مايكرو: بت أوفيس
استخدم وحدة Bluetooth 4.0 HC-08 للتحكم في المصابيح القابلة للعنونة - برنامج تعليمي لـ Arduino Uno: 4 خطوات (بالصور)
استخدم وحدة Bluetooth 4.0 HC-08 للتحكم في المصابيح القابلة للعنونة - برنامج تعليمي لـ Arduino Uno: هل تعمقت في وحدات الاتصال حتى الآن مع Arduino؟ يفتح Bluetooth عالماً من الإمكانيات لمشاريع Arduino الخاصة بك واستخدام إنترنت الأشياء. سنبدأ هنا بخطوة صغيرة ونتعلم كيفية التحكم في مصابيح LED القابلة للعنونة باستخدام SMA