Satura rādītājs:
- 1. darbība. Aparatūras sagatavošana
- 2. solis: programmatūras sagatavošana
- 3. darbība: 3D drukāšana
- 4. solis: LCD atbalsts
- 5. solis: Sagatavojiet PETG plāksni
- 6. darbība: labojiet ESP32 Dev Board
- 7. solis: salabojiet Lipo akumulatoru
- 8. solis: pievienojiet akumulatoru un izstrādātāju paneli
- 9. darbība. Sagatavojiet displeja tapas
- 10. darbība: pievienojiet GND tapas
- 11. darbība: pievienojiet Vcc tapas
- 12. darbība: pievienojiet LCD un izstrādātāju paneļa atbalstu
- 13. darbība: pievienojiet SPI tapas
- 14. darbība: zibatmiņas programma
- 15. darbība: I2C savienotājs
- 16. darbība: montāža 1. daļa
- 17. solis: prototipa I2C spēļu paliktnis
- 18. darbība. Izveidojiet I2C Gamepad
- 19. darbība: montāža 2. daļa
- 20. darbība: pēc izvēles: audio sadalīšanas tapas
- 21. solis: kas tālāk?
Video: ESP32 rokas spēļu konsole: 21 solis (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:52
Šīs instrukcijas parāda, kā izmantot ESP32 un ATtiny861, lai izveidotu NES emulatora spēļu konsoli.
1. darbība. Aparatūras sagatavošana
ESP32 izstrādātāju padome
Šoreiz es izmantoju TTGO T8 ESP32 dev dēli. Šai plāksnei ir iebūvēta Lipo uzlādes un regulēšanas shēma, tā var palīdzēt samazināt papildu komponentus.
Displejs
Šoreiz es izmantoju 2,4 collu IPS LCD. Vadītāja kontrolieris ir ST7789V, un izšķirtspēja ir 320 x 240. Šī izšķirtspēja vislabāk atbilst NES emulatora 252 x 224 izšķirtspējai.
Akumulators
Šoreiz es izmantoju 454261 Lipo akumulatoru. 4,5 mm ir ESP32 dev plāksnes biezums, un 61 mm ir plāksnes platums.
Piespraudes galvene
4 kontaktu apaļās adatas galvene un 4 tapas apaļās tapas galvene I2C spēļu pults savienošanai.
PETG plāksne
Neliela PET/PETG plāksne izstrādes paneļa un Lipo akumulatora atbalstam, to var viegli atrast produkta iepakojumā.
Daudzfunkcionāls PCB
Nepieciešams 2 PCB, 1 0,4 mm biezs displeja atbalstam, 1 1,2 mm biezs I2C spēļu pultim.
Pogas
5 virzienu poga, 2 mazas pogas atlasīšanai un sākšanai un 2 pogai A un B.
I2C Gamepad kontrolieris
Šoreiz es izmantoju ATtiny861 mikrokontrolleru kā spēļu konsoles I2C kontrolieri.
Citi
1 SMD 12 omu rezistors, ISP programmētājs (piemēram, TinyISP)
2. solis: programmatūras sagatavošana
Arduino IDE
Lejupielādējiet un instalējiet Arduino IDE, ja vēl neesat:
ATTinyCore atbalsts
Izpildiet instalēšanas darbības, lai pievienotu ATTinyCore atbalstu, ja vēl neesat:
ESP-IDF
Izpildiet ESP-IDF darba sākšanas rokasgrāmatu, lai iestatītu izstrādes vidi, ja tā vēl nav:
3. darbība: 3D drukāšana
Lejupielādējiet un izdrukājiet lietu:
4. solis: LCD atbalsts
Izgrieziet 24 x 27 caurumus 0,4 mm PCB LCD atbalstam. Atcerieties, ka rezervējiet nedaudz vietas LCD FPC salocīšanai. Pēc tam izmantojiet kādu divpusēju līmlenti, lai LCD piestiprinātu pie PCB.
5. solis: Sagatavojiet PETG plāksni
Izgrieziet 62 mm x 69 mm PETG plāksni izstrādes plāksnei un Lipo akumulatora atbalstam.
6. darbība: labojiet ESP32 Dev Board
Izmantojiet divpusēju līmlenti, lai piestiprinātu plātni pie PETG plāksnes.
7. solis: salabojiet Lipo akumulatoru
Izmantojiet abpusēju līmlenti, lai piestiprinātu Lipo akumulatoru papildus izstrādātāja plāksnei.
8. solis: pievienojiet akumulatoru un izstrādātāju paneli
9. darbība. Sagatavojiet displeja tapas
LCD displejam ir daudz variāciju no dažādiem pārdevējiem. Lūdzu, iegūstiet pareizo datu lapu un izlasiet to pirms jebkura plākstera un savienojuma.
Dažas tapas ir rezervētas skārienpanelim. Tā kā šim LCD nav skārienpaneļa, vienkārši izgriežot šīs tapas, var samazināt traucējumus.
10. darbība: pievienojiet GND tapas
Vairumā gadījumu ir dažas tapas, kurām nepieciešams savienojums ar GND. Lai samazinātu lodēšanas piepūli, es izgriezu vara lentes formu, lai sasniegtu visas GND tapas un pēc tam lodētu pavisam.
11. darbība: pievienojiet Vcc tapas
Lai izveidotu savienojumu ar Vcc, ir nepieciešamas 2 tapas, LCD barošana un LED barošana. Saskaņā ar datu lapu, LCD jauda var tieši pieslēgties pie 3,3 V sprieguma paneļa, bet LED jauda darbojas nedaudz zemāk par 3,3 V. Tāpēc labāk ir pievienot SMD rezistoru vidū, piem. 12 omu rezistors.
12. darbība: pievienojiet LCD un izstrādātāju paneļa atbalstu
Izmantojiet lentu, lai savienotu LCD atbalstu un izstrādātāju plates atbalstu. Abiem balstiem vajadzētu atstāt apmēram 5 mm atstarpi salocīšanai.
13. darbība: pievienojiet SPI tapas
Šeit ir savienojuma kopsavilkums:
LCD ESP32
GND -> GND RST -> GPIO 33 SCL -> GPIO 18 DC -> GPIO 27 CS -> GPIO 5 SDI -> GPIO 23 SDO -> nav pievienots Vcc -> 3,3 V LED+ -> 12 omu rezistors -> 3,3 V LED - -> GND
14. darbība: zibatmiņas programma
- Lejupielādējiet avota kodu vietnē GitHub:
- Zem avota koda mapes palaidiet "make menuconfig"
- Atlasiet "Nofrendo ESP32 specifiska konfigurācija"
- Atlasiet “Aparatūra darbināšanai” -> “Pielāgota aparatūra”
- Izvēlieties "LCD tips" -> "ST7789V LCD"
- Uzpildes tapas iestatījumi: MISO -> -1, MOSI -> 23, CLK -> 18, CS -> 5, DC -> 27, RST -> 33, fona apgaismojums -> -1, IPS -> Y
- Iziet un saglabāt
- Palaidiet “make -j5 flash”
- Palaidiet "sh flashrom.sh PATH_TO_YOUR_ROM_FILE"
15. darbība: I2C savienotājs
Izlaužot I2C tapas, ESP32 noklusējuma I2C tapas ir:
1. tapa (SCL) -> GPIO 22
2. tapa (SDA) -> GPIO 21 3. tapa (Vcc) -> 3.3 V (bez 5 V strāvas, ja to darbina Lipo akumulators) 4. tapa (GND) -> GND
16. darbība: montāža 1. daļa
Izpildiet video darbības, lai salocītu un saspiestu visas detaļas korpusā.
17. solis: prototipa I2C spēļu paliktnis
I2C Gamepad programma ir ļoti vienkārša, tikai 15 koda rindas. Bet pēc lodēšanas ir nedaudz grūti pārprogrammēt ATtiny861, tāpēc labāk to vispirms pārbaudīt uz maizes dēļa.
Lejupielādējiet, apkopojiet un palaidiet programmu no GitHub:
18. darbība. Izveidojiet I2C Gamepad
Šeit ir savienojuma kopsavilkums:
ATtiny861 Poga
GND -> Visas pogas viena tapa Pin 20 (PA0) -> Uz augšu poga Pin 19 (PA1) -> Down pogu Down Pin 18 (PA2) -> Kreisā poga Pin 17 (PA3) -> Labā poga Pin 14 (PA4) -> Atlasiet pogu Piespraude 13 (PA5) -> Sākuma poga Piespraude 12 (PA6) -> A poga Tapa 11 (PA7) -> B poga 6. tapa (GND) -> I2C vīriešu tapas galvenes tapa 4 tapa 5 (Vcc) -> I2C tērauda tapas galvenes tapa 3 Pin 3 (SCL) -> I2C male pin header pin 1 Pin 1 (SDA) -> I2C male pin header pin 2
19. darbība: montāža 2. daļa
Izpildiet video darbības, lai galvenajam korpusam uzstādītu vāku un I2C spēļu paneli.
20. darbība: pēc izvēles: audio sadalīšanas tapas
ESP32 izstrādātāju plāksne 25. un 26. tapa izvada analogo audio signālu, un ir ļoti viegli izlauzt šīs divas tapas, kā arī barošanas tapas (3,3 V un GND) augšpusē. Pēc tam varat ielīmēt austiņas, lai tās pievienotu. Vai pat varat pievienot audio pastiprinātāja moduli ar skaļruni, lai to atskaņotu skaļi.
21. solis: kas tālāk?
NES emulators nav vienīgā interesantā lieta, ko varat izveidot, izmantojot ESP32. Piem. ar to jūs varat izveidot mikro python konsoli. Vienīgais komponents, kas jums jāmaina, ir no I2C gamepad uz I2C tastatūru. Es domāju, ka to nav tik grūti izdarīt ar ATtiny88 kontrolieri. Jūs varat sekot manam twitterim, lai redzētu statusu.
Ieteicams:
DIY rokas spēļu konsole, izmantojot RetroPie: 7 soļi
DIY rokas spēļu konsole, izmantojot RetroPie: Noskatieties iepriekš minēto video, lai labāk izprastu šo projektu. Labi. Ir pienācis laiks sākt darbu! Pirmkārt, mēs izmantosim RetroPie. Tas mums atstāj divas iespējas. Ja mēs jau esam instalējuši Raspbian savā SD kartē, tad mēs varam instalēt RetroP
DIY Raspberry Pi Zero rokas spēļu konsole: 6 soļi (ar attēliem)
DIY Raspberry Pi Zero rokas spēļu konsole: Šajā projektā es jums parādīšu, kā es izmantoju Raspberry Pi Zero, NiMH baterijas, mājās gatavotu pārslodzes aizsardzības ķēdi, atpakaļskata LCD un audio pastiprinātāju, lai izveidotu rokas spēļu konsoli, kuru var atskaņot retro spēles. Sāksim
GamePi - rokas emulatora konsole: 17 soļi (ar attēliem)
GamePi - rokas emulatora konsole: Ievads: Šī pamācība apraksta Raspberry Pi 3 darbināmas rokas emulācijas konsoles izveidi - esmu to nokristījis ar GamePi. Šādām ierīcēm ir daudz līdzīgu pamācību, taču manai gaumei lielākā daļa ir pārāk lielas, pārāk mazas
Rokas spēļu konsole - Arduboja klons: 6 soļi (ar attēliem)
Rokas spēļu konsole | Arduboy Clone: Pirms dažiem mēnešiem es saskāros ar Arduboy, kas saskaņā ar tās oficiālo vietni ir miniatūra 8 bitu spēļu platforma, kas ļauj ērti mācīties, koplietot un spēlēt spēles tiešsaistē. Tā ir atvērtā koda platforma. Arduboy spēles veido lietotājs
Rokas Recalbox spēļu konsole, izmantojot 2.2 TFT: 6 soļi
Rokas pārnēsājamā spēļu konsole, izmantojot 2.2 TFT: Instrukcijas rokas recalbox spēļu konsoles izgatavošanai, izmantojot 2,2 collu TFT LCD un Raspberry Pi 0 W un GPIO pogas. Jūs varat apskatīt šo YouTube videoklipu, lai pilnībā parādītu iesaistītās darbības: A. Iegūstiet visas detaļas.B. Lodējiet detaļas kopā