Mündəricat:
- Addım 1: Arduino Esplora nədir?
- Addım 2: M5Stack nədir?
- Addım 3: Niyə ESP32 ilə Retro Oyunu Oynayırsınız?
- Addım 4: Avadanlıqların Hazırlanması
- Addım 5: Proqramın Hazırlanması
- Addım 6: Proqram I2C Gamepad
- Addım 7: Breaklor Esplora I2C
- Addım 8: Esplora -da M5Stack -ı düzəltmək üçün Pin Başlıqlarından istifadə edin
- Addım 9: I2C pinlərini bağlayın
- Addım 10: M5Stack proqramı
- Addım 11: Zövq alın
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
Bu təlimatlar, NES oyun konsolu etmək üçün Arduino Esplora və M5Stack -in necə birləşdiriləcəyini göstərir.
Addım 1: Arduino Esplora nədir?
Arduino Esplora, Atmega32U4 AVR mikrokontrolör lövhəsidir.
Benzersiz Arduino lövhələridir, çünki içərisində joystick, 4 düymə, sürgü, temperatur sensoru, akselerometr, mikrofon, işıq sensoru və s.
Həm də Arduino IDE bütün bunları istifadə etmək üçün müxtəlif nümunələr təqdim etdi.
Bu dəfə Esplora'yı I2C bir gamepad kimi çıxış etmək üçün bir I2C kölə cihazı olaraq proqramlaşdıracağam.
İstinad:
Addım 2: M5Stack nədir?
M5Stack, 2017-ci ildə kickstarter layihəsindən başlayır, ESP32 nüvəsi, quraşdırılmış 2.0 rəngli LCD, kiçik 5 sm forma faktoru, üst-üstə düşə bilən modullar və I2C modullarını dəstəkləyir.
İndi artıq müxtəlif nüvəli modelləri, onlarla yığma modulu və tonlarla I2C Grove modulunu dəstəkləyir.
İstinad:
www.kickstarter.com/projects/179167367/m5s…
m5stack.com/
Addım 3: Niyə ESP32 ilə Retro Oyunu Oynayırsınız?
Retropie paylanması ilə retro oyun konsolu etmək üçün Raspberry Pi istifadə edərək çox məşhur bir mövzudur.
İşi çox yaxşı yerinə yetirir, amma ən diqqət çəkən problem açılış vaxtıdır.
Retro oyuna girmək üçün yarım dəqiqədən çox gözləmək istəmirəm, əsl oyun konsolunun bunu gözləməsinə ehtiyac yoxdur!
Sonra esp32-nesemu açılışını gözləməyə ehtiyac olmadığını gördüm, buna görə də NES oyun konsolu qurmaq üçün M5Stack-dən istifadə etməyə çalışıram.
Addım 4: Avadanlıqların Hazırlanması
Arduino Esplora
Rəsmi məhsul köhnəlmiş olsa da internetdə bir klon tapmaq çox asandır.
M5Stack
2.0 LCD ilə hər hansı bir M5Stack nüvəsi yaxşı olmalıdır.
Pin başlıqları
2 pinli kişi-kişi pin başlığı və 6 pinli kişi-dişi pin başlığı.
Grove Dönüşüm Kabeli
Grove'dan Normal 4 pinli Kişi Jumper 4 pinli Dönüşüm Kabelinə üstünlük verilir. Əlinizdə bu kabel yox idi, buna görə SCL və SDA pinlərini özüm bağlamaq üçün yalnız 1 yamaq düzəldirəm.
Addım 5: Proqramın Hazırlanması
Arduino IDE
Arduino IDE proqramını yükləyin və yükləyin:
www.arduino.cc/en/Main/Software
ESP-IDF
ESP-IDF hələ qurulmamışdırsa, quraşdırma təlimatına əməl edin:
docs.espressif.com/projects/esp-idf/en/sta…
Addım 6: Proqram I2C Gamepad
Joystick və düymələrin girişini oxumaq və I2C mesajına çevirmək üçün sadə bir proqram yazdım.
Budur proqram addımları:
- GitHub-da esplora-i2c-gamepad.ino'yu yükləyin:
- Esplora'yı kompüterə qoşun
- Arduino açın
- Proqram yükləyin
Addım 7: Breaklor Esplora I2C
Arduino Esplora, əksər G/Ç və istifadəçi interfeyslərinə malikdir, amma qəribədir ki, I2C (Grove System) qırılma pinlərinin olmamasıdır.
Xoşbəxtlikdən, ATMega32U4 -dəki I2C pinləri hələ başqa məqsəd üçün istifadə edilmir. Ayrıca Esplora'daki sol tərəfdəki pin başlığı "hazırda bağlı deyil", bu pin başlığından I2C sancaqlarını çıxarmaq üçün istifadə edə bilərik.
ATMega32U4 pin 18 (SCL) və pin 19 -u (SDA) sol pin başlığına bağlamaq üçün sadəcə 2 tel və bir az lehimləmə işindən istifadə edin.
İstinad:
Addım 8: Esplora -da M5Stack -ı düzəltmək üçün Pin Başlıqlarından istifadə edin
Esplora sağ tərəfindəki pin başlığındakı ən çox 2 alt pin GND və 5V -dir, M5Stack əsas baza pinoutu ilə uyğunlaşdırıla bilər. Beləliklə, bir-birimizi birləşdirmək üçün 2 pinli kişi-kişi pin başlığını bükə bilərik.
Esplora sol tərəfindəki pin başlığı heç bir şeyə bağlı deyildi, əvvəlki addımlar I2C çıxanda ən çox 2 pin istifadə edirdi. Qalan 6 sancaq var, Esplorada M5Stack-ı düzəltmək üçün 6 pinli kişi-dişi pin başlığını əymək olar.
Addım 9: I2C pinlərini bağlayın
Esplora və M5Stack I2C protokolu ilə əlaqə qurur, M5Stack I2C ustası kimi çıxış edir və Esplora I2C quludur.
GND və 5V əvvəlki addımlarda artıq bağlandığından, yalnız SCL və SDA əlavə əlaqə tələb edirdi.
Addım 10: M5Stack proqramı
- GitHub-dan esp32-nesemu-nun düzəldilmiş versiyasını yükləyin:
- Esp32-nesemu altında, "make menuconfig" işləyin
- "Nofrendo ESP32 xüsusi konfiqurasiya" alt menyusuna daxil olun
- "M5Stack" ə "Çalışmaq üçün Avadanlıq" seçin.
- "GPIO26 -da analoq səs" i aktiv edin
- "I2C Gamepad" ə "Controller type" seçin
- Menuconfig -dən çıxın
- Proqramı tərtib etmək üçün "make -j5 all" işlədin
- M5Stack -ı kompüterə qoşun
- Tərtib edilmiş ikili faylları M5Stack -ə yandırmaq üçün "flash etmək" əmrini yerinə yetirin
- "Sh flashrom.sh PATH_TO_YOUR_NES_ROM_FILENAME" işlədin
Addım 11: Zövq alın
Sevdiyiniz oyunu oynamaq vaxtıdır!