Innehållsförteckning:

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

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

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

Denna instruktion visar hur du kombinerar Arduino Esplora och M5Stack för att skapa en NES -spelkonsol.

Steg 1: Vad är Arduino Esplora?

Vad är Arduino Esplora?
Vad är Arduino Esplora?

Arduino Esplora är ett Atmega32U4 AVR -mikrokontrollerkort.

Det är unika Arduino-kort, eftersom det har inbyggda olika ingångssensorer utanför lådan, inklusive en joystick, 4 tryckknappar, en reglage, en temperatursensor, en accelerometer, en mikrofon, en ljussensor, etc.

Och även Arduino IDE gav olika exempel för att använda allt.

Den här gången kommer jag att programmera Esplora som en I2C -slavenhet för att fungera som en I2C -spelkontroll.

Ref.:

Steg 2: Vad är M5Stack?

Vad är M5Stack?
Vad är M5Stack?
Vad är M5Stack?
Vad är M5Stack?

M5Stack startar från ett kickstarter-projekt 2017, ESP32-kärna, inbyggd 2,0 färg LCD, liten 5 cm formfaktor, stöd för staplingsbara moduler och grove I2C-moduler.

Nu har den redan olika kärnmodeller, tiotals staplingsbara moduler och stöder också massor av I2C Grove -moduler.

Ref.:

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

m5stack.com/

Steg 3: Varför spela retrospel med ESP32?

Varför spela retrospel med ESP32?
Varför spela retrospel med ESP32?
Varför spela retrospel med ESP32?
Varför spela retrospel med ESP32?

Det är ett mycket populärt ämne som använder Raspberry Pi för att göra en retro spelkonsol med Retropie -distribution.

Det gör jobbet mycket bra, men det mest anmärkningsvärda problemet är starttiden.

Jag vill inte vänta över en halv minut för att gå in i ett retrospel, en riktig spelkonsol behöver inte vänta på detta!

Sedan fann jag esp32-nesemu ingen anledning att vänta på start, så jag försöker använda M5Stack för att bygga en NES spelkonsol.

Steg 4: Förberedelse av maskinvara

Förberedelse av hårdvara
Förberedelse av hårdvara
Förberedelse av hårdvara
Förberedelse av hårdvara
Förberedelse av hårdvara
Förberedelse av hårdvara
Förberedelse av hårdvara
Förberedelse av hårdvara

Arduino Esplora

Den officiella produkten är föråldrad men det är fortfarande väldigt lätt att hitta en klon på webben.

M5Stack

Varje M5Stack -kärna med 2,0 LCD bör vara ok.

Stifthuvuden

2 stift han-han-stifthuvud och 6 stift han-hona-stifthuvud.

Grove -omvandlingskabel

Normal 4 -stifts hanbygel till Grove 4 -stifts konverteringskabel föredragen. Jag hade inte den här kabeln i handen, så jag lappar bara 1 för att ansluta SCL- och SDA -stift själv.

Steg 5: Förberedelse av programvara

Förberedelse av programvara
Förberedelse av programvara

Arduino IDE

Ladda ner och installera Arduino IDE om inte ännu:

www.arduino.cc/en/Main/Software

ESP-IDF

Följ installationsguiden för att installera ESP-IDF om inte ännu:

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

Steg 6: Program I2C Gamepad

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

Jag har skrivit ett enkelt program för att läsa joysticken och knapparna och översätta det till I2C -meddelande.

Här är programstegen:

  1. Ladda ner esplora-i2c-gamepad.ino på GitHub:
  2. Anslut Esplora till datorn
  3. Öppna Arduino
  4. Ladda upp program

Steg 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 flesta I/O och användargränssnitt, men ironiskt nog är det brist på I2C (Grove System) breakout pins.

Lyckligtvis används I2C -stiften i ATMega32U4 ännu inte för andra ändamål. Och även den vänstra sidans stifthuvud på Esplora är "för närvarande inte ansluten", vi kan använda denna stifthuvud för att bryta ut I2C -stiften.

Använd bara 2 trådar och lite lödarbete för att ansluta ATMega32U4 stift 18 (SCL) och stift 19 (SDA) till vänster stiftrubrik.

Ref.:

Steg 8: Använd Pin Headers för att fixa M5Stack på Esplora

Använd Pin Headers för att fixa M5Stack på Esplora
Använd Pin Headers för att fixa M5Stack på Esplora
Använd Pin Headers för att fixa M5Stack på Esplora
Använd Pin Headers för att fixa M5Stack på Esplora
Använd Pin Headers för att fixa M5Stack på Esplora
Använd Pin Headers för att fixa M5Stack på Esplora

De flesta 2 nedre stiften på Esplora höger sidhuvud är GND och 5V, den kan matchas med M5Stack -basbas. Så vi kan böja ett 2-stifts han-han-stifthuvud för att ansluta varandra.

Esplora vänster sida stifthuvud inte ansluten någonting, de föregående stegen använde två översta stiften när I2C bryter ut. Det finns kvar 6 stift, vi kan böja en 6-stifts han-hona stifthuvud för att fixa M5Stack på Esplora.

Steg 9: Anslut I2C -stift

Anslut I2C -stift
Anslut I2C -stift
Anslut I2C -stift
Anslut I2C -stift

Esplora och M5Stack kommunicerar med I2C -protokollet, M5Stack fungerar som I2C -master och Esplora är I2C -slav.

Eftersom GND och 5V redan var anslutna vid föregående steg, krävde endast SCL och SDA ytterligare anslutning.

Steg 10: Programmera M5Stack

Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
  1. Ladda ner den reviderade versionen av esp32-nesemu från GitHub:
  2. Under esp32-nesemu, kör "make menuconfig"
  3. Öppna undermenyn "Nofrendo ESP32-specifik konfiguration"
  4. Välj "Hårdvara att köra på" till "M5Stack"
  5. Aktivera "Analogt ljud på GPIO26"
  6. Välj "Controller type" till "I2C Gamepad"
  7. Avsluta menykonfig
  8. Kör "make -j5 all" för att kompilera programmet
  9. Anslut M5Stack till datorn
  10. Kör "make flash" för att blinka den kompilerade binären till M5Stack
  11. Kör "sh flashrom.sh PATH_TO_YOUR_NES_ROM_FILENAME"

Steg 11: Njut

Njut av!
Njut av!

Det är dags att spela ditt favoritspel!

Rekommenderad: