Innholdsfortegnelse:

Esplora X M5Stack: 11 trinn (med bilder)
Esplora X M5Stack: 11 trinn (med bilder)

Video: Esplora X M5Stack: 11 trinn (med bilder)

Video: Esplora X M5Stack: 11 trinn (med bilder)
Video: ПЛАТФОРМА M5STACK, ESP32 ДЛЯ ARDUINO 2024, Juli
Anonim
Esplora X M5Stack
Esplora X M5Stack

Denne instruksjonene viser hvordan du kombinerer Arduino Esplora og M5Stack for å lage en NES -spillkonsoll.

Trinn 1: Hva er Arduino Esplora?

Hva er Arduino Esplora?
Hva er Arduino Esplora?

Arduino Esplora er et Atmega32U4 AVR mikrokontrollerbord.

Det er unike Arduino-kort, fordi det innebygde forskjellige inngangssensorer utenom boksen, inkludert en joystick, 4 trykknapper, en glidebryter, en temperatursensor, et akselerometer, en mikrofon, en lyssensor, etc.

Og også Arduino IDE ga forskjellige eksempler for bruk av alt.

Denne gangen skal jeg programmere Esplora som en I2C -slaveenhet for å fungere som en I2C -gamepad.

Ref.:

Trinn 2: Hva er M5Stack?

Hva er M5Stack?
Hva er M5Stack?
Hva er M5Stack?
Hva er M5Stack?

M5Stack starter fra et kickstarter-prosjekt i 2017, ESP32-kjerne, innebygd 2,0 fargeskjerm, liten 5 cm formfaktor, støtte stabelbare moduler og grove I2C-moduler.

Nå har den allerede forskjellige kjernemodeller, titalls stabelbare moduler og støtter også tonnevis av I2C Grove -moduler.

Ref.:

www.kickstarter.com/projects/179167367/m5s…

m5stack.com/

Trinn 3: Hvorfor spille retrospill med ESP32?

Hvorfor spille Retro -spill med ESP32?
Hvorfor spille Retro -spill med ESP32?
Hvorfor spille Retro -spill med ESP32?
Hvorfor spille Retro -spill med ESP32?

Det er et veldig populært tema som bruker Raspberry Pi til å lage en retro spillkonsoll med Retropie -distribusjon.

Det gjør jobben veldig bra, men det mest bemerkelsesverdige problemet er oppstartstiden.

Jeg vil ikke vente over et halvt minutt for å gå inn i et retro -spill, en ekte spillkonsoll, du trenger ikke vente på dette!

Da fant jeg esp32-nesemu ikke nødvendig å vente på oppstart, så jeg prøver å bruke M5Stack til å bygge en NES spillkonsoll.

Trinn 4: Forberedelse av maskinvare

Forberedelse av maskinvare
Forberedelse av maskinvare
Forberedelse av maskinvare
Forberedelse av maskinvare
Forberedelse av maskinvare
Forberedelse av maskinvare
Forberedelse av maskinvare
Forberedelse av maskinvare

Arduino Esplora

Det offisielle produktet er foreldet, men det er fortsatt veldig enkelt å finne en klon på nettet.

M5Stack

Enhver M5Stack -kjerne med 2,0 LCD bør være ok.

Pin Headers

2 pins han-hann pin pin header og 6 pins mann-hunn pin pin header.

Grove konverteringskabel

Normal 4 -pins hannhopper til Grove 4 -pins konverteringskabel foretrukket. Jeg hadde ikke denne kabelen i hånden, så jeg lapper bare 1 for å koble SCL- og SDA -pinner selv.

Trinn 5: Forberedelse av programvare

Forberedelse av programvare
Forberedelse av programvare

Arduino IDE

Last ned og installer Arduino IDE hvis ikke ennå:

www.arduino.cc/en/Main/Software

ESP-IDF

Følg installasjonsguiden for å installere ESP-IDF hvis ikke ennå:

docs.espressif.com/projects/esp-idf/en/sta…

Trinn 6: Program I2C Gamepad

Program I2C gamepad
Program I2C gamepad
Program I2C gamepad
Program I2C gamepad

Jeg har skrevet et enkelt program for å lese joysticken og knappene og oversette det til I2C -melding.

Her er programtrinnene:

  1. Last ned esplora-i2c-gamepad.ino på GitHub:
  2. Koble Esplora til datamaskinen
  3. Åpne Arduino
  4. Last opp program

Trinn 7: Breakout Esplora I2C

Breakout Esplora I2C
Breakout Esplora I2C
Breakout Esplora I2C
Breakout Esplora I2C
Breakout Esplora I2C
Breakout Esplora I2C

Arduino Esplora har de fleste I/O og brukergrensesnitt, men ironisk nok er det mangel på I2C (Grove System) breakout pins.

Heldigvis er I2C -pinnene i ATMega32U4 ennå ikke brukt til andre formål. Og også den venstre sidehodet på Esplora er "ikke tilkoblet for øyeblikket", vi kan bruke denne pinhodet til å bryte ut I2C -pinnene.

Bare bruk 2 ledninger og litt loddearbeid for å koble ATMega32U4 -pinne 18 (SCL) og pinne 19 (SDA) til den venstre pinnehodet.

Ref.:

Trinn 8: Bruk Pin Headers til å fikse M5Stack på Esplora

Bruk Pin Headers til å fikse M5Stack på Esplora
Bruk Pin Headers til å fikse M5Stack på Esplora
Bruk Pin Headers til å fikse M5Stack på Esplora
Bruk Pin Headers til å fikse M5Stack på Esplora
Bruk Pin Headers til å fikse M5Stack på Esplora
Bruk Pin Headers til å fikse M5Stack på Esplora

De to nederste pinnene på Esplora høyre sidehodet er GND og 5V, den kan matches med M5Stack kjerne base pinout. Så vi kan bøye en 2-pins mann-hann pin pin header for å koble hverandre.

Esplora venstre sidehodet ikke koblet noe, de forrige trinnene brukte 2 øverste de fleste pinner som I2C bryte ut. Det gjenstår 6 pinner, vi kan bøye en 6-pins mann-hunn-pin-topptekst for å fikse M5Stack på Esplora.

Trinn 9: Koble til I2C Pins

Koble til I2C Pins
Koble til I2C Pins
Koble til I2C Pins
Koble til I2C Pins

Esplora og M5Stack kommuniserer med I2C -protokollen, M5Stack fungerer som I2C -master og Esplora er I2C -slave.

Siden GND og 5V allerede var tilkoblet i de foregående trinnene, var det bare SCL og SDA som krevde ytterligere tilkobling.

Trinn 10: Program M5Stack

Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
  1. Last ned revidert versjon av esp32-nesemu fra GitHub:
  2. Under esp32-nesemu, kjør "make menuconfig"
  3. Gå til undermenyen "Nofrendo ESP32-spesifikk konfigurasjon"
  4. Velg "Maskinvare å kjøre på" til "M5Stack"
  5. Aktiver "Analog lyd på GPIO26"
  6. Velg "Controller type" til "I2C Gamepad"
  7. Avslutt menyen
  8. Kjør "make -j5 all" for å kompilere programmet
  9. Koble M5Stack til datamaskinen
  10. Kjør "make flash" for å blinke den kompilerte binæren til M5Stack
  11. Kjør "sh flashrom.sh PATH_TO_YOUR_NES_ROM_FILENAME"

Trinn 11: Kos deg

Nyt!
Nyt!

Det er på tide å spille favorittspillet ditt!

Anbefalt: