Talaan ng mga Nilalaman:

Esplora X M5Stack: 11 Hakbang (na may Mga Larawan)
Esplora X M5Stack: 11 Hakbang (na may Mga Larawan)

Video: Esplora X M5Stack: 11 Hakbang (na may Mga Larawan)

Video: Esplora X M5Stack: 11 Hakbang (na may Mga Larawan)
Video: ПЛАТФОРМА M5STACK, ESP32 ДЛЯ ARDUINO 2024, Nobyembre
Anonim
Esplora X M5Stack
Esplora X M5Stack

Ipinapakita ng mga itinuturo na ito kung paano pagsamahin ang Arduino Esplora at M5Stack upang makagawa ng isang NES game console.

Hakbang 1: Ano ang Arduino Esplora?

Ano ang Arduino Esplora?
Ano ang Arduino Esplora?

Ang Arduino Esplora ay isang board ng Atmega32U4 AVR microcontroller.

Ito ay natatanging Arduino boards, dahil naka-built-in na iba't ibang mga input sensor sa labas ng kahon, kasama ang isang joystick, 4 na pindutan ng push, isang slider, isang sensor ng temperatura, isang accelerometer, isang mikropono, isang light sensor, atbp.

At din Arduino IDE ay nagbigay ng iba't ibang mga halimbawa para sa paggamit ng lahat ng ito.

Sa oras na ito ay ipaprogram ko ang Esplora bilang isang aparato ng alipin ng I2C upang kumilos bilang isang gamepad ng I2C.

Ref.:

Hakbang 2: Ano ang M5Stack?

Ano ang M5Stack?
Ano ang M5Stack?
Ano ang M5Stack?
Ano ang M5Stack?

Magsimula ang M5Stack mula sa isang proyekto ng kickstarter sa 2017, core ng ESP32, built-in na 2.0 color LCD, maliit na 5 cm form factor, suportahan ang mga stackable module at grove I2C module.

Ngayon mayroon na itong iba't ibang mga pangunahing modelo, sampu-sampung mga stackable na module at sinusuportahan din ang toneladang mga module ng I2C Grove.

Ref.:

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

m5stack.com/

Hakbang 3: Bakit Maglaro ng Retro Game Sa ESP32?

Bakit Maglaro ng Retro Game Sa ESP32?
Bakit Maglaro ng Retro Game Sa ESP32?
Bakit Maglaro ng Retro Game Sa ESP32?
Bakit Maglaro ng Retro Game Sa ESP32?

Ito ay isang napakapopular na paksa gamit ang Raspberry Pi upang makagawa ng isang retro game console na may pamamahagi ng Retropie.

Napakaganda nitong ginagawa ang trabaho, ngunit ang pinaka-kapansin-pansin na problema ay ang oras ng pag-boot.

Hindi ko nais na maghintay ng higit sa kalahating minuto upang makapasok sa isang retro game, isang tunay na game console na hindi na kailangang maghintay para dito!

Pagkatapos ay nahanap ko ang esp32-nesemu na hindi na kailangang maghintay para sa boot, kaya't sinubukan kong gumamit ng M5Stack upang makabuo ng isang NES game console.

Hakbang 4: Paghahanda ng Hardware

Paghahanda ng Hardware
Paghahanda ng Hardware
Paghahanda ng Hardware
Paghahanda ng Hardware
Paghahanda ng Hardware
Paghahanda ng Hardware
Paghahanda ng Hardware
Paghahanda ng Hardware

Arduino Esplora

Ang opisyal na produkto ay lipas na ngunit napakadali pa rin upang makahanap ng isang clone sa web.

M5Stack

Anumang M5Stack core na may 2.0 LCD ay dapat na ok.

Mga Pin Header

2 pin male-male pin header at 6 pin male-female pin header.

Grove Conversion Cable

Normal na 4 na pin na Lalake Jumper hanggang sa Grove na ginustong 4 na Conversion Cable. Wala akong kable na ito sa kamay, kaya nag-patch lang ako ng 1 upang ikonekta ang mga pin ng SCL at SDA sa aking sarili.

Hakbang 5: Paghahanda ng Software

Paghahanda ng Software
Paghahanda ng Software

Arduino IDE

I-download at i-install ang Arduino IDE kung hindi pa:

www.arduino.cc/en/Main/Software

ESP-IDF

Sundin ang gabay sa pag-set up upang mai-install ang ESP-IDF kung hindi pa:

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

Hakbang 6: Program I2C Gamepad

Program I2C Gamepad
Program I2C Gamepad
Program I2C Gamepad
Program I2C Gamepad

Nagsulat ako ng isang simpleng programa upang basahin ang joystick at pag-input ng mga pindutan at isalin ito sa mensahe ng I2C.

Narito ang mga hakbang sa programa:

  1. I-download ang esplora-i2c-gamepad.ino sa GitHub:
  2. Ikonekta ang Esplora sa computer
  3. Buksan ang Arduino
  4. Mag-upload ng programa

Hakbang 7: Breakout Esplora I2C

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

Ang Arduino Esplora ay mayroong pinaka I / O at mga interface ng gumagamit, ngunit ironically ito ay kakulangan ng I2C (Grove System) breakout pins.

Sa kasamaang palad, ang mga pin ng I2C sa ATMega32U4 ay hindi pa ginagamit para sa ibang layunin. At din ang kaliwang bahagi ng header ng pin sa Esplora ay "hindi kasalukuyang konektado", maaari naming gamitin ang pin header na ito upang masira ang mga I2C pin.

Gumamit lamang ng 2 wires at ilang gawaing paghihinang upang ikonekta ang ATMega32U4 pin 18 (SCL) at i-pin ang 19 (SDA) sa kaliwang header ng pin.

Ref.:

Hakbang 8: Gumamit ng Mga Pin Header upang Ayusin ang M5Stack sa Esplora

Gumamit ng Mga Pin Header upang Ayusin ang M5Stack sa Esplora
Gumamit ng Mga Pin Header upang Ayusin ang M5Stack sa Esplora
Gumamit ng Mga Pin Header upang Ayusin ang M5Stack sa Esplora
Gumamit ng Mga Pin Header upang Ayusin ang M5Stack sa Esplora
Gumamit ng Mga Pin Header upang Ayusin ang M5Stack sa Esplora
Gumamit ng Mga Pin Header upang Ayusin ang M5Stack sa Esplora

Ang pinakamaraming 2 ilalim na pin sa Esplora na kanang bahagi ng pin na header ay GND at 5V, maaari itong tumugma sa M5Stack core base pinout. Kaya't maaari nating yumuko ang isang 2 pin na header ng male-male pin upang kumonekta sa bawat isa.

Ang Esplora left head pin header ay hindi nakakonekta sa anumang bagay, ang nakaraang mga hakbang ay ginamit ang 2 nangungunang pinakamaraming pin habang sumisira ang I2C. May mananatiling 6 na mga pin, maaari naming yumuko ang isang 6 na pin na header ng male-female pin upang ayusin ang M5Stack sa Esplora.

Hakbang 9: Ikonekta ang I2C Pins

Ikonekta ang I2C Pins
Ikonekta ang I2C Pins
Ikonekta ang I2C Pins
Ikonekta ang I2C Pins

Ang Esplora at M5Stack ay nakikipag-usap sa I2C protocol, ang M5Stack ay kumikilos bilang master ng I2C at ang Esplora ay alipin ng I2C.

Dahil ang GND at 5V ay nakakonekta na sa mga nakaraang hakbang, ang SCL at SDA lamang ang nangangailangan ng karagdagang koneksyon.

Hakbang 10: Program M5Stack

Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
  1. Mag-download ng binagong bersyon ng esp32-nesemu mula sa GitHub:
  2. Sa ilalim ng esp32-nesemu, patakbuhin ang "make menuconfig"
  3. Ipasok ang submenu na "Nofrendo na tukoy sa tukoy na ESP32"
  4. Piliin ang "Hardware to run on" to "M5Stack"
  5. Paganahin ang "Analog audio sa GPIO26"
  6. Piliin ang "Controller type" sa "I2C Gamepad"
  7. Lumabas sa menuconfig
  8. Patakbuhin ang "make -j5 lahat" upang maipon ang programa
  9. Ikonekta ang M5Stack sa computer
  10. Patakbuhin ang "gumawa ng flash" upang i-flash ang naipon na binary sa M5Stack
  11. Patakbuhin ang "sh flashrom.sh PATH_TO_YOUR_NES_ROM_FILENAME"

Hakbang 11: Mag-enjoy

Mag-enjoy!
Mag-enjoy!

Panahon na upang i-play ang iyong paboritong laro!

Inirerekumendang: