Sadržaj:
- Korak 1: Popis materijala
- Korak 2: Prijenos biblioteke i skica
- Korak 3: Spajanje dijelova: VGA konektor
- Korak 4: Spajanje dijelova: potenciometri i gumb
- Korak 5: Zaključak i priznanja
Video: ESP8266 VGA pong: 5 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:35
U ovom Instructables ću pokazati kako izgraditi reprodukciju klasične igre Pong za VGA monitor, koristeći ESP8266 i nekoliko drugih komponenti.
Ovu igru je omogućila biblioteka EspVGAx koju je nedavno na GitHub -u objavio Sandro Maffiodo (zvani Smaffer) i, koliko ja znam, ovo je prva igra koja je koristi.
Knjižnica implementira rezoluciju od 512 x 480 piksela, pohranjenu u framebufferu unutar RAM -a, što zahtijeva 30720 bajtova. Rezolucija je velika u usporedbi s Arduino TVout ili VGAx (128 x 96 odnosno 120 x 60 piksela). Nadam se da će ova igra inspirirati druge programere na razvoj ili reprodukciju složenijih igara.
Korak 1: Popis materijala
Za biblioteku EspVGAx potreban je ESP8266 sa svim izloženim GPIO, poput ESP-12E, ploče NodeMCU-12E ili bilo koje ploče koja izlaže GPIO5 (D1), GPIO4 (D2) i GPIO13 (D7)
Konkretno, koristio sam:
- ESP8266 NodeMCU-12E (veza ovdje)
- konektor DSUB15 (tj. ženski VGA konektor)
- otpornik od 330 ohma
- drugi otpornik (oko 1 do 3 kOhm)
- dva potenciometra od 10 kOhm
- pritisni gumb (n.o.)
- dvije diode (poput 1N4007s)
- krušna ploča
- žice
Konektor DSUB15 dobio sam sa stare VGA PC ploče. Alternativno, možete izrezati i stari VGA kabel i spojiti žice izravno na matičnu ploču.
Korak 2: Prijenos biblioteke i skica
Postoje različite metode programiranja i ESP8266; Koristio sam Arduino IDE za pisanje ponga i učitavanje koda.
Imajte na umu da EspVGAx knjižnica radi za Arduino IDE 1.8.1. Ako imate druge verzije, najbolje je preuzeti datoteke.zip i dekomprimirati ih u namjensku mapu. Ovdje je verzija za Windows. Ovdje su verzije za druge OS.
Nakon toga trebate prenijeti EspVGAx knjižnicu sa stranice GithHub ovdje (izravna veza za zip verziju ovdje) i raspakirati je u bibliotekama mapa u softveru Arduino.
Napomena: U datoteci espvgax_draw.h postoji mala greška. Da biste to ispravili, samo zamijenite redak 17:
while (x0%32) {sa while (x0%32 && sw> 32) {
Na kraju možete preuzeti ESP8266_Pong.rar na kraju ovog koraka.
Nakon raspakiranja, da biste ga prenijeli na svoj ESP8266, morate konfigurirati Arduino IDE.
Ako to nikada niste učinili, sve potrebne upute možete pronaći na ovim uputama, osobito u 2. koraku.
Nakon što je sve konfigurirano, postavke ESP8266 trebale bi izgledati poput onih prikazanih na gornjoj slici.
Ako možete učitati kôd bez grešaka, možete početi sastavljati dijelove.
Korak 3: Spajanje dijelova: VGA konektor
Preporučujem da prvo povežete VGA port, kao što je prikazano na gornjim slikama. Imajte na umu da ćete spajanjem tri pina Crvene, Zelene i Plave (tj. Pinova 1, 2 i 3 na priključku DSUB15) imati bijelo -bijelu sliku na ekranu. Također možete imati različite kombinacije boja. Detalje potražite na stranici Library GitHub.
Nadalje, trebali biste spojiti otpornik od 330 Ohma između RGB pinova i D7 (GPIO13) na ESP8266. To mi je na monitoru dalo pomalo sivkastu sliku pa sam ga, nakon nekoliko pokušaja, uopće odlučio ukloniti.
U ovom trenutku, ako sve radi ispravno, već možete spojiti monitor i vidjeti početni zaslon igre, s natpisom "ESP8266 VGAx Pong".
Korak 4: Spajanje dijelova: potenciometri i gumb
Gumb mora biti spojen između 3,3 V i pina D0 (GPIO16). Spojite i otpornik od 1 do 3 kOhm od D0 do mase. Time se izbjegava da D0 bude u neodređenom statusu kada je gumb otvoren.
Spajanje dva potenciometra manje je trivijalno, zapravo ESP8266 ima samo analogni ulaz A0 (ADC0)! Trik je u povezivanju oba pot.s izlaza na isti port i njihovom "multipleksiranju". Multipleksiranje jednostavno znači da ćete uključiti potenciometar, pročitati ga, zatim isključiti i prijeći na drugi.
Ako želite saznati više o ovoj metodi, možete pročitati ovaj Instructable.
Spojite jedan ekstremni potenciometar na GND, drugi ekstremni na D5 za lijevi potenciometar i D6 za desni.
Svaki središnji pin potenciometra mora biti spojen na pojedinačnu diodu, a ostale strane dioda moraju biti spojene na A0 (ADC0), s polaritetom prikazanim na gornjoj slici.
Korak 5: Zaključak i priznanja
Zahvalan sam Sandru Maffiodu - SMAFFERU - za biblioteku ESPVGAX. Ova igra ne bi bila moguća bez nje.
Nadam se da će ovaj Instructable biti inspiracija drugim programerima za reprodukciju složenijih klasičnih arkadnih igara s ESP8266, koji ima mnogo manje ograničenja od Arduina.
Konačno, napisao sam ovaj Instructable kako bih ga prijavio na natjecanje u igračkama: ako vam se sviđa ili ga reproducirajte, odvojite trenutak za glasovanje!
Preporučeni:
Vanjski VGA / GPU za prijenosna računala koja koriste EXP GDC Beast: 15 koraka (sa slikama)
Vanjski VGA / GPU za prijenosna računala koristeći EXP GDC Beast: Bok dečki .. Ovo je moj prvi vodič o instrukcijama. Engleski mi nije prvi jezik pa mi oprostite gramatičke greške. Ovo sam napravio na temelju svog iskustva u nadogradnji prijenosnog računala. I neću vam dosaditi s dugim predstavljanjem jer ne znam
Vrhunski stroj za pivo -pong - PongMate CyberCannon Mark III: 6 koraka (sa slikama)
Vrhunski stroj za pivski pong - PongMate CyberCannon Mark III: Uvod PongMate CyberCannon Mark III najnoviji je i najnapredniji komad tehnologije pivskog ponga koji se ikada prodavao javnosti. S novim CyberCannonom, svaka osoba može postati igrač koji se najviše boji za pivskim stolom. Kako je ovo p
Napravite vlastitu 1D pong igru: 5 koraka (sa slikama)
Napravite vlastitu 1D pong igru: Za ovaj projekt pokazat ću vam kako sam kombinirao MDF ploču s gumbima zujalice, LED diodama i Arduino Nano kako bih stvorio 1D pong igru koju je zaista zabavno igrati. Usput ću vam pokazati kako stvoriti elektronički krug i kako se razlikuje
ESP32 VGA arkadne igre i joystick: 6 koraka (sa slikama)
ESP32 VGA arkadne igre i joystick: U ovom uputstvu pokazat ću kako reproducirati četiri arkadne igre - Tetris - Zmija - Proboj - Bombaš - pomoću ESP32, s izlazom za VGA monitor. Rezolucija je 320 x 200 piksela, u 8 boja. Prethodno sam napravio verziju sa
Arduino Basic PC s VGA izlazom: 5 koraka (sa slikama)
Arduino osnovno računalo s VGA izlazom: U svom prethodnom Instructable-u sam pokazao kako izgraditi retro 8-bitno računalo sa BASIC-om, pomoću dva Arduina, i s izlaznim signalom u B & W za TV ekran. Sada ću pokazati kako izgraditi isto računalo, ali s izlaznim signalom u