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

ألعاب ESP32 VGA Arcade وعصا التحكم: 6 خطوات (بالصور)
ألعاب ESP32 VGA Arcade وعصا التحكم: 6 خطوات (بالصور)

فيديو: ألعاب ESP32 VGA Arcade وعصا التحكم: 6 خطوات (بالصور)

فيديو: ألعاب ESP32 VGA Arcade وعصا التحكم: 6 خطوات (بالصور)
فيديو: Он может «Отслеживать ваше местоположение» !!! (+9 проектов ESP32) 2024, يوليو
Anonim
Image
Image
ألعاب ESP32 VGA Arcade وعصا التحكم
ألعاب ESP32 VGA Arcade وعصا التحكم
ألعاب ESP32 VGA Arcade وعصا التحكم
ألعاب ESP32 VGA Arcade وعصا التحكم

سأوضح في هذا الدليل كيفية إعادة إنتاج أربعة أركيد مثل الألعاب - Tetris - Snake - Breakout - Bomber - باستخدام ESP32 ، مع إخراج شاشة VGA.

الدقة 320 × 200 بكسل ، بـ 8 ألوان. لقد قمت سابقًا بعمل إصدار باستخدام Arduino Uno (انظر هنا) ، لكن الدقة كانت 120 × 60 بكسل فقط ، و 4 ألوان ، وكانت ذاكرة Arduino ممتلئة تقريبًا. بفضل الأداء الرائع لـ ESP32 ، تكون كل من الدقة وإمكانية التشغيل أعلى. علاوة على ذلك ، لا يزال هناك الكثير من الذاكرة المتاحة ، وبالتالي فإن إضافة ألعاب جديدة في المستقبل سيكون أمرًا سهلاً.

سأعرض أيضًا ساخنًا لتوصيل عصا تحكم بسيطة عبر كبل RS232. أنا أستخدم نفس pinout الخاص بـ Commodore 64 one.

أصبح هذا المشروع ممكنًا بفضل مكتبة ESP32 VGA الرائعة التي كتبها فابريزيو دي فيتوريو. انظر هنا لمزيد من التفاصيل.

الخطوة 1: لوحات ESP32 وتثبيت Arduino IDE وتكوين مكتبة VGA

لوحات ESP32 وتثبيت Arduino IDE وتكوين مكتبة VGA
لوحات ESP32 وتثبيت Arduino IDE وتكوين مكتبة VGA
لوحات ESP32 وتثبيت Arduino IDE وتكوين مكتبة VGA
لوحات ESP32 وتثبيت Arduino IDE وتكوين مكتبة VGA
لوحات ESP32 وتثبيت Arduino IDE وتكوين مكتبة VGA
لوحات ESP32 وتثبيت Arduino IDE وتكوين مكتبة VGA

بادئ ذي بدء ، تحتاج إلى شراء نسخة ESP32 1 أو أعلى. هناك العديد من الإصدارات المتاحة ، لكني أوصي باختيار واحد به العديد من المسامير ، ويفضل نموذجًا مثل الذي في هذه الصورة ، مع 38 دبوسًا. أنا أستخدم هذا الإصدار ، لكنني أعتقد أن العديد من الآخرين بخير أيضًا. على موقع ئي باي ، يمكنك العثور على هذا النموذج بسعر أقل من 7 يورو ، بما في ذلك التسليم.

بمجرد حصولك على اللوحة ، ستحتاج إلى متابعة الخطوات الفرعية الثلاث التالية:

  1. قم بتثبيت آخر Arduino IDE
  2. قم بتكوين ESP32 في IDE و
  3. قم بتنزيل وتثبيت مكتبة VGA

الخطوة الفرعية 1. هناك طرق مختلفة لبرمجة ESP32 ، ولكن هنا تحتاج إلى استخدام Arduino IDE (بالمناسبة ، أستخدم الإصدار 1.8.9). لتثبيته ، يمكنك الانتقال إلى صفحة Arduino IDE واتباع التعليمات.

الخطوة الفرعية 2. بمجرد الانتهاء من العملية السابقة ، ستحتاج إلى تكوين ESP32 داخل Arduino IDE. هذا ليس بالأمر التافه ، لأن ESP32 ليس (حتى الآن) أصليًا فيه. يمكنك اتباع هذا البرنامج التعليمي ، أو الخطوات التالية.

1) افتح Arduino IDE

2) افتح نافذة التفضيلات ، ملف / تفضيل ، أو اضغط على "Ctrl + فاصلة"

3) انتقل إلى "عناوين URL الإضافية لمدير مجلس الإدارة" ، وانسخ والصق النص التالي:

https://dl.espressif.com/dl/package_esp32_index.js…

وانقر على زر موافق.

4) فتح مدير المجالس. انتقل إلى Tools / Board / Boards Manager …

5) ابحث عن ESP32 واضغط على زر التثبيت لـ "ESP32 by Espressif Systems":

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

7) يجب أن يختار النظام أيضًا منفذ USB الصحيح (COM) وسرعة التحميل (عادةً 921600). في هذه المرحلة ، يجب إنشاء الاتصال بين جهاز الكمبيوتر الخاص بك ولوحة ESP32.

الخطوة الفرعية 3. أخيرًا عليك تثبيت مكتبة FabGL VGA. انقر هنا لتنزيل الملف المضغوط الكامل. قم بفك ضغطه وانسخ المجلد الناتج (FabGL-master) في مجلد مكتبات Arduino IDE ، والذي يشبه:

"… / arduino-1.8.12 / مكتبات".

الخطوة الثانية: تحميل "ESP32_VGA_Tetris_Snake_Breakout_Bomber_V1.0"

قم بتنزيل ESP32_VGA_Tetris_Snake_Breakout_Bomber_V1.0.zip في الجزء السفلي من هذه الخطوة. قم بفك ضغطه وافتحه باستخدام Arduino IDE ، ثم قم بتحميله على ESP32 الخاص بك. إذا لم تكن لديك رسائل خطأ ، فيجب أن يكون الرمز قيد التشغيل بالفعل وتحتاج فقط إلى توصيل منفذ VGA والأزرار (أو عصا التحكم).

الخطوة الثالثة: توصيل منفذ VGA

توصيل منفذ VGA
توصيل منفذ VGA

أنت بحاجة إلى الأجزاء التالية:

  • موصل DSUB15 ، أي موصل VGA أنثى أو كابل VGA ليتم قطعه.
  • ثلاث مقاومات 270 أوم.

قم بتوصيل ESP32 GPIO pin 2 و 15 و 21 بـ VGA الأحمر والأخضر والأزرق على التوالي ، من خلال مقاومات 270 أوم.

قم بتوصيل VGA Hsync و Vsync بدبابيس ESP32 GPIO 17 و 4 على التوالي.

قم بتوصيل دبابيس موصلات DSUB15 5 و 6 و 7 و 8 و 10 بـ ESP32 GND.

للتعرف على تعريف دبوس موصل VGA DSUB15 ، انظر الصورة في هذه الخطوة. ملحوظة ، هذا هو جانب اللحام للموصل الأنثوي.

الخطوة 4: قم بتوصيل الأزرار الأربعة

قم بتوصيل الأزرار الأربعة
قم بتوصيل الأزرار الأربعة
قم بتوصيل الأزرار الأربعة
قم بتوصيل الأزرار الأربعة
قم بتوصيل الأزرار الأربعة
قم بتوصيل الأزرار الأربعة

إذا لم يكن لديك عصا تحكم C64 ، فيمكنك توصيل أربعة أزرار باتباع هذه الخطوة. إذا كان لديك عصا التحكم ، فيمكنك تخطي هذه الخطوة والانتقال إلى الخطوة التالية ، ولكن يمكنك على أي حال توصيل كل من الأزرار وعصا التحكم (وهما على أي حال "بالتوازي").

يوضح المخطط في هذه الخطوة كيفية توصيل زر واحد (مفتوح عادة) من + 5 فولت إلى دبوس ESP32 المحدد.

لاحظ أنك تحتاج أيضًا إلى توصيل دبوس ESP المحدد بحوض GND بمقاوم من 1 إلى 5 كيلو أوم. بهذه الطريقة عندما يتم تحرير الزر (مفتوح) يكون دبوس ESP عند صفر فولت تمامًا. بشكل أكثر تحديدًا ، تحتاج إلى توصيل أربعة أزرار بالترتيب التالي:

  • دبوس 12 على الزر الأيمن
  • دبوس 25 لأعلى
  • دبوس 14 إلى الزر الأيسر
  • دبوس 35 للزر السفلي

الخطوة 5: قم بتوصيل جويستيك

قم بتوصيل جويستيك
قم بتوصيل جويستيك
قم بتوصيل جويستيك
قم بتوصيل جويستيك
قم بتوصيل جويستيك
قم بتوصيل جويستيك

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

تحتاج إلى توصيل المسامير باتباع الترتيب الرقمي في هذه الصور. لاحظ أن التخطيطي يشير إلى جانب عصا التحكم ، وبالتالي فهو يمثل اتصال قابسه الأنثوي. يحتوي المقبس (الذكر) الذي يتم توصيله بـ ESP32 على المسامير ذات وضع "المرآة". في حالة الشك ، تذكر أنه يتم دائمًا الإبلاغ عن رقم التعريف الشخصي على الوصلات الذكرية والأنثوية ، كما هو موضح في الصورة الثالثة.

إذا كنت ترغب في التحكم في الألعاب باستخدام عصا التحكم فقط ، فقم بتوصيل دبوسها المشترك (9) بـ ESP32 + 5V ، ودبابيس عصا التحكم 1 و 2 و 3 و 4 و 6 إلى دبابيس ESP المعينة التي تتبع القائمة التالية.

  • ESP pin 12 إلى الزر الأيمن (RS232 pin 4)
  • ESP pin 14 to left button (RS232 pin 3)
  • ESP pin 35 to Down button (RS232 pin 2)
  • ESP pin 25 to Up button (RS232 pin 1 و 6 ، على سبيل المثال ، نيران عصا التحكم)

ملحوظة: يجب توصيل دبابيس ESP 12 و 14 و 25 و 35 أيضًا بحوض GND بمقاوم من 1 إلى 5 كيلو أوم. بهذه الطريقة عندما يتم تحرير الزر (مفتوح) يكون دبوس ESP عند صفر فولت تمامًا.

يتم توصيل موضع عصا التحكم NB2 وزر إطلاق النار معًا بـ ESP pin 25-

لقد قمت بتوصيل أربعة أزرار على لوحة الكمبيوتر الشخصي ، وبهذه الطريقة لا أحتاج إلى عصا التحكم للعب (على الرغم من أن عصا التحكم أكثر مرحًا). مرة أخرى ، يجب توصيل دبوس RS232 9 بـ +5 V وتكون دبابيس عصا التحكم موازية للأزرار.

الخطوة السادسة: الخاتمة والتقدير

الخلاصة والشكر والتقدير
الخلاصة والشكر والتقدير

إذا كان كل شيء يعمل بشكل صحيح ، فما عليك سوى توصيل شاشة VGA وستتمكن من الاستمتاع ببعض الألعاب ذات الطراز القديم!

يمكنك أيضًا رسم مجموعة Mandelbrot بدقة 640 × 350 بكسل ، فقط لاختبار إمكانات مكتبة VGA.

لاحظ أن الكود مكتوب بطريقة يمكن من خلالها إضافة الألعاب الأخرى بسهولة في المستقبل (يحتوي ESP32 على مساحة كبيرة!). يحظى هذا المشروع باهتمام كافٍ ، وقد أفعل ذلك …

أخيرًا ، أود أن أعبر عن خزاناتي لـ Fabrizio Di Vittorio عن مكتبته الرائعة ESP32 VGA. لمزيد من التفاصيل والأمثلة و … Space Invaders ، قم بزيارة موقعه.

موصى به: