Indholdsfortegnelse:
- Trin 1: Forberedelse af hardware
- Trin 2: Forberedelse af software
- Trin 3: 3D -udskrivning
- Trin 4: LCD -understøttelse
- Trin 5: Forbered PETG -plade
- Trin 6: Fix ESP32 Dev Board
- Trin 7: Fix Lipo -batteri
- Trin 8: Tilslut batteri og dev -kort
- Trin 9: Forbered skærmnåle
- Trin 10: Tilslut GND Pins
- Trin 11: Tilslut Vcc Pins
- Trin 12: Tilslut LCD & Dev Board Support
- Trin 13: Tilslut SPI -pins
- Trin 14: Flash -program
- Trin 15: I2C -stik
- Trin 16: Montering Del 1
- Trin 17: Prototype I2C gamepad
- Trin 18: Byg I2C gamepad
- Trin 19: Montering Del 2
- Trin 20: Valgfrit: Audio Breakout Pins
- Trin 21: Hvad er det næste?
Video: ESP32 håndholdt spilkonsol: 21 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
Denne instruktion viser, hvordan man bruger en ESP32 og ATtiny861 til at bygge en NES -emulator -spilkonsol.
Trin 1: Forberedelse af hardware
ESP32 Dev Board
Denne gang bruger jeg et TTGO T8 ESP32 dev -kort. Dette kort har indbygget Lipo opladnings- og reguleringskredsløb, det kan hjælpe med at reducere de ekstra komponenter.
Skærm
Denne gang bruger jeg en 2,4 IPS LCD. Drivercontrolleren er ST7789V og opløsningen er 320 x 240. Denne opløsning er bedst egnet til NES emulator 252 x 224 opløsning.
Batteri
Denne gang bruger jeg et 454261 Lipo batteri. 4,5 mm er tykkelsen på ESP32 dev board, og 61 mm er boardets bredde.
Pin Header
En 4 -pins hanrunde -pin -header og en 4 -pins hun -rund -pin -header til tilslutning af I2C gamepad.
PETG -tallerken
En lille PET/PETG -plade til understøttelse af dev board og Lipo batteri, du kan nemt finde den i produktemballage.
PCB til flere formål
2 printkort kræves, 1 0,4 mm tyk til understøttelse af skærmen, 1 1,2 mm tyk til en I2C gamepad.
Knapper
En 5 retnings knap, 2 små knapper til Select og Start og 2 til A og B knap.
I2C gamepad -controller
Denne gang bruger jeg en ATtiny861 mikrokontroller som en I2C gamepad controller.
Andre
1 SMD 12 Ohm modstand, en ISP programmør (f.eks. TinyISP)
Trin 2: Forberedelse af software
Arduino IDE
Download og installer Arduino IDE hvis ikke endnu:
ATTinyCore Support
Følg installationstrinnene for at tilføje ATTinyCore -support, hvis ikke endnu:
ESP-IDF
Følg ESP-IDF startguiden til opsætning af udviklingsmiljøet, hvis ikke endnu:
Trin 3: 3D -udskrivning
Download og udskriv sagen:
Trin 4: LCD -understøttelse
Skær et 24 x 27 huller 0,4 mm printkort til LCD -understøttelse. Husk at reservere plads til foldning af LCD FPC. Brug derefter et dobbeltklæbende tape til at fastgøre LCD'en på printkortet.
Trin 5: Forbered PETG -plade
Skær en 62 mm x 69 mm PETG -plade ud til dev board og Lipo batteristøtte.
Trin 6: Fix ESP32 Dev Board
Brug dobbeltklæbende tape til at fastgøre dev -bord på PETG -pladen.
Trin 7: Fix Lipo -batteri
Brug dobbeltklæbende tape til at fastsætte Lipo -batteri udover dev -kortet.
Trin 8: Tilslut batteri og dev -kort
Trin 9: Forbered skærmnåle
LCD -display har mange variationer fra forskellige leverandører. Indhent det korrekte datablad, og læs det før en patch og forbindelse.
Nogle ben er forbeholdt berøringspanel. Da denne LCD -skærm ikke har berøringspanel, kan du blot afskære disse stifter for at reducere forstyrrelsen.
Trin 10: Tilslut GND Pins
I de fleste tilfælde er der få stifter, der kræver forbindelse til GND. For at reducere loddeindsatsen skar jeg en kobberbåndsform for at nå alle GND -benene og lodde helt.
Trin 11: Tilslut Vcc Pins
Der kræves 2 stifter til tilslutning til Vcc, LCD -strøm og LED -strøm. Ifølge databladet kan LCD -strøm direkte tilsluttes til dev board 3,3 V pin, men LED -strøm fungerer lidt lavere end 3,3 V. Så det er bedre at tilføje en SMD -modstand i midten, f.eks. 12 Ohm modstand.
Trin 12: Tilslut LCD & Dev Board Support
brug tape tilslut LCD -understøttelse og dev -kortstøtte sammen. Begge understøtninger bør reservere omkring 5 mm hul til foldning.
Trin 13: Tilslut SPI -pins
Her er forbindelsesoversigten:
LCD ESP32
GND -> GND RST -> GPIO 33 SCL -> GPIO 18 DC -> GPIO 27 CS -> GPIO 5 SDI -> GPIO 23 SDO -> ikke tilsluttet Vcc -> 3,3 V LED+ -> 12 Ohm modstand -> 3,3 V LED - -> GND
Trin 14: Flash -program
- Download kildekoden på GitHub:
- Kør "make menuconfig" under kildekodemappen
- Vælg "Nofrendo ESP32-specifik konfiguration"
- Vælg "Hardware, der skal køre på" -> "Brugerdefineret hardware"
- Vælg "LCD Type" -> "ST7789V LCD"
- Fyldstiftindstillinger: MISO -> -1, MOSI -> 23, CLK -> 18, CS -> 5, DC -> 27, RST -> 33, Baggrundslys -> -1, IPS -> Y
- Afslut og gem
- Kør "make -j5 flash"
- Kør "sh flashrom.sh PATH_TO_YOUR_ROM_FILE"
Trin 15: I2C -stik
Udbrud I2C benene, ESP32 standard I2C ben er:
Pin 1 (SCL) -> GPIO 22
Pin 2 (SDA) -> GPIO 21 Pin 3 (Vcc) -> 3,3 V (ingen 5 V strøm, mens den drives af Lipo -batteri) Pin 4 (GND) -> GND
Trin 16: Montering Del 1
Følg videotrinene for at folde og klemme alle delene ind i etuiet.
Trin 17: Prototype I2C gamepad
Programmet til I2C Gamepad er meget enkelt, kun 15 linjer kode. Men det er lidt svært at omprogrammere ATtiny861 efter lodning, så det er bedre at teste det på brødbrættet først.
Download, kompil og flash programmet fra GitHub:
Trin 18: Byg I2C gamepad
Her er forbindelsesoversigten:
ATtiny861 -knap
GND -> Alle knapper en pin Pin 20 (PA0) -> Up button Pin 19 (PA1) -> Down button Pin 18 (PA2) -> Venstre knap Pin 17 (PA3) -> Højre knap Pin 14 (PA4) -> Vælg knap Pin 13 (PA5) -> Startknap Pin 12 (PA6) -> A -knap Pin 11 (PA7) -> B -knap Pin 6 (GND) -> I2C han -pin -pin -pin 4 Pin 5 (Vcc) -> I2C han pin pin header pin 3 Pin 3 (SCL) -> I2C male pin header pin 1 Pin 1 (SDA) -> I2C male pin header pin 2
Trin 19: Montering Del 2
Følg videotrinene for at installere coveret og I2C gamepad på hoveddelen.
Trin 20: Valgfrit: Audio Breakout Pins
ESP32 dev board Pin 25 og 26 udsender det analoge lydsignal, det er meget let at bryde disse 2 pins og også power pins (3,3 V og GND) på toppen. Derefter kan du lappe en øretelefon for at tilslutte den. Eller endda kan du tilføje et lydforstærkermodul med højttaler for at afspille det højt.
Trin 21: Hvad er det næste?
NES -emulator er ikke den eneste interessante ting, du kan lave med ESP32. F.eks. du kan bygge en mikro python -konsol med den. Den eneste komponent, du skal ændre, er fra I2C gamepad til I2C tastatur. Jeg tror, det ikke er så svært at lave det med en ATtiny88 controller. Du kan følge min twitter for at se status.
Anbefalede:
DIY håndholdt spilkonsol ved hjælp af RetroPie: 7 trin
DIY håndholdt spilkonsol ved hjælp af RetroPie: Se ovenstående video for at forstå dette projekt bedre. Bøde. Det er tid til at komme i gang! Først og fremmest skal vi bruge RetroPie. Dette efterlader os med to muligheder. Hvis vi allerede har installeret Raspbian på vores SD -kort, kan vi installere RetroP
Lav din egen bærbare retro -spilkonsol! som også er en Win10 -tablet !: 6 trin (med billeder)
Lav din egen bærbare retro -spilkonsol! …… som også er en Win10 -tablet !: I dette projekt vil jeg vise dig, hvordan du opretter en bærbar retro -spilkonsol, der også kan bruges som en Windows 10 -tablet. Den vil bestå af en 7 " HDMI LCD med berøringsskærm, en LattePanda SBC, en USB Type C PD power PCB og et par komplementære
DIY Raspberry Pi Zero håndholdt spilkonsol: 6 trin (med billeder)
DIY Raspberry Pi Zero Håndholdt spilkonsol: I dette projekt vil jeg vise dig, hvordan jeg brugte en Raspberry Pi Zero, NiMH-batterier, et hjemmelavet overladningsbeskyttelseskredsløb, en bageste lcd og en lydforstærker til at oprette en håndholdt spilkonsol, der kan afspille retro spil. Lad os komme igang
Håndholdt Recalbox -spilkonsol ved hjælp af 2,2 TFT: 6 trin
Håndholdt Recalbox -spilkonsol ved hjælp af 2.2 TFT: Instruktioner til gør -det -selv af en håndholdt recalbox -spilkonsol ved hjælp af 2,2 "TFT LCD og en Raspberry Pi 0 W og GPIO -knapper. Du kan se denne youtube -video for en fuld demonstration af de involverede trin: A. Få alle delene. B. Lod loddelene sammen
Retro spilkonsol (N64 Mod) med KODI: 7 trin (med billeder)
Retro gaming -konsol (N64 Mod) Med KODI: At spille retro -spil på gamle skolekonsoller er meget sjovt, men at købe de enkelte konsoller og alle de spil, der følger med det, er for besværligt og dyrt! For ikke at nævne, hvis du er college/universitetsstuderende og flytter lejligheder før