Obsah:
- Krok 1: Příprava hardwaru
- Krok 2: Příprava softwaru
- Krok 3: 3D tisk
- Krok 4: Podpora LCD
- Krok 5: Připravte desku PETG
- Krok 6: Opravte vývojovou desku ESP32
- Krok 7: Opravte baterii Lipo
- Krok 8: Připojte desku baterie a vývojáře
- Krok 9: Připravte si zobrazovací piny
- Krok 10: Připojte GND piny
- Krok 11: Připojte Vcc piny
- Krok 12: Připojte podporu LCD a vývojové desky
- Krok 13: Připojte piny SPI
- Krok 14: Flash Program
- Krok 15: Konektor I2C
- Krok 16: Montáž Část 1
- Krok 17: Prototyp I2C Gamepad
- Krok 18: Sestavte I2C Gamepad
- Krok 19: Montáž Část 2
- Krok 20: Volitelné: Audio Breakout Piny
- Krok 21: Co bude dál?
Video: Ruční herní konzole ESP32: 21 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:19
Tento návod ukazuje, jak použít ESP32 a ATtiny861 k vytvoření herní konzoly emulátoru NES.
Krok 1: Příprava hardwaru
Deska pro vývojáře ESP32
Tentokrát používám vývojovou desku TTGO T8 ESP32. Tato deska má vestavěný nabíjecí a regulační obvod Lipo, což může pomoci snížit počet dalších komponent.
Zobrazit
Tentokrát používám 2,4 IPS LCD. Ovladač ovladače je ST7789V a rozlišení je 320 x 240. Toto rozlišení je nejvhodnější pro emulátor NES s rozlišením 252 x 224.
baterie
Tentokrát používám baterii 454261 Lipo. 4,5 mm je tloušťka desky ESP32 dev a 61 mm je šířka desky.
Pin Header
4kolíkový konektor pro kulaté kolíky a 4kolíkový konektor pro kulatý kolík pro připojení gamepadu I2C.
PETG deska
Malá deska PET/PETG pro podporu desky pro vývoj a baterie Lipo ji snadno najdete v balení produktu.
Víceúčelová deska plošných spojů
Jsou vyžadovány 2 PCB, 1 0,4 mm silné pro podporu displeje, 1 1,2 mm silné pro I2C gamepad.
Tlačítka
Tlačítko s 5 směry, 2 malá tlačítka pro výběr a spuštění a 2 pro tlačítka A a B.
Ovladač gamepadu I2C
Tentokrát používám mikrokontrolér ATtiny861 jako ovladač gamepadu I2C.
Ostatní
1 rezistor SMD 12 Ohm, programátor ISP (např. TinyISP)
Krok 2: Příprava softwaru
Arduino IDE
Stáhněte a nainstalujte Arduino IDE, pokud ještě ne:
Podpora ATTinyCore
Pokud ještě nemáte podporu ATTinyCore, postupujte podle pokynů k instalaci:
ESP-IDF
Postupujte podle příručky Začínáme s ESP-ID a nastavte vývojové prostředí, pokud ještě ne:
Krok 3: 3D tisk
Stáhněte si a vytiskněte pouzdro:
Krok 4: Podpora LCD
Vyřízněte 24 x 27 otvorů 0,4 mm PCB pro podporu LCD. Nezapomeňte si vyhradit místo pro skládání LCD FPC. Poté pomocí oboustranné lepicí pásky upevněte LCD na desku plošných spojů.
Krok 5: Připravte desku PETG
Vystřihněte desku PETG 62 mm x 69 mm pro desku pro vývoj a podporu baterie Lipo.
Krok 6: Opravte vývojovou desku ESP32
Pomocí oboustranné lepicí pásky připevněte desku vývojáře na desku PETG.
Krok 7: Opravte baterii Lipo
Pomocí oboustranné lepicí pásky připevněte baterii Lipo vedle desky pro vývojáře.
Krok 8: Připojte desku baterie a vývojáře
Krok 9: Připravte si zobrazovací piny
LCD displej má mnoho variant od různých prodejců. Získejte správný datový list a přečtěte si jej před jakoukoli opravou a připojením.
Některé piny jsou vyhrazeny pro dotykový panel. Vzhledem k tomu, že tento displej LCD nemá dotykový panel, můžete rušení omezit jednoduše vyříznutím těchto kolíků.
Krok 10: Připojte GND piny
Ve většině případů existuje několik pinů, které vyžadují připojení k GND. Abych snížil úsilí při pájení, ustřihl jsem tvar měděné pásky, abych dosáhl na všechny piny GND, a pak pájení úplně.
Krok 11: Připojte Vcc piny
K připojení Vcc, napájení LCD a napájení LED jsou zapotřebí 2 piny. Podle datového listu lze napájení LCD přímo připojit k desce dev 3,3 V, ale napájení LED pracuje o něco méně než 3,3 V. Je tedy lepší přidat odpor SMD uprostřed, např. 12 ohmový odpor.
Krok 12: Připojte podporu LCD a vývojové desky
použijte společně páskové připojení LCD podpory a podpory desky vývojáře. Obě podpěry by si měly vyhradit kolem 5 mm mezery pro skládání.
Krok 13: Připojte piny SPI
Zde je shrnutí připojení:
LCD ESP32
GND -> GND RST -> GPIO 33 SCL -> GPIO 18 DC -> GPIO 27 CS -> GPIO 5 SDI -> GPIO 23 SDO -> nepřipojeno Vcc -> 3,3 V LED+ -> 12 Ohm rezistor -> 3,3 V LED - -> GND
Krok 14: Flash Program
- Stáhněte si zdrojový kód na GitHub:
- Ve složce zdrojového kódu spusťte „make menuconfig“
- Vyberte „Konfigurace specifická pro Nofrendo ESP32“
- Vyberte „Hardware pro spuštění“-> „Vlastní hardware“
- Vyberte „Typ LCD“-> „LCD ST7789V“
- Nastavení kolíku výplně: MISO -> -1, MOSI -> 23, CLK -> 18, CS -> 5, DC -> 27, RST -> 33, Backlight -> -1, IPS -> Y
- Ukončit a uložit
- Spusťte „make -j5 flash“
- Spusťte „sh flashrom.sh PATH_TO_YOUR_ROM_FILE“
Krok 15: Konektor I2C
Prolomte I2C piny, výchozí I2C piny ESP32 jsou:
Pin 1 (SCL) -> GPIO 22
Pin 2 (SDA) -> GPIO 21 Pin 3 (Vcc) -> 3,3 V (bez napájení 5 V při napájení baterií Lipo) Pin 4 (GND) -> GND
Krok 16: Montáž Část 1
Při skládání a mačkání všech částí do pouzdra postupujte podle pokynů pro video.
Krok 17: Prototyp I2C Gamepad
Program pro I2C Gamepad je velmi jednoduchý, pouze 15 řádků kódu. Je ale trochu těžké přeprogramovat ATtiny861 po pájení, takže je lepší to nejprve vyzkoušet na prkénku.
Stáhněte si, zkompilovejte a flashujte program z GitHubu:
Krok 18: Sestavte I2C Gamepad
Zde je shrnutí připojení:
Tlačítko ATtiny861
GND -> Všechna tlačítka jeden pin Pin 20 (PA0) -> Tlačítko Nahoru Pin 19 (PA1) -> Tlačítko dolů Pin 18 (PA2) -> Levé tlačítko Pin 17 (PA3) -> Pravé tlačítko Pin 14 (PA4) -> Tlačítko výběru Pin 13 (PA5) -> Tlačítko Start Pin 12 (PA6) -> Tlačítko A Pin 11 (PA7) -> Tlačítko B Pin 6 (GND) -> I2C konektor pin samec pin 4 Pin 5 (Vcc) -> I2C kolíkový konektor 3 zástrčky 3 (SCL) -> I2C konektor zástrčky 1 kolíku 1 (SDA) -> konektor I2C zástrčky 2
Krok 19: Montáž Část 2
Podle pokynů k videu nainstalujte kryt a gamepad I2C na hlavní tělo.
Krok 20: Volitelné: Audio Breakout Piny
Deska 25 a 26 pro desku ESP32 pro výstup analogového zvukového signálu, je velmi snadné rozbít tyto 2 piny a také napájecí piny (3,3 V a GND) nahoře. Poté můžete připojit zástrčku sluchátka. Nebo dokonce můžete přidat modul zesilovače zvuku s reproduktorem a hrát jej nahlas.
Krok 21: Co bude dál?
Emulátor NES není jedinou zajímavou věcí, kterou můžete s ESP32 vytvořit. Např. můžete s ním postavit konzolu micro python. Jedinou komponentou, kterou musíte změnit, je gamepad I2C na klávesnici I2C. Myslím, že to není tak obtížné vyrobit pomocí ovladače ATtiny88. Stav můžete sledovat na mém twitteru.
Doporučuje:
Ruční herní konzole pro kutily využívající RetroPie: 7 kroků
Ruční herní konzole pro kutily pomocí RetroPie: Podívejte se na výše uvedené video, abyste lépe porozuměli tomuto projektu. Pokuta. Je čas začít! Nejprve použijeme RetroPie. Zbývají nám tedy dvě možnosti. Pokud jsme již nainstalovali Raspbian na naši SD kartu, můžeme nainstalovat RetroP
Ruční herní konzole DIY Raspberry Pi Zero: 6 kroků (s obrázky)
Ruční herní konzole DIY Raspberry Pi Zero: V tomto projektu vám ukážu, jak jsem použil Raspberry Pi Zero, NiMH baterie, domácí ochranný obvod proti vybití, zpětný LCD a zvukový zesilovač k vytvoření ruční herní konzole, kterou lze hrát retro hry. Začněme
Herní konzole 1963 Pi Tourer: 9 kroků (s obrázky)
Herní konzole 1963 Pi Tourer: Toto je autorádio Sky Tourer z roku 1963, které jsem převedl na praktickou přenosnou retro herní konzoli. Má vestavěný Raspberry Pi 3, se 6 arkádovými tlačítky a joystickem ovládajícím ty retro skřítky RetroPie přes desku ovladače Picade
Ruční herní konzole - Arduboy Clone: 6 kroků (s obrázky)
Ruční herní konzole | Arduboy Clone: Před několika měsíci jsem narazil na Arduboy, který je podle oficiálních webových stránek miniaturní 8bitovou herní platformou, která umožňuje snadné učení, sdílení a hraní her online. Jedná se o open source platformu. Hry pro Arduboy vyrábí uživatel
Ruční herní konzole Recalbox využívající 2,2 TFT: 6 kroků
Handheld Recalbox Game Console using 2.2 TFT: Instructions for DIY of a handheld recalbox game console using 2.2 “TFT LCD and a Raspberry Pi 0 W and GPIO buttons. You can view this youtube video for a full demonstration of the steps involved: A. Získejte všechny díly. B. Spojte součásti dohromady