Sisällysluettelo:

ESP32 VGA Arcade Games ja ohjaussauva: 6 vaihetta (kuvilla)
ESP32 VGA Arcade Games ja ohjaussauva: 6 vaihetta (kuvilla)

Video: ESP32 VGA Arcade Games ja ohjaussauva: 6 vaihetta (kuvilla)

Video: ESP32 VGA Arcade Games ja ohjaussauva: 6 vaihetta (kuvilla)
Video: ESP32 VGA four games & joystick 2024, Heinäkuu
Anonim
Image
Image
ESP32 VGA Arcade Games ja ohjaussauva
ESP32 VGA Arcade Games ja ohjaussauva
ESP32 VGA Arcade Games ja ohjaussauva
ESP32 VGA Arcade Games ja ohjaussauva

Tässä ohjeessa näytän kuinka toistaa neljä arcade -tyyppistä peliä - Tetris - Snake - Breakout - Bomber - käyttämällä ESP32 -laitetta, jonka lähtö on VGA -näyttö.

Resoluutio on 320 x 200 pikseliä, 8 väriä. Olen aiemmin tehnyt version Arduino Unolla (katso täältä), mutta resoluutio oli vain 120 x 60 pikseliä, 4 väriä ja Arduino -muisti oli lähes täynnä. ESP32: n paremman suorituskyvyn ansiosta sekä resoluutio että toistettavuus ovat korkeammat. Lisäksi muistia on vielä runsaasti, joten uusien pelien lisääminen tulevaisuudessa on helppoa.

Näytän myös kuumana yksinkertaisen ohjaussauvan liittämisen RS232 -kaapelin kautta. Käytän samaa Commodore 64: n pinoutia.

Tämä projekti on mahdollista Fabrizio Di Vittorion kirjoittaman mahtavan ESP32 VGA -kirjaston avulla. Katso tästä lisätietoja.

Vaihe 1: ESP32 -levyt, Arduino IDE -asennus ja VGA -kirjaston määritykset

ESP32 -levyt, Arduino IDE -asennus ja VGA -kirjastokokoonpano
ESP32 -levyt, Arduino IDE -asennus ja VGA -kirjastokokoonpano
ESP32 -levyt, Arduino IDE -asennus ja VGA -kirjastokokoonpano
ESP32 -levyt, Arduino IDE -asennus ja VGA -kirjastokokoonpano
ESP32 -levyt, Arduino IDE -asennus ja VGA -kirjastokokoonpano
ESP32 -levyt, Arduino IDE -asennus ja VGA -kirjastokokoonpano

Sinun on ensin ostettava ESP32 -versio 1 tai uudempi. Saatavilla on monia versioita, mutta suosittelen valitsemaan yhden, jossa on monia tappeja, mieluiten tämän kuvan kaltainen malli, 38 nastaa. Käytän tätä versiota, mutta mielestäni myös monet muut ovat hyviä. Ebaysta löydät tämän mallin alle 7 eurolla, sisältäen toimituskulut.

Kun olet saanut taulun, sinun on jatkettava seuraavien kolmen alavaiheen kanssa:

  1. Asenna viimeinen Arduino IDE
  2. Määritä ESP32 IDE- ja
  3. Lataa ja asenna VGA -kirjasto

Alavaihe 1. ESP32: n ohjelmointiin on erilaisia menetelmiä, mutta tässä on käytettävä Arduino IDE: tä (käytän muuten versiota 1.8.9). Voit asentaa sen siirtymällä Arduino IDE -sivulle ja noudattamalla ohjeita.

Alavaihe 2. Kun edellinen toiminto on suoritettu, ESP32 on määritettävä Arduino IDE -laitteeseen. Tämä ei ole triviaalia, koska ESP32 ei ole (vielä?) Natiivi siinä. Voit seurata tätä opetusohjelmaa tai seuraavia vaiheita.

1) avaa Arduino IDE

2) avaa asetusikkuna, Tiedosto/Asetukset, tai paina "Ctrl+pilkku"

3) siirry "Hallituksen ylimääräiset URL -osoitteet" -kohtaan, kopioi ja liitä seuraava teksti:

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

ja napsauta OK -painiketta.

4) Avointen taulujen johtaja. Siirry kohtaan Työkalut/Hallitus/Taulujen hallinta…

5) Etsi ESP32 ja paina ESP32 by Espressif Systems -asennuspainiketta:

6) Tässä vaiheessa, kun kytket ESP32: n ensimmäistä kertaa, sinun on valittava oikea malli käytettävissä olevista ESP32 -korteista (katso tämän vaiheen kuva). Jos olet epävarma mallista, valitse vain yleinen, eli ensimmäinen. Se toimii minulle.

7) järjestelmän tulisi myös valita oikea USB (COM) -portti ja latausnopeus (yleensä 921600). Tässä vaiheessa tietokoneesi ja ESP32 -kortin välinen yhteys on muodostettava.

Vaihe 3. Lopuksi sinun on asennettava FabGL VGA -kirjasto. Lataa koko pakattu tiedosto napsauttamalla tätä. Pura se ja kopioi tuloksena oleva kansio (FabGL-master) Arduino IDE -kirjastojen kansioon, joka näyttää tältä:

"… / Arduino-1.8.12 / kirjastot".

Vaihe 2: Lataaminen "ESP32_VGA_Tetris_Snake_Breakout_Bomber_V1.0"

Lataa ESP32_VGA_Tetris_Snake_Breakout_Bomber_V1.0.zip tämän vaiheen alareunasta. Pura ja avaa se Arduino IDE: llä ja lataa se sitten ESP32 -laitteellesi. Jos sinulla ei ole virheilmoituksia, koodin pitäisi olla jo käynnissä ja sinun tarvitsee vain liittää VGA -portti ja painikkeet (tai ohjaussauva).

Vaihe 3: VGA -portin liittäminen

VGA -portin liittäminen
VGA -portin liittäminen

Tarvitset seuraavat osat:

  • DSUB15 -liitin eli VGA -naarasliitin tai leikattava VGA -kaapeli.
  • kolme 270 ohmin vastusta.

Liitä ESP32 GPIO -nasta 2, 15 ja 21 VGA -punaiseen, vihreään ja siniseen 270 ohmin vastuksen kautta.

Liitä VGA Hsync ja Vsync ESP32 GPIO -nastoihin 17 ja 4.

Liitä DSUB15 -liittimien nastat 5, 6, 7, 8 ja 10 ESP32 GND -liitäntään.

Katso VGA DSUB15 -liittimen nastan määritelmä tämän vaiheen kuvasta. Huom. Tämä on naarasliittimen juotospuoli.

Vaihe 4: Yhdistä neljä painiketta

Yhdistä neljä painiketta
Yhdistä neljä painiketta
Yhdistä neljä painiketta
Yhdistä neljä painiketta
Yhdistä neljä painiketta
Yhdistä neljä painiketta

Jos sinulla ei ole C64 -ohjaussauvaa, voit yhdistää neljä painiketta tämän vaiheen mukaisesti. Jos sinulla on joystick, voit ohittaa tämän vaiheen ja siirtyä seuraavaan, mutta voit kuitenkin yhdistää molemmat painikkeet ja ohjaussauvan (ne ovat joka tapauksessa "rinnakkain").

Tämän vaiheen kaavio osoittaa, kuinka yksi painike (normaalisti auki) kytketään +5 V: sta ESP32 -nastaan.

Huomaa, että sinun on myös kytkettävä ESP -nasta GND: hen 1 - 5 kOhm: n vastuksen läpi. Tällä tavalla, kun painike vapautetaan (auki), ESP -nasta on täsmälleen nolla volttia. Tarkemmin sanottuna sinun on yhdistettävä neljä painiketta seuraavassa järjestyksessä:

  • Nasta 12 oikealle
  • Kiinnitä 25 ylös -painike
  • Nasta 14 vasemmalle -painike
  • Kiinnitä 35 alas -painikkeeseen

Vaihe 5: Liitä ohjaussauva

Liitä ohjaussauva
Liitä ohjaussauva
Liitä ohjaussauva
Liitä ohjaussauva
Liitä ohjaussauva
Liitä ohjaussauva

C64 -ohjaussauvassa on tämän vaiheen ensimmäisessä kuvassa näkyvä pistoke. Sen liittämiseksi ESP32 -laitteeseen tarvitset 9 -nastaisen DSUB -urosliittimen (eli pistorasian), kuten toisessa kuvassa. Poistin vanhalta elektroniselta levyltä yhden paljastetuilla nastoilla. Voit poistaa sen lämpöpistoolilla (mutta tee se ulkona!).

Sinun on liitettävä nastat näiden kuvien numerojärjestyksen mukaisesti. Huomaa, että kaavio viittaa ohjaussauvan puolelle, joten se edustaa naaraspistokkeen liitäntää. Pistorasiassa (uros), joka liitetään ESP32: een, on nastat, joissa on "peilikuvio". Jos olet epävarma, muista, että nastan numero ilmoitetaan aina uros- ja naarasliittimissä, kuten näkyy kolmannessa kuvassa.

Jos haluat ohjata pelejä pelkällä ohjaussauvalla, liitä sen yhteinen nasta (9) ESP32 +5V: een ja ohjaussauvan nastat 1, 2, 3, 4 ja 6 seuraavan luettelon mukaisiin ESP: n nastoihin.

  • ESP -nasta 12 oikealle -painike (RS232 -nasta 4)
  • ESP -nasta 14 vasemmalle (RS232 -nasta 3)
  • ESP -nasta 35 alas -painikkeeseen (RS232 -nasta 2)
  • ESP -nasta 25 ylöspäin -painike (RS232 -nastat 1 ja 6, eli ohjaussauva)

Huomaa, että ESP -nastat 12, 14, 25 ja 35 on myös kytkettävä GND: hen 1-5 kOhm: n vastuksen läpi. Tällä tavalla, kun painike vapautetaan (auki), ESP -nasta on täsmälleen nolla volttia.

NB2-ohjaussauvan YLÖS-asento ja palopainike on kytketty yhteen ESP-nastaan 25-

Olen liittänyt neljä painiketta PC -kortille, joten en tarvitse ohjaussauvaa pelataksesi (vaikka ohjaussauvalla on paljon hauskempaa). Jälleen RS232 -nasta 9 on kytkettävä +5 V: een ja ohjaussauvan tapit ovat painikkeiden rinnalla.

Vaihe 6: Johtopäätös ja tunnustus

Päätelmä ja tunnustus
Päätelmä ja tunnustus

Jos kaikki toimii oikein, kytke vain VGA -näyttö ja voit nauttia vanhasta pelistä!

Voit myös piirtää Mandelbrot -sarjan, jonka resoluutio on 640 x 350 pikseliä, vain testataksesi VGA -kirjaston ominaisuuksia.

Huomaa, että koodi on kirjoitettu siten, että muita pelejä voidaan helposti lisätä tulevaisuudessa (ESP32: ssa on paljon tilaa!). Tämä projekti kiinnostaa tarpeeksi, voin tehdä sen…

Lopuksi haluan ilmaista säiliöni Fabrizio Di Vittorille hänen mahtavasta ESP32 VGA -kirjastostaan. Lisätietoja, esimerkkejä ja… Space Invaders, käy hänen sivustollaan.

Suositeltava: