תוכן עניינים:
- שלב 1: לוחות ESP32, התקנת Arduino IDE ותצורת ספריית VGA
- שלב 2: העלאת "ESP32_VGA_Tetris_Snake_Breakout_Bomber_V1.0"
- שלב 3: חיבור יציאת VGA
- שלב 4: חבר את ארבעת הכפתורים
- שלב 5: חבר את הג'ויסטיק
- שלב 6: סיכום והכרה
וִידֵאוֹ: משחקי ארקייד וג'ויסטיק ESP32 VGA: 6 שלבים (עם תמונות)
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:13
במדריך זה אראה כיצד לשחזר ארבעה משחקים כמו ארקייד - טטריס - נחש - פריצה - מפציץ - באמצעות ESP32, עם הפלט עבור צג VGA.
הרזולוציה היא 320 על 200 פיקסלים, בשמונה צבעים. עשיתי בעבר גרסה עם Arduino Uno (ראו כאן), אך הרזולוציה הייתה 120 x 60 פיקסלים בלבד, 4 צבעים, וזיכרון Arduino כמעט מלא. הודות לביצועים הגדולים יותר של ESP32, הרזולוציה והמשחק גבוהים יותר. יתר על כן, עדיין יש הרבה זיכרון זמין, ולכן הוספת משחקים חדשים בעתיד תהיה פשוטה.
אני גם יראה חם לחיבור ג'ויסטיק פשוט באמצעות כבל RS232. אני משתמש באותו pinout של ה- Commodore 64.
פרויקט זה מתאפשר על ידי ספריית ה- VGA המדהימה של ESP32 שנכתבה על ידי Fabrizio Di Vittorio. ראה כאן לפרטים נוספים.
שלב 1: לוחות ESP32, התקנת Arduino IDE ותצורת ספריית VGA
קודם כל אתה צריך לרכוש גרסה 1 או למעלה של ESP32. ישנן גרסאות רבות זמינות, אך אני ממליץ לבחור אחת עם סיכות רבות, עדיף דגם כמו זו שבתמונה זו, עם 38 סיכות. אני משתמש בגרסה זו, אבל אני חושב שגם רבות אחרות בסדר. ב- eBay תוכלו למצוא דגם זה בפחות מ -7 יורו, כולל משלוח.
לאחר קבלת הלוח, עליך להמשיך בשלושת שלבי המשנה הבאים:
- התקן את ה- IDE האחרון של Arduino
- הגדר את ESP32 ב- IDE ו-
- הורד והתקן את ספריית VGA
שלב שלב 1. ישנן שיטות שונות לתכנת את ESP32, אך כאן עליך להשתמש ב- Arduino IDE (אני משתמש בגירסה 1.8.9, אגב). כדי להתקין אותו, אתה יכול לעבור לדף Arduino IDE ולפעול לפי ההוראות.
שלב שלב 2. לאחר ביצוע הפעולה הקודמת, עליך להגדיר את ה- ESP32 שלך ב- Arduino IDE. זה לא טריוויאלי, מכיוון ש- ESP32 אינו (עדיין?) יליד בו. תוכל לעקוב אחר הדרכה זו או את השלבים הבאים.
1) פתח את ה- IDE של Arduino
2) פתח את חלון ההעדפות, קובץ/העדפה, לחלופין הקש על "Ctrl+פסיק"
3) עבור אל "כתובות אתרים נוספות של מנהל הלוח", העתק והדבק את הטקסט הבא:
https://dl.espressif.com/dl/package_esp32_index.js…
ולחץ על הלחצן אישור.
4) מנהל לוחות פתוחים. עבור אל כלים/לוח/מנהל לוחות …
5) חפש את ESP32 ולחץ על כפתור ההתקנה של "ESP32 by Espressif Systems":
6) בשלב זה, כאשר אתה מתחבר לראשונה ל- ESP32 שלך, עליך לבחור את הדגם הנכון ברשימה הארוכה של לוחות ESP32 הזמינים (ראה תמונה בשלב זה). במקרה של ספק לגבי המודל, פשוט בחר את הגנרית, כלומר הראשונה. זה עובד לי.
7) המערכת צריכה לבחור גם את יציאת ה- USB (COM) הנכונה ואת מהירות ההעלאה (בדרך כלל 921600). בשלב זה יש ליצור את החיבור בין המחשב שלך ללוח ESP32.
שלב 3. לבסוף עליך להתקין את ספריית VGA של FabGL. לחץ כאן להורדת הקובץ הדחוס המלא. פתח אותו ועתק את התיקייה שהתקבלה (FabGL-master) בתיקיית ספריות Arduino IDE, שנראית כך:
"… / arduino-1.8.12 / ספריות".
שלב 2: העלאת "ESP32_VGA_Tetris_Snake_Breakout_Bomber_V1.0"
הורד את ESP32_VGA_Tetris_Snake_Breakout_Bomber_V1.0.zip בתחתית שלב זה. פתח ופתח אותו עם Arduino IDE, ולאחר מכן העלה אותו ל- ESP32 שלך. אם אין לך הודעות שגיאה, הקוד כבר אמור לפעול ואתה רק צריך לחבר את יציאת VGA ואת הלחצנים (או הג'ויסטיק).
שלב 3: חיבור יציאת VGA
אתה צריך את החלקים הבאים:
- מחבר DSUB15, כלומר מחבר נקבה VGA או כבל VGA שיש לחתוך.
- שלושה נגדים של 270 אוהם.
חבר את פין ESP32 GPIO 2, 15 ו- 21 ל- VGA אדום, ירוק וכחול בהתאמה, באמצעות הנגדים של 270 אוהם.
חבר את VGA Hsync ו- Vsync ל- ESP32 GPIO סיכות 17 ו -4 בהתאמה.
חבר את פיני מחברי DSUB15 5, 6, 7, 8 ו- 10 ל- ESP32 GND.
להגדרת סיכת המחבר VGA DSUB15, עיין בתמונה בשלב זה. הערה, זהו צד ההלחמה של המחבר הנקבי.
שלב 4: חבר את ארבעת הכפתורים
אם אין לך ג'ויסטיק C64 תוכל לחבר ארבעה כפתורים בעקבות שלב זה. אם יש לך את הג'ויסטיק, תוכל לדלג על שלב זה ולקפוץ לשלב הבא, אך תוכל בכל זאת לחבר את הכפתורים ואת הג'ויסטיק (הם ממילא "במקביל").
הסכימה בשלב זה מראה כיצד לחבר כפתור בודד (פתוח בדרך כלל) מ- +5V לסיכה הנתונה של ESP32.
שים לב שאתה צריך גם לחבר את הפין הנתון ל- ESP ל- GND באמצעות הנגד של 1 עד 5 קאוהם. בדרך זו כאשר הכפתור משתחרר (פתוח) סיכת ה- ESP נמצאת באפס וולט בדיוק. ליתר דיוק, עליך לחבר ארבעה כפתורים לפי הסדר הבא:
- הצמד 12 ללחצן הימני
- הצמד 25 עד לחצן למעלה
- הצמד 14 ללחצן שמאלי
- הצמד 35 ללחצן למטה
שלב 5: חבר את הג'ויסטיק
ג'ויסטיק C64 מכיל את הסיכה המוצגת בתמונה הראשונה של שלב זה. כדי לחבר אותו ל- ESP32, אתה צריך מחבר זכר DSUB בעל 9 פינים (כלומר, שקע), כפי שמוצג בתמונה השנייה. הסרתי אחד עם סיכות חשופות מלוח אלקטרוני ישן. אתה יכול להשתמש באקדח חום כדי להסיר אותו (אבל עשה זאת בחוץ!).
עליך לחבר את הפינים לפי הסדר המספרי בתמונות אלה. שים לב שהסכימה מתייחסת לצד הג'ויסטיק, ולכן היא מייצגת את החיבור של התקע הנקבי שלו. לשקע (זכר) לחיבור ל- ESP32 יש סיכות בעלות "מראה". במקרה של ספק, זכור כי מספר הסיכה מדווח תמיד על המחברים הזכר והנקבה, כפי שמוצג בתמונה השלישית.
אם ברצונך לשלוט במשחקים באמצעות הג'ויסטיק בלבד, חבר את הפין המשותף (9) שלו ל- ESP32 +5V ואת סיכות הג'ויסטיק 1, 2, 3, 4 ו -6 לפינים שניתנו ל- ESP בהתאם לרשימה הבאה.
- סיכה ESP 12 עד לחצן ימין (סיכת RS232 4)
- סיכת ESP 14 עד לחצן שמאלי (סיכת RS232 3)
- כפתור ESP 35 עד למטה (סיכה RS232 2)
- לחצן סיכת ESP 25 עד למעלה (סיכה RS232 1 ו -6, כלומר ירי ג'ויסטיק)
שים לב שסיכות ESP 12, 14, 25 ו -35 חייבות להיות מחוברות גם ל- GND באמצעות הנגד של 1 עד 5 קאוהם. באופן זה כאשר הכפתור משתחרר (פתוח) סיכת ה- ESP נמצאת באפס וולט בדיוק.
מיקום הג'ויסטיק NB2 וכפתור האש מחוברים יחדיו לסיכת ESP 25-
חיברתי ארבעה כפתורים בלוח המחשב האישי, בדרך זו אני לא צריך את הג'ויסטיק כדי לשחק (אם כי עם הג'ויסטיק זה הרבה יותר מצחיק). שוב, סיכה RS232 9 חייבת להיות מחוברת ל- +5 V וסיכות הג'ויסטיק נמצאות במקביל לכפתורים.
שלב 6: סיכום והכרה
אם הכל עובד כמו שצריך, פשוט חבר את צג ה- VGA ותוכל ליהנות ממשחק בסגנון ישן!
אתה יכול גם לצייר ערכת מנדלברוט ברזולוציה של 640 x 350 פיקסלים, רק כדי לבדוק את יכולות ספריית VGA.
שים לב שהקוד כתוב כך שניתן להוסיף משחקים אחרים בעתיד בקלות (ל- ESP32 יש מספיק מקום!). אם הפרויקט הזה מקבל מספיק עניין, אני יכול לעשות זאת …
לבסוף, אני רוצה להביע את הטנקים שלי לפבריציו די ויטוריו על ספריית ה- ESP32 VGA המדהימה שלו. לפרטים נוספים, דוגמאות ו… פולשי שטח, בקר באתר שלו.
מוּמלָץ:
צג משחקי LED מעץ המופעל על ידי Raspberry Pi Zero: 11 שלבים (עם תמונות)
תצוגת משחקי LED מעץ מופעלת על ידי Raspberry Pi Zero: פרויקט זה מממש תצוגת LED מבוססת WS2812 בגודל 20x10 פיקסלים בגודל 78x35 ס"מ הניתנת להתקנה בקלות בסלון למשחקי רטרו. הגרסה הראשונה של מטריצה זו נבנתה בשנת 2016 ונבנתה מחדש על ידי אנשים רבים אחרים. ההוצאה הזו
משחקי Arduino תצוגת LED בשורה: 7 שלבים (עם תמונות)
משחקי Arduino In-Line משחקי Arduino: aka מערכת משחקים לתצוגת סולם LED. Attiny-85 המצויד בחומרה ותוכנה להפעלת " וידאו " משחקים, על תצוגת LED מובנית. יש לו תצוגת סולם LED מרובת 12, ותומך בעד 6 כניסות לחצנים ואופציונלי
משחקי 4 כפתורים באמצעות קלט אנלוגי אחד: 6 שלבים (עם תמונות)
4 משחקי כפתורים באמצעות קלט אנלוגי אחד: מדריך זה מתמקד בשימוש בקו קלט אנלוגי אחד לכפתורים מרובים הניתנים לזיהוי ללא קשר אחד לשני. וכדי להדגיש את השימוש בלחצנים אלה כלולה תוכנה למשחק ארבעה משחקי 4 כפתורים שונים. כל המשחקים (8 ב
ג'ויסטיק ארקייד DIY: 3 שלבים
ג'ויסטיק ארקייד DIY: זהו ג'ויסטיק ארקייד שהכנתי. ג'ויסטיק הארקייד עצמו עשוי מאפס באמצעות מתגי מיקרו רולר, אין שימוש במודול ג'ויסטיק ארקייד מוכן מראש. קיבלתי את הרעיון הזה ממישהו ב- Maker Faire סינגפור לשנת 2016, שם זכרתי את
הפעל את משחקי Steam שלך על ערכת ארקייד רטרו עם פטל פי: 7 שלבים
הפעל את משחקי Steam שלך בערכת רטרו ארקייד עם Raspberry Pi: האם יש לך חשבון Steam עם כל המשחקים האחרונים? מה עם ארון ארקייד? אם כן, מדוע שלא תשלב את שניהם למכונת משחקים מדהימה של Steam Streaming. הודות לאנשים ב- Steam, כעת תוכל להזרים את המשחקים האחרונים מהמחשב האישי שלך או מאמא