Kazalo:

Arkadne igre in igralna palica ESP32 VGA: 6 korakov (s slikami)
Arkadne igre in igralna palica ESP32 VGA: 6 korakov (s slikami)

Video: Arkadne igre in igralna palica ESP32 VGA: 6 korakov (s slikami)

Video: Arkadne igre in igralna palica ESP32 VGA: 6 korakov (s slikami)
Video: Joystick game mobile 2024, Julij
Anonim
Image
Image
Arkadne igre in igralna palica ESP32 VGA
Arkadne igre in igralna palica ESP32 VGA
Arkadne igre in igralna palica ESP32 VGA
Arkadne igre in igralna palica ESP32 VGA

V tem navodilu bom pokazal, kako reproducirati štiri arkadne igre - Tetris - Snake - Breakout - Bomber - z uporabo ESP32 z izhodom za monitor VGA.

Ločljivost je 320 x 200 slikovnih pik, v 8 barvah. Prej sem naredil različico z Arduino Uno (glej tukaj), vendar je bila ločljivost le 120 x 60 slikovnih pik, 4 barve, pomnilnik Arduino pa je bil skoraj poln. Zaradi boljših zmogljivosti ESP32 sta ločljivost in igralnost višji. Poleg tega je na voljo še veliko pomnilnika, zato bo dodajanje novih iger v prihodnosti preprosto.

Prikazal bom tudi vročo povezavo preproste krmilne palice prek kabla RS232. Uporabljam isti pinout Commodore 64.

Ta projekt je omogočila odlična knjižnica ESP32 VGA, ki jo je napisal Fabrizio Di Vittorio. Za več podrobnosti glejte tukaj.

1. korak: plošče ESP32, namestitev Arduino IDE in konfiguracija knjižnice VGA

Plošče ESP32, namestitev Arduino IDE in konfiguracija knjižnice VGA
Plošče ESP32, namestitev Arduino IDE in konfiguracija knjižnice VGA
Plošče ESP32, namestitev Arduino IDE in konfiguracija knjižnice VGA
Plošče ESP32, namestitev Arduino IDE in konfiguracija knjižnice VGA
Plošče ESP32, namestitev Arduino IDE in konfiguracija knjižnice VGA
Plošče ESP32, namestitev Arduino IDE in konfiguracija knjižnice VGA

Najprej morate kupiti ESP32 revizijo 1 ali novejšo. Na voljo je veliko različic, vendar priporočam, da izberete eno z mnogimi zatiči, po možnosti model, kot je ta na tej sliki, s 38 zatiči. Uporabljam to različico, vendar mislim, da je tudi veliko drugih v redu. Na ebayu lahko najdete ta model za manj kot 7 evrov, vključno z dostavo.

Ko dobite ploščo, morate nadaljevati z naslednjimi tremi podkoraki:

  1. Namestite zadnji Arduino IDE
  2. Konfigurirajte ESP32 v IDE in
  3. Prenesite in namestite knjižnico VGA

Pod-korak 1. Za programiranje ESP32 obstajajo različne metode, vendar morate tukaj uporabiti Arduino IDE (mimogrede uporabljam različico 1.8.9). Če ga želite namestiti, pojdite na stran Arduino IDE in sledite navodilom.

Pod-korak 2. Ko je prejšnja operacija opravljena, morate svoj ESP32 konfigurirati v Arduino IDE. To ni nepomembno, saj ESP32 v njem (še?) Ni domač. Lahko sledite tej vadnici ali naslednjim korakom.

1) odprite Arduino IDE

2) odprite okno z nastavitvami, datoteka/nastavitve, ali pa pritisnite "Ctrl+vejica"

3) pojdite na “Dodatni URL -ji upravitelja plošč”, kopirajte in prilepite naslednje besedilo:

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

in kliknite gumb V redu.

4) Odprite upravitelja desk. Pojdite na Orodja/Upravni odbor/deske …

5) Poiščite ESP32 in pritisnite gumb za namestitev za „ESP32 by Espressif Systems“:

6) Na tej točki, ko prvič povežete svoj ESP32, bi morali izbrati pravi model na dolgem seznamu razpoložljivih plošč ESP32 (glejte sliko v tem koraku). V primeru dvoma o modelu izberite samo generičnega, torej prvega. Deluje zame.

7) sistem mora izbrati tudi prava vrata USB (COM) in hitrost nalaganja (običajno 921600). Na tej točki je treba vzpostaviti povezavo med računalnikom in ploščo ESP32.

Podkorak 3. Nazadnje morate namestiti knjižnico FabGL VGA. Kliknite tukaj za prenos celotne stisnjene datoteke. Razširite ga in kopirajte nastalo mapo (FabGL-master) v mapo knjižnic Arduino IDE, ki izgleda tako:

"… / Arduino-1.8.12 / knjižnice".

2. korak: nalaganje »ESP32_VGA_Tetris_Snake_Breakout_Bomber_V1.0«

Prenesite ESP32_VGA_Tetris_Snake_Breakout_Bomber_V1.0.zip na dnu tega koraka. Razpakirajte in odprite z Arduino IDE, nato pa ga naložite v svoj ESP32. Če nimate nobenih sporočil o napakah, bi se morala koda že izvajati, samo priključite vrata VGA in gumbe (ali krmilno palčko).

Korak: Priključite vrata VGA

Priključitev vrat VGA
Priključitev vrat VGA

Potrebujete naslednje dele:

  • priključek DSUB15, to je ženski konektor VGA ali kabel VGA, ki ga je treba odrezati.
  • tri upore 270 ohmov.

Pinove 2, 15 in 21 ESP32 GPIO priključite na rdečo, zeleno in modro VGA prek uporov 270 Ohm.

VGA Hsync in Vsync priključite na nožici 17 in 4 ESP32 GPIO.

Pinove 5, 6, 7, 8 in 10 priključkov DSUB15 priključite na ESP32 GND.

Za definicijo priključka VGA DSUB15 si oglejte sliko v tem koraku. Opomba: to je spajkalna stran ženskega priključka.

4. korak: Povežite štiri gumbe

Povežite štiri gumbe
Povežite štiri gumbe
Povežite štiri gumbe
Povežite štiri gumbe
Povežite štiri gumbe
Povežite štiri gumbe

Če nimate krmilne palice C64, lahko po tem koraku povežete štiri gumbe. Če imate ročno krmilno palčko, lahko ta korak preskočite in skočite na naslednjega, vseeno pa lahko povežete oba gumba in krmilno palčko (vseeno sta "vzporedni").

Shema v tem koraku prikazuje, kako priključiti en sam gumb (običajno odprt) od +5V na dani pin ESP32.

Upoštevajte, da morate z vtičem 1 do 5 kOhm priključiti dani pin ESP na GND. Na ta način, ko gumb sprostite (odprete), je pin ESP natančno na nič voltov. Natančneje, morate povezati štiri gumbe v naslednjem vrstnem redu:

  • Pin 12 na desni gumb
  • Pripnite 25 do gumba navzgor
  • Zataknite 14 na levi gumb
  • Pripnite 35 do gumba dol

5. korak: Priključite igralno palico

Priključite igralno palico
Priključite igralno palico
Priključite igralno palico
Priključite igralno palico
Priključite igralno palico
Priključite igralno palico

Krmilna palica C64 ima pinout, prikazan na prvi sliki tega koraka. Če ga želite priključiti na ESP32, potrebujete 9 -polni moški konektor DSUB (tj. Vtičnico), kot je prikazano na drugi sliki. Enega z izpostavljenimi zatiči sem odstranil s stare elektronske plošče. Za odstranitev lahko uporabite toplotno pištolo (vendar to storite na prostem!).

Zatiče morate povezati po številčnem vrstnem redu na teh slikah. Upoštevajte, da se shema nanaša na stran krmilne ročice, zato predstavlja povezavo njegovega ženskega vtiča. Vtičnica (moški) za povezavo z ESP32 ima nožice z "ogledalom". V primeru dvoma ne pozabite, da je številka pina vedno navedena na moških in ženskih priključkih, kot je prikazano na tretji sliki.

Če želite igre upravljati samo z igralno palico, priključite njen skupni zatič (9) na ESP32 +5V, zatiči 1, 2, 3, 4 in 6 pa na spodnji seznam za ESP.

  • ESP pin 12 proti desni tipki (RS232 pin 4)
  • ESP pin 14 do leve tipke (RS232 pin 3)
  • ESP pin 35 do gumba Down (RS232 pin 2)
  • ESP pin 25 do gumba navzgor (RS232 pin 1 in 6, to je požar krmilne palice)

Upoštevajte, da morajo biti pin ESP 12, 14, 25 in 35 priključeni tudi na GND prek upora 1 do 5 kOhm. Na ta način, ko gumb sprostite (odprete), je pin ESP natančno na nič voltov.

NB2 krmilna palica UP položaj in gumb za požar sta skupaj povezana z ESP pin 25-

Na ploščo PC -ja sem priključil štiri gumbe, zato mi za uporabo igralne palice ni treba (čeprav je z igralno palico veliko bolj smešno). Ponovno je treba priključek 9 RS232 priključiti na +5 V, zatiči krmilne ročice pa so vzporedno s tipkami.

Korak 6: Zaključek in priznanje

Zaključek in priznanje
Zaključek in priznanje

Če vse deluje pravilno, samo priključite monitor VGA in uživali boste v igri starega sloga!

Lahko tudi narišete komplet Mandelbrot z ločljivostjo 640 x 350 slikovnih pik, samo da preizkusite zmogljivosti knjižnice VGA.

Upoštevajte, da je koda napisana na način, da lahko v prihodnje preprosto dodate druge igre (ESP32 ima veliko prostora!). Za ta projekt imam dovolj zanimanja, lahko to storim …

Končno želim svoje tanke izraziti Fabriziju Di Vittorio za njegovo čudovito knjižnico ESP32 VGA. Za več podrobnosti, primere in … Space Invaders obiščite njegovo spletno stran.

Priporočena: