Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-23 14:47
U ovom uputstvu pokazat ću kako reproducirati četiri arkadne igre - Tetris - Zmija - Proboj - Bombaš - koristeći ESP32, s izlazom za VGA monitor.
Rezolucija je 320 x 200 piksela, u 8 boja. Prethodno sam radio verziju s Arduino Uno (vidi ovdje), ali rezolucija je bila samo 120 x 60 piksela, 4 boje, a Arduino memorija bila je gotovo puna. Zahvaljujući boljim performansama ESP32, i rezolucija i reprodukcija su veće. Nadalje, još je dosta memorije na raspolaganju, pa će dodavanje novih igara u budućnosti biti jednostavno.
Također ću pokazati vruće za spajanje jednostavne upravljačke palice putem RS232 kabela. Koristim isti pinout Commodore 64.
Ovaj projekt omogućio je izvrsna ESP32 VGA knjižnica koju je napisao Fabrizio Di Vittorio. Za više detalja pogledajte ovdje.
Korak 1: ESP32 ploče, Arduino IDE instalacija i konfiguracija VGA knjižnice
Prije svega morate kupiti ESP32 reviziju 1 ili gornju. Dostupne su mnoge inačice, ali preporučujem da odaberete onu s mnogo pinova, po mogućnosti model poput ovog na ovoj slici, s 38 pinova. Koristim ovu verziju, ali mislim da su i mnoge druge u redu. Na ebayu ovaj model možete pronaći za manje od 7 eura, uključujući dostavu.
Nakon što nabavite ploču, morate nastaviti sa sljedeća tri pod-koraka:
- Instalirajte posljednji Arduino IDE
- Konfigurirajte ESP32 u IDE -u i
- Preuzmite i instalirajte VGA biblioteku
Pod-korak 1. Postoje različite metode za programiranje ESP32, ali ovdje morate koristiti Arduino IDE (ja inače koristim verziju 1.8.9). Da biste ga instalirali, idite na stranicu Arduino IDE i slijedite upute.
Pod-korak 2. Nakon što je prethodna operacija dovršena, morate konfigurirati svoj ESP32 unutar Arduino IDE-a. To nije trivijalno, budući da ESP32 u njemu (još?) Nije izvorni. Možete slijediti ovaj vodič ili sljedeće korake.
1) otvorite Arduino IDE
2) otvorite prozor postavki, Datoteka/Postavke, ili pritisnite "Ctrl+zarez"
3) idite na "Dodatni URL -ovi upravitelja ploče", kopirajte i zalijepite sljedeći tekst:
https://dl.espressif.com/dl/package_esp32_index.js…
i kliknite gumb U redu.
4) Otvorite upravitelja ploča. Idite na Tools/Board/Boards Manager…
5) Potražite ESP32 i pritisnite gumb za instalaciju za „ESP32 by Espressif Systems“:
6) U ovom trenutku, kada prvi put povežete svoj ESP32, trebali biste odabrati pravi model na dugom popisu dostupnih ESP32 ploča (pogledajte sliku u ovom koraku). U slučaju nedoumica oko modela, samo odaberite generički, tj. Prvi. Radi mi.
7) sustav bi također trebao odabrati pravi USB (COM) priključak i brzinu prijenosa (obično 921600). U ovom trenutku treba uspostaviti vezu između vašeg računala i ploče ESP32.
Podkorak 3. Na kraju morate instalirati FabGL VGA knjižnicu. Kliknite ovdje za preuzimanje cijele komprimirane datoteke. Raspakirajte ga i kopirajte rezultirajuću mapu (FabGL-master) u mapu Arduino IDE knjižnica, koja izgleda ovako:
"… / Arduino-1.8.12 / knjižnice".
2. korak: prijenos "ESP32_VGA_Tetris_Snake_Breakout_Bomber_V1.0"
Preuzmite ESP32_VGA_Tetris_Snake_Breakout_Bomber_V1.0.zip na dnu ovog koraka. Raspakirajte i otvorite ga s Arduino IDE -om, a zatim ga prenesite na svoj ESP32. Ako nemate poruka o pogrešci, kôd bi već trebao biti pokrenut i samo trebate spojiti VGA port i gumbe (ili joystick).
Korak 3: Spajanje VGA porta
Potrebni su vam sljedeći dijelovi:
- priključak DSUB15, tj. VGA ženski priključak ili VGA kabel za rezanje.
- tri otpornika od 270 ohma.
Spojite ESP32 GPIO pin 2, 15 i 21 na VGA crvenu, zelenu i plavu boju, kroz otpornike od 270 Ohma.
Spojite VGA Hsync i Vsync na ESP32 GPIO pinove 17 i 4 respektivno.
Spojite pinove 5, 6, 7, 8 i 10 konektora DSUB15 na ESP32 GND.
Za definiciju pina konektora VGA DSUB15 pogledajte sliku u ovom koraku. Napomena: ovo je strana lemljenja ženskog priključka.
Korak 4: Spojite četiri gumba
Ako nemate joystick C64, možete spojiti četiri gumba nakon ovog koraka. Ako imate joystick, možete preskočiti ovaj korak i prijeći na sljedeći, ali svejedno možete spojiti i gumbe i joystick (ionako su "paralelni").
Shema u ovom koraku pokazuje kako spojiti jedan gumb (normalno otvoren) od +5V na dati pin ESP32.
Imajte na umu da također morate spojiti dani ESP pin na GND kroz otpornik od 1 do 5 kOhm. Na taj način, kada se gumb otpusti (otvori), ESP pin je točno na nuli volti. Točnije, morate spojiti četiri gumba sljedećim redoslijedom:
- Pin 12 na desnu tipku
- Pin 25 prema gore
- Pin 14 na lijevu tipku
- Pričvrstite 35 na gumb Dolje
Korak 5: Spojite joystick
Upravljačka palica C64 ima pinout prikazan na prvoj slici ovog koraka. Za spajanje na ESP32 potreban vam je 9 -polni DSUB muški konektor (tj. Utičnica), kao što je prikazano na drugoj slici. Uklonio sam jedan sa izloženim iglama sa stare elektroničke ploče. Za uklanjanje možete koristiti toplinski pištolj (ali to učinite na otvorenom!).
Morate spojiti pinove prema numeričkom redoslijedu na ovim slikama. Imajte na umu da se shema odnosi na stranu upravljačke palice, pa stoga predstavlja vezu njegovog ženskog utikača. Utičnica (muški) za spajanje na ESP32 ima pinove s "zrcalnim" rasporedom. U slučaju sumnje, imajte na umu da se broj pina uvijek prikazuje na muškim i ženskim konektorima, kao što je prikazano na trećoj slici.
Ako želite kontrolirati igre samo pomoću joystick -a, spojite njegov zajednički pin (9) na ESP32 +5V, a pinove 1, 2, 3, 4 i 6 na ESP -u navedene pinove slijedećeg popisa.
- ESP pin 12 na desnoj tipki (RS232 pin 4)
- ESP pin 14 do lijeve tipke (RS232 pin 3)
- ESP pin 35 do tipke za dolje (RS232 pin 2)
- ESP pin 25 do tipke Gore (RS232 pinovi 1 i 6, tj. Aktiviranje upravljačke palice)
Napomena: ESP pinovi 12, 14, 25 i 35 također moraju biti spojeni na GND kroz otpornik od 1 do 5 kOhm. Na taj način, kada se gumb otpusti (otvori), ESP pin je točno na nuli volti.
NB2 joystick UP položaj i tipka za paljenje povezani su zajedno na ESP pin 25-
Spojio sam četiri gumba na PC ploču, pa mi na taj način ne treba joystick za igru (iako je s joystickom mnogo smiješnije). Opet, RS232 pin 9 mora biti spojen na +5 V, a pinovi upravljačke palice su paralelni s gumbima.
Korak 6: Zaključak i priznanje
Ako sve radi ispravno, samo spojite VGA monitor i trebali biste moći uživati u igri starog stila!
Također možete nacrtati Mandelbrotov set rezolucije 640 x 350 piksela, samo da biste testirali mogućnosti VGA knjižnice.
Imajte na umu da je kôd napisan na način da se u budućnosti mogu lako dodati druge igre (ESP32 ima puno prostora!). Ako ovaj projekt dobije dovoljno interesa, mogu to učiniti …
Na kraju, želim izraziti svoje tenkove Fabriziju Di Vittoriju za njegovu izvrsnu ESP32 VGA biblioteku. Za više detalja, primjera i … Space Invaders, posjetite njegovu web stranicu.
Preporučeni:
Dodajte LED diode na svoje arkadne tipke Sanwa gumbe!: 6 koraka (sa slikama)
Dodajte LED diode na svoje tipke za arkadne palice Sanwa !: Postoji mnogo LED rješenja dostupnih za vašu borbenu palicu ili arkadni ormar, ali verzije bez lemljenja ili kupljene u trgovini mogu koštati prilično. Budući da nisam na posebno dobro plaćenom poslu, ali ipak želim neki LED štih za svoju borbenu palicu, pretražio sam
Modularno kućište arkadne konzole MAME - MMACE: 9 koraka (sa slikama)
Modularno kućište arkadne konzole MAME - MMACE: Danas gradimo vlastitu MAME konzolu za 4 igrača koristeći modularno kućište arkadne konzole Mame (ili MMACE). Ovo je drveni komplet koji se može proširiti s 2 na 3, 4, 5 ili više igrača pomoću isprepletenih odjeljaka. Usredotočit ćemo se na 4 predstave
Arduino Arkadne lego kutije za igre: 19 koraka (sa slikama)
Arduino Arkadne lego kutije za igre: Ako imate djecu, vjerojatno ćete se suočiti s istim problemima kao i mi s Lego setovima koje ste za njih kupili. Sastavljaju se i igraju s njima, ali se nakon nekog vremena kompleti pretvaraju u jednu hrpu cigli. Djeca odrastaju i ne znate što biste
Stroj za arkadne igre s Raspberry Pi: 7 koraka (sa slikama)
Stroj za arkadne igre s Raspberry Pi: Priča o stvaranju: Stroj za arkadne igre s retro pi (malina pi3)
Natrag na arkadne igre od JDRamosa: 9 koraka (sa slikama)
Natrag na arkade od JDRamosa: Predstavljam vam svoj arkadni projekt. Projekt koji sam započeo još 2013. godine kada mi je otac za rođendan ponudio stari arkadni ormarić, kupljen od dobavljača koji ih i dalje instalira i upravlja njima u kafićima. Bila je to stara arkada s problemima na