Indholdsfortegnelse:

Esplora X M5Stack: 11 trin (med billeder)
Esplora X M5Stack: 11 trin (med billeder)

Video: Esplora X M5Stack: 11 trin (med billeder)

Video: Esplora X M5Stack: 11 trin (med billeder)
Video: Пальцевый компьютер | M5Стик C 2024, Juli
Anonim
Esplora X M5Stack
Esplora X M5Stack

Denne instruktion viser, hvordan du kombinerer Arduino Esplora og M5Stack til at lave en NES -spilkonsol.

Trin 1: Hvad er Arduino Esplora?

Hvad er Arduino Esplora?
Hvad er Arduino Esplora?

Arduino Esplora er et Atmega32U4 AVR -mikrokontrollerkort.

Det er unikke Arduino-tavler, fordi det har indbygget forskellige input-sensorer ude af boksen, herunder et joystick, 4 trykknapper, en skyder, en temperatursensor, et accelerometer, en mikrofon, en lyssensor osv.

Og også Arduino IDE gav forskellige eksempler på at bruge det hele.

Denne gang vil jeg programmere Esplora som en I2C -slaveenhed til at fungere som en I2C -gamepad.

Ref.:

Trin 2: Hvad er M5Stack?

Hvad er M5Stack?
Hvad er M5Stack?
Hvad er M5Stack?
Hvad er M5Stack?

M5Stack starter fra et kickstarter-projekt i 2017, ESP32-kerne, indbygget 2,0 farve-LCD, lille 5 cm formfaktor, understøtter stabelbare moduler og grove I2C-moduler.

Nu har den allerede forskellige kernemodeller, snesevis af stabelbare moduler og understøtter også tonsvis af I2C Grove -moduler.

Ref.:

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

m5stack.com/

Trin 3: Hvorfor spille retrospil med ESP32?

Hvorfor spille Retro -spil med ESP32?
Hvorfor spille Retro -spil med ESP32?
Hvorfor spille Retro -spil med ESP32?
Hvorfor spille Retro -spil med ESP32?

Det er et meget populært emne, der bruger Raspberry Pi til at lave en retro -spilkonsol med Retropie -distribution.

Det gør jobbet meget godt, men det mest bemærkelsesværdige problem er opstartstiden.

Jeg vil ikke vente mere end et halvt minut med at komme ind i et retro -spil, en rigtig spilkonsol behøver ikke at vente på dette!

Så fandt jeg esp32-nesemu ingen grund til at vente på opstart, så jeg prøver at bruge M5Stack til at bygge en NES-spilkonsol.

Trin 4: Forberedelse af hardware

Forberedelse af hardware
Forberedelse af hardware
Forberedelse af hardware
Forberedelse af hardware
Forberedelse af hardware
Forberedelse af hardware
Forberedelse af hardware
Forberedelse af hardware

Arduino Esplora

Det officielle produkt er forældet, men det er stadig meget let at finde en klon på nettet.

M5Stack

Enhver M5Stack -kerne med 2,0 LCD skal være ok.

Pin overskrifter

2 pins han-han pin pin header og 6 pins male-female pin header.

Grove -konverteringskabel

Normal 4 -polet han -jumper til Grove 4 -polet konverteringskabel foretrækkes. Jeg havde ikke dette kabel i hånden, så jeg lapper bare 1 for at tilslutte SCL- og SDA -ben selv.

Trin 5: Forberedelse af software

Forberedelse af software
Forberedelse af software

Arduino IDE

Download og installer Arduino IDE, hvis ikke endnu:

www.arduino.cc/en/Main/Software

ESP-IDF

Følg installationsvejledningen for at installere ESP-IDF, hvis ikke endnu:

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

Trin 6: Program I2C Gamepad

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

Jeg har skrevet et simpelt program til at læse joystick og knapper input og oversætte det til I2C besked.

Her er programtrinnene:

  1. Download esplora-i2c-gamepad.ino på GitHub:
  2. Tilslut Esplora til computeren
  3. Åbn Arduino
  4. Upload program

Trin 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 brugergrænseflader, men ironisk nok er det mangel på I2C (Grove System) breakout pins.

Heldigvis bruges I2C -benene i ATMega32U4 endnu ikke til andre formål. Og også den venstre sidehoved på Esplora er "ikke i øjeblikket forbundet", vi kan bruge denne pinhoved til at bryde I2C -benene ud.

Brug blot 2 ledninger og noget lodning til at forbinde ATMega32U4 pin 18 (SCL) og pin 19 (SDA) til det venstre pin header.

Ref.:

Trin 8: Brug Pin Headers til at rette M5Stack på Esplora

Brug Pin Headers til at rette M5Stack på Esplora
Brug Pin Headers til at rette M5Stack på Esplora
Brug Pin Headers til at rette M5Stack på Esplora
Brug Pin Headers til at rette M5Stack på Esplora
Brug Pin Headers til at rette M5Stack på Esplora
Brug Pin Headers til at rette M5Stack på Esplora

De fleste 2 nederste ben ved Esplora -højre sidehoved er GND og 5V, det kan matches med M5Stack -kerne -base pinout. Så vi kan bøje et 2-pins male-male pin header for at forbinde hinanden.

Esplora venstre side pin header ikke forbundet noget, de foregående trin brugte 2 øverste fleste pins som I2C bryde ud. Der er resterende 6 ben, vi kan bøje en 6-pins han-hun pin-overskrift for at fastsætte M5Stack på Esplora.

Trin 9: Tilslut I2C -pins

Tilslut I2C -pins
Tilslut I2C -pins
Tilslut I2C -pins
Tilslut I2C -pins

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

Da GND og 5V allerede var forbundet ved de foregående trin, krævede kun SCL og SDA yderligere forbindelse.

Trin 10: Programmer M5Stack

Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
  1. Download revideret version af esp32-nesemu fra GitHub:
  2. Under esp32-nesemu skal du køre "make menuconfig"
  3. Åbn undermenuen "Nofrendo ESP32-specifik konfiguration"
  4. Vælg "Hardware, der skal køres på" til "M5Stack"
  5. Aktiver "Analog lyd på GPIO26"
  6. Vælg "Controller type" til "I2C Gamepad"
  7. Afslut menukonfig
  8. Kør "make -j5 all" for at kompilere programmet
  9. Tilslut M5Stack til computeren
  10. Kør "make flash" for at blinke den kompilerede binær til M5Stack
  11. Kør "sh flashrom.sh PATH_TO_YOUR_NES_ROM_FILENAME"

Trin 11: God fornøjelse

God fornøjelse!
God fornøjelse!

Det er tid til at spille dit yndlingsspil!

Anbefalede: