Sisukord:

ESP32 käeshoitav mängukonsool: 21 sammu (koos piltidega)
ESP32 käeshoitav mängukonsool: 21 sammu (koos piltidega)

Video: ESP32 käeshoitav mängukonsool: 21 sammu (koos piltidega)

Video: ESP32 käeshoitav mängukonsool: 21 sammu (koos piltidega)
Video: Game Gear Micro / Распаковка, обзор, тестирование 2024, Juuli
Anonim
Image
Image
Riistvara ettevalmistamine
Riistvara ettevalmistamine

Need juhendid näitavad, kuidas kasutada ESP32 ja ATtiny861 NES -emulaatori mängukonsooli loomiseks.

Samm: riistvara ettevalmistamine

Riistvara ettevalmistamine
Riistvara ettevalmistamine
Riistvara ettevalmistamine
Riistvara ettevalmistamine

ESP32 arendusplaat

Seekord kasutan TTGO T8 ESP32 arendusplaati. Sellel plaadil on sisseehitatud Lipo laadimis- ja reguleerimisahel, see aitab vähendada lisakomponente.

Ekraan

Seekord kasutan 2,4 IPS LCD -ekraani. Juhi kontroller on ST7789V ja eraldusvõime 320 x 240. See eraldusvõime sobib kõige paremini NES -emulaatori 252 x 224 eraldusvõimega.

Aku

Seekord kasutan 454261 Lipo akut. 4,5 mm on ESP32 arendusplaadi paksus ja 61 mm on plaadi laius.

Kinnitage päis

4 kontaktiga isane ümmargune tihvti päis ja 4 kontaktiga ümmargune tihvtiga päis I2C mängupuldi ühendamiseks.

PETG plaat

Väike PET/PETG plaat arendusplaadi ja Lipo aku toetamiseks, leiate selle hõlpsalt toote pakendist.

Mitmeotstarbeline trükkplaat

Vajalik on 2 trükkplaati, 1 0,4 mm paksune ekraani toetamiseks, 1 1,2 mm paksune I2C mängupuldi jaoks.

Nupud

5 suunanuppu, 2 väikest nuppu valimiseks ja käivitamiseks ning 2 nuppu A ja B.

I2C mängupuldi kontroller

Seekord kasutan ATtiny861 mikrokontrollerit mängupuldi I2C kontrollerina.

Teised

1 SMD 12 oomi takisti, ISP programmeerija (nt TinyISP)

2. samm: tarkvara ettevalmistamine

Tarkvara ettevalmistamine
Tarkvara ettevalmistamine
Tarkvara ettevalmistamine
Tarkvara ettevalmistamine
Tarkvara ettevalmistamine
Tarkvara ettevalmistamine

Arduino IDE

Laadige alla ja installige Arduino IDE, kui mitte:

ATTinyCore'i tugi

ATTinyCore toe lisamiseks järgige installimise samme, kui veel pole:

ESP-IDF

Arenduskeskkonna seadistamiseks järgige ESP-IDF-i alustamisjuhendit:

Samm: 3D -printimine

3D printimine
3D printimine

Laadige korpus alla ja printige see välja:

Samm 4: LCD tugi

LCD tugi
LCD tugi
LCD tugi
LCD tugi

Lõigake 24 x 27 auguga 0,4 mm trükkplaat LCD toe jaoks. Pidage meeles, et reserveerige veidi ruumi LCD FPC voltimiseks. Seejärel kinnitage kahepoolne kleeplint LCD -plaadile.

Samm: valmistage ette PETG plaat

Valmistage ette PETG plaat
Valmistage ette PETG plaat
Valmistage ette PETG plaat
Valmistage ette PETG plaat

Lõika välja 62 mm x 69 mm PETG plaat arendusplaadi ja Lipo aku toe jaoks.

Samm: parandage ESP32 arendusplaat

Parandage ESP32 arendusplaat
Parandage ESP32 arendusplaat

Kasutage kahepoolset kleeplinti PETG plaadile plaadi kinnitamiseks.

Samm: parandage Lipo aku

Parandage Lipo aku
Parandage Lipo aku

Kasutage kahepoolset kleeplinti Lipo aku kinnitamiseks peale arendusplaadi.

Samm: ühendage aku ja arendusplaat

Ühendage aku ja arendusplaat
Ühendage aku ja arendusplaat

Samm: valmistage ette kuvari tihvtid

Valmistage ette kuvari tihvtid
Valmistage ette kuvari tihvtid

LCD -ekraanil on palju variatsioone erinevatelt müüjatelt. Palun hankige õige andmeleht ja lugege see enne plaastrit ja ühendust.

Mõned tihvtid on reserveeritud puutepaneelile. Kuna sellel vedelkristallekraanil pole puutetundlikku paneeli, võib häireid vähendada lihtsalt nende tihvtide väljalõikamine.

Samm: ühendage GND tihvtid

Ühendage GND tihvtid
Ühendage GND tihvtid
Ühendage GND tihvtid
Ühendage GND tihvtid

Enamikul juhtudel on GND -ga ühenduse loomiseks vähe kontakte. Jootmise vähendamiseks lõikasin vasest lindi kuju, et jõuda kõigi GND tihvtideni ja seejärel jootma.

Samm: ühendage Vcc -tihvtid

Ühendage Vcc tihvtid
Ühendage Vcc tihvtid

Vcc -ga ühendamiseks on vaja 2 tihvti, LCD -toide ja LED -toide. Andmelehe kohaselt saab LCD -toite otse ühendada 3,3 V pingeplaadiga, kuid LED -toide töötab veidi madalamal kui 3,3 V. Seega on parem lisada SMD -takisti keskele, nt. 12 oomi takisti.

12. samm: ühendage LCD- ja arendusplaadi tugi

Ühendage LCD ja arendusplaadi tugi
Ühendage LCD ja arendusplaadi tugi

kasutage lindi abil LCD -toe ja arendusplaadi toe ühendamist. Mõlemad toed peaksid kokku voltimiseks jätma umbes 5 mm vahe.

Samm: ühendage SPI -tihvtid

Ühendage SPI tihvtid
Ühendage SPI tihvtid

Siin on ühenduse kokkuvõte:

LCD ESP32

GND -> GND RST -> GPIO 33 SCL -> GPIO 18 DC -> GPIO 27 CS -> GPIO 5 SDI -> GPIO 23 SDO -> pole ühendatud Vcc -> 3,3 V LED+ -> 12 oomi takisti -> 3,3 V LED - -> GND

14. samm: välguprogramm

Flash programm
Flash programm
Flash programm
Flash programm
Flash programm
Flash programm
Flash programm
Flash programm
  1. Laadige lähtekood alla GitHubist:
  2. Käivitage lähtekoodi kausta all käsk "make menuconfig"
  3. Valige "Nofrendo ESP32-specific configuration"
  4. Valige "Riistvara, mida kasutada" -> "Kohandatud riistvara"
  5. Valige "LCD tüüp" -> "ST7789V LCD"
  6. Täitmisnõela seaded: MISO -> -1, MOSI -> 23, CLK -> 18, CS -> 5, DC -> 27, RST -> 33, taustvalgus -> -1, IPS -> Y
  7. Välju ja salvesta
  8. Käivitage "make -j5 flash"
  9. Käivitage "sh flashrom.sh PATH_TO_YOUR_ROM_FILE"

Samm: I2C -pistik

I2C pistik
I2C pistik
I2C pistik
I2C pistik
I2C pistik
I2C pistik

I2C tihvtide katkestamine, ESP32 vaikimisi I2C tihvtid on järgmised:

Pin 1 (SCL) -> GPIO 22

Pin 2 (SDA) -> GPIO 21 Pin 3 (Vcc) -> 3,3 V (5 V toide puudub, kui toiteallikaks on Lipo aku) Pin 4 (GND) -> GND

16. samm: kokkupanek 1. osa

Image
Image

Järgige video samme, et kõik osad voldida ja kokku suruda.

17. samm: prototüüp I2C mängupult

Prototüüp I2C mängupult
Prototüüp I2C mängupult
Prototüüp I2C mängupult
Prototüüp I2C mängupult

I2C mängupuldi programm on väga lihtne, ainult 15 koodirida. Kuid pärast jootmist on ATtiny861 ümberprogrammeerimine pisut raske, seega on parem seda kõigepealt testida leivaplaadil.

Laadige programm alla, kompileerige ja välgutage GitHubist:

18. samm: looge I2C mängupult

Ehitage I2C mängupult
Ehitage I2C mängupult
Ehitage I2C mängupult
Ehitage I2C mängupult
Ehitage I2C mängupult
Ehitage I2C mängupult

Siin on ühenduse kokkuvõte:

ATtiny861 Nupp

GND -> Kõik nupud üks nööpnõel Nööpnõel 20 (PA0) -> Ülesnupp Tihvt 19 (PA1) -> Allanupp Tihvt 18 (PA2) -> Vasakpoolne nupp Tihvt 17 (PA3) -> Parempoolne nupp Tihvt 14 (PA4) -> Valige nupp Pin 13 (PA5) -> Start -nupp Pin 12 (PA6) -> A -nupp Pin 11 (PA7) -> B -nupp Pin 6 (GND) -> I2C isast tihvti päise tihvt 4 Pin 5 (Vcc) -> I2C isast tihvti otsiku tihvt 3 tihvti 3 (SCL) -> I2C isast tihvti otsiku tihvti 1 tihvti 1 (SDA) -> I2C isast tihvti

19. samm: kokkupanek 2. osa

Image
Image
Valikuline: helipurunõelad
Valikuline: helipurunõelad

Kaane ja mängupuldi I2C põhikorpusele paigaldamiseks järgige videotoiminguid.

Samm 20: valikuline: helitugevuse tihvtid

Image
Image
Valikuline: helipurunõelad
Valikuline: helipurunõelad

ESP32 arendajaplaat Pistikud 25 ja 26 väljastavad analooghelisignaali, nende kahe kontakti ja ka toitepistikute (3,3 V ja GND) ülaosas on väga lihtne lahti murda. Seejärel saate kõrvaklapid ühendada. Või isegi saate lisada kõlariga helivõimendusmooduli, et seda kõvasti mängida.

21. samm: mis saab edasi?

Mis järgmiseks?
Mis järgmiseks?

NES -emulaator pole ainus huvitav asi, mida saate ESP32 abil teha. Nt. saate selle abil luua mikropüütoni konsooli. Ainus komponent, mida peate muutma, on I2C mängupult I2C klaviatuurilt. Ma arvan, et ATtiny88 kontrolleriga pole seda nii raske teha. Olekut saate jälgida minu twitterist.

Soovitan: