Obsah:
- Krok 1: Seznam materiálů
- Krok 2: Nahrání knihovny a skici
- Krok 3: Připojení částí: konektor VGA
- Krok 4: Připojení částí: potenciometry a tlačítko
- Krok 5: Závěr a poděkování
Video: ESP8266 VGA Pong: 5 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:22
V tomto Instructables ukážu, jak vytvořit reprodukci klasické hry Pong pro monitor VGA pomocí ESP8266 a několika dalších komponent.
Tuto hru umožňuje knihovna EspVGAx, kterou nedávno na GitHubu zveřejnil Sandro Maffiodo (aka Smaffer), a pokud vím, je to první hra, která ji využívá.
Knihovna implementuje rozlišení 512 x 480 pixelů, uložené ve vyrovnávací paměti snímků uvnitř paměti RAM, což vyžaduje 30 720 bajtů. Rozlišení je obrovské ve srovnání s Arduino TVout nebo VGAx (128 x 96 respektive 120 x 60 pixelů). Doufám, že tato hra inspiruje ostatní programátory k vývoji nebo reprodukci složitějších her.
Krok 1: Seznam materiálů
Knihovna EspVGAx vyžaduje ESP8266 se všemi exponovanými GPIO, jako je deska ESP-12E, NodeMCU-12E nebo jakákoli deska, která odhaluje GPIO5 (D1), GPIO4 (D2) a GPIO13 (D7)
Zejména jsem použil:
- ESP8266 NodeMCU-12E (odkaz zde)
- konektor DSUB15 (tj. konektor VGA female)
- odpor 330 ohmů
- další odpor (asi 1 až 3 kOhm)
- dva potenciometry 10 kOhm
- a Tlačítko (č.)
- dvě diody (například 1N4007s)
- prkénko
- dráty
Konektor DSUB15 jsem dostal ze staré desky VGA PC. Alternativně můžete také odstřihnout starý kabel VGA a připojit vodiče přímo k prkénku.
Krok 2: Nahrání knihovny a skici
Existují různé metody programování a ESP8266; K napsání Pongu a nahrání kódu jsem použil Arduino IDE.
Knihovna EspVGAx funguje pro Arduino IDE 1.8.1. Pokud máte jiné verze, je nejlepší soubory ZIP stáhnout a dekomprimovat do vyhrazené složky. Verze pro Windows je zde. Verze pro jiné OS jsou zde.
Poté byste měli stáhnout knihovnu EspVGAx ze stránky GithHub zde (přímý odkaz na verzi zip zde) a rozbalit ji v knihovnách složek v softwaru Arduino.
Poznámka: V souboru espvgax_draw.h je malá chyba. Chcete -li to opravit, stačí nahradit řádek 17:
while (x0%32) {with while (x0%32 && sw> 32) {
Nakonec můžete na konci tohoto kroku stáhnout ESP8266_Pong.rar.
Jakmile jej rozbalíte, budete jej muset nahrát na svůj ESP8266, musíte nakonfigurovat Arduino IDE.
Pokud jste to nikdy neudělali, najdete všechny potřebné pokyny v tomto Instructables, zejména v kroku 2.
Jakmile je vše nakonfigurováno, nastavení ESP8266 by mělo vypadat jako na obrázku výše.
Pokud můžete nahrát kód bez chyb, můžete začít sestavovat součásti.
Krok 3: Připojení částí: konektor VGA
Doporučuji nejprve připojit port VGA, jak je znázorněno na obrázcích výše. Vezměte prosím na vědomí, že propojením tří pinů červeného, zeleného a modrého (tj. Kolíků 1, 2 a 3 na konektoru DSUB15) budete mít na obrazovce černobílý obraz. Můžete mít také různé barevné kombinace. Podrobnosti najdete na stránce Library GitHub.
Kromě toho byste měli připojit 330 ohmový odpor mezi RGB piny a D7 (GPIO13) na ESP8266. To mi na monitoru poskytlo trochu našedlý obraz, a tak jsem se po několika pokusech rozhodl jej vůbec odstranit.
V tomto okamžiku, pokud vše funguje správně, již můžete připojit monitor a zobrazit úvodní obrazovku hry s bannerem „ESP8266 VGAx Pong“.
Krok 4: Připojení částí: potenciometry a tlačítko
Tlačítko musí být připojeno mezi 3,3 V a pinem D0 (GPIO16). Připojte také odpor 1 až 3 kOhm od D0 k zemi. Tím se zabrání tomu, aby byl D0 v neurčeném stavu, když je tlačítko otevřené.
Propojení obou potenciometrů je méně triviální, protože ve skutečnosti má ESP8266 pouze analogový vstupní port A0 (ADC0)! Jde o to, propojit oba výstupy pot.s na stejný port a 'multiplexovat' je. Multiplexování jednoduše znamená, že potenciometr zapnete, přečtete, poté vypnete a přejdete na druhý.
Pokud se chcete o této metodě dozvědět více, můžete si přečíst tento Instructable.
Připojte jeden extrémní potenciometr ke GND, druhý extrém k D5 pro potenciometr levého hráče a D6 pro pravý hráč.
Každý centrální pin potenciometru musí být připojen k jednotlivé diodě a ostatní strany diod musí být připojeny k A0 (ADC0), přičemž polarita je uvedena na výše uvedeném obrázku.
Krok 5: Závěr a poděkování
Jsem vděčný Sandrovi Maffiodoovi - SMAFFER - za knihovnu ESPVGAX. Bez toho by tato hra nebyla možná.
Doufám, že tento Instructable bude inspirací pro ostatní programátory k vytváření reprodukcí složitějších klasických arkádových her s ESP8266, který má mnohem menší omezení než Arduino.
Nakonec jsem sepsal tento návod k odeslání do soutěže o hračky: pokud se vám líbí nebo jej reprodukujete, věnujte prosím chvíli hlasování!
Doporučuje:
Externí VGA / GPU pro notebooky využívající EXP GDC Beast: 15 kroků (s obrázky)
Externí VGA / GPU pro notebooky využívající EXP GDC Beast: Ahoj kluci .. Toto je můj první tutoriál o instruktážích. Angličtina není můj první jazyk, takže prosím omluvte mé gramatické chyby. Udělal jsem to na základě svých zkušeností s upgradem svého notebooku. A nebudu vás nudit dlouhým představováním, protože vím, že ne
Vytvořte si vlastní hru 1D Pong: 5 kroků (s obrázky)
Vytvořte si vlastní hru 1D Pong: U tohoto projektu vám ukážu, jak jsem kombinoval desku MDF s tlačítky bzučáku, LED diodami a Arduino Nano, abych vytvořil hru 1D Pong, která je opravdu zábavná. Po cestě vám ukážu, jak vytvořit elektronický obvod a jak se liší
Arkádové hry a joystick ESP32 VGA: 6 kroků (s obrázky)
Arkádové hry a joystick ESP32 VGA: V tomto návodu ukážu, jak reprodukovat čtyři arkádové hry - Tetris - Snake - Breakout - Bomber - pomocí ESP32 s výstupem pro VGA monitor. Rozlišení je 320 x 200 pixelů, v 8 barvách. Dříve jsem vytvořil verzi s
Pong Tennis s LED maticí, Arduino a joysticky: 5 kroků (s obrázky)
Pong Tennis s LED Matrix, Arduino a Joysticks: Tento projekt je určen začátečníkům i zkušeným drotářům. Na základní úrovni to lze provést pomocí prkénka, propojovacích drátů a přilepit na kus šrotu (použil jsem dřevo) pomocí Blu-Tack a bez pájení. Nicméně s větším předstihem
Základní počítač Arduino s výstupem VGA: 5 kroků (s obrázky)
Základní počítač Arduino s výstupem VGA: Ve svém předchozím Instructable jsem ukázal, jak postavit retro 8bitový počítač se systémem BASIC pomocí dvou Arduino a s výstupním signálem v B & W pro televizní obrazovku. Nyní ukážu, jak postavit stejný počítač, ale s výstupním signálem v