Daftar Isi:
- Langkah 1: Persiapan Perangkat Keras
- Langkah 2: Persiapan Perangkat Lunak
- Langkah 3: Pencetakan 3D
- Langkah 4: Dukungan LCD
- Langkah 5: Siapkan Piring PETG
- Langkah 6: Perbaiki Papan Pengembang ESP32
- Langkah 7: Perbaiki Baterai Lipo
- Langkah 8: Hubungkan Baterai & Papan Pengembang
- Langkah 9: Siapkan Pin Tampilan
- Langkah 10: Hubungkan Pin GND
- Langkah 11: Hubungkan Pin Vcc
- Langkah 12: Hubungkan Dukungan LCD & Papan Dev
- Langkah 13: Hubungkan Pin SPI
- Langkah 14: Program Flash
- Langkah 15: Konektor I2C
- Langkah 16: Perakitan Bagian 1
- Langkah 17: Gamepad Prototipe I2C
- Langkah 18: Bangun Gamepad I2C
- Langkah 19: Perakitan Bagian 2
- Langkah 20: Opsional: Pin Audio Breakout
- Langkah 21: Apa Selanjutnya?
![Konsol Game Genggam ESP32: 21 Langkah (dengan Gambar) Konsol Game Genggam ESP32: 21 Langkah (dengan Gambar)](https://i.howwhatproduce.com/images/002/image-5588-j.webp)
Video: Konsol Game Genggam ESP32: 21 Langkah (dengan Gambar)
![Video: Konsol Game Genggam ESP32: 21 Langkah (dengan Gambar) Video: Konsol Game Genggam ESP32: 21 Langkah (dengan Gambar)](https://i.ytimg.com/vi/33jyygvU5iQ/hqdefault.jpg)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:54
![Image Image](https://i.howwhatproduce.com/images/002/image-5588-2-j.webp)
![](https://i.ytimg.com/vi/VabwqIvGB6I/hqdefault.jpg)
![Persiapan Perangkat Keras Persiapan Perangkat Keras](https://i.howwhatproduce.com/images/002/image-5588-3-j.webp)
Instruksi ini menunjukkan cara menggunakan ESP32 dan ATtiny861 untuk membuat konsol game emulator NES.
Langkah 1: Persiapan Perangkat Keras
![Persiapan Perangkat Keras Persiapan Perangkat Keras](https://i.howwhatproduce.com/images/002/image-5588-4-j.webp)
![Persiapan Perangkat Keras Persiapan Perangkat Keras](https://i.howwhatproduce.com/images/002/image-5588-5-j.webp)
Papan Pengembang ESP32
Kali ini saya menggunakan papan dev TTGO T8 ESP32. Papan ini memiliki sirkuit pengisian dan pengatur Lipo bawaan, ini dapat membantu mengurangi komponen tambahan.
Menampilkan
Kali ini saya menggunakan LCD IPS 2,4 . Driver controller ST7789V dan resolusi 320 x 240. Resolusi ini paling cocok untuk NES emulator resolusi 252 x 224.
Baterai
Kali ini saya menggunakan baterai Lipo 454261. 4,5 mm adalah ketebalan papan pengembang ESP32, dan 61 mm adalah lebar papan.
Pin Header
Header pin bulat jantan 4 pin dan header pin bulat betina 4 pin untuk menghubungkan gamepad I2C.
Piring PETG
Pelat PET / PETG kecil untuk mendukung papan dev dan baterai Lipo, Anda dapat dengan mudah menemukannya di kemasan produk.
PCB Tujuan Ganda
Diperlukan 2 PCB, tebal 1 0,4 mm untuk mendukung Tampilan, tebal 1 1,2 mm untuk gamepad I2C.
Tombol
Tombol 5 arah, 2 tombol kecil untuk Pilih dan Mulai dan 2 untuk tombol A dan B.
Pengontrol Gamepad I2C
Kali ini saya menggunakan mikrokontroler ATtiny861 sebagai pengontrol gamepad I2C.
Yang lain
1 SMD 12 Ohm resistor, programmer ISP (misalnya TinyISP)
Langkah 2: Persiapan Perangkat Lunak
![Persiapan Perangkat Lunak Persiapan Perangkat Lunak](https://i.howwhatproduce.com/images/002/image-5588-6-j.webp)
![Persiapan Perangkat Lunak Persiapan Perangkat Lunak](https://i.howwhatproduce.com/images/002/image-5588-7-j.webp)
![Persiapan Perangkat Lunak Persiapan Perangkat Lunak](https://i.howwhatproduce.com/images/002/image-5588-8-j.webp)
Arduino IDE
Unduh dan instal Arduino IDE jika belum:
Dukungan ATTinyCore
Ikuti langkah-langkah instalasi untuk menambahkan dukungan ATTinyCore jika belum:
ESP-IDF
Ikuti panduan memulai ESP-IDF untuk menyiapkan lingkungan pengembangan jika belum:
Langkah 3: Pencetakan 3D
![Pencetakan 3D Pencetakan 3D](https://i.howwhatproduce.com/images/002/image-5588-9-j.webp)
Unduh dan cetak kasing:
Langkah 4: Dukungan LCD
![Dukungan LCD Dukungan LCD](https://i.howwhatproduce.com/images/002/image-5588-10-j.webp)
![Dukungan LCD Dukungan LCD](https://i.howwhatproduce.com/images/002/image-5588-11-j.webp)
Potong PCB 24 x 27 lubang 0,4 mm untuk dukungan LCD. Ingat cadangan ruang untuk FPC LCD lipat. Kemudian gunakan beberapa pita perekat sisi ganda untuk memperbaiki LCD pada PCB.
Langkah 5: Siapkan Piring PETG
![Siapkan Piring PETG Siapkan Piring PETG](https://i.howwhatproduce.com/images/002/image-5588-12-j.webp)
![Siapkan Piring PETG Siapkan Piring PETG](https://i.howwhatproduce.com/images/002/image-5588-13-j.webp)
Potong pelat PETG 62 mm x 69 mm untuk papan dev dan dukungan baterai Lipo.
Langkah 6: Perbaiki Papan Pengembang ESP32
![Perbaiki Papan Pengembang ESP32 Perbaiki Papan Pengembang ESP32](https://i.howwhatproduce.com/images/002/image-5588-14-j.webp)
Gunakan pita perekat sisi ganda untuk memperbaiki papan dev pada pelat PETG.
Langkah 7: Perbaiki Baterai Lipo
![Perbaiki Baterai Lipo Perbaiki Baterai Lipo](https://i.howwhatproduce.com/images/002/image-5588-15-j.webp)
Gunakan pita perekat sisi ganda untuk memperbaiki baterai Lipo di samping papan dev.
Langkah 8: Hubungkan Baterai & Papan Pengembang
![Hubungkan Baterai & Papan Pengembang Hubungkan Baterai & Papan Pengembang](https://i.howwhatproduce.com/images/002/image-5588-16-j.webp)
Langkah 9: Siapkan Pin Tampilan
![Siapkan Pin Tampilan Siapkan Pin Tampilan](https://i.howwhatproduce.com/images/002/image-5588-17-j.webp)
Layar LCD memiliki banyak variasi bentuk vendor yang berbeda. Harap dapatkan lembar data yang benar dan bacalah sebelum patch dan koneksi apa pun.
Beberapa pin disediakan untuk panel sentuh. Karena LCD ini tidak memiliki panel sentuh, cukup dengan memotong pin tersebut dapat mengurangi gangguan.
Langkah 10: Hubungkan Pin GND
![Hubungkan Pin GND Hubungkan Pin GND](https://i.howwhatproduce.com/images/002/image-5588-18-j.webp)
![Hubungkan Pin GND Hubungkan Pin GND](https://i.howwhatproduce.com/images/002/image-5588-19-j.webp)
Dalam kebanyakan kasus, ada beberapa pin yang memerlukan koneksi ke GND. Untuk mengurangi upaya menyolder, saya memotong bentuk pita tembaga untuk mencapai semua pin GND dan kemudian menyolder semuanya.
Langkah 11: Hubungkan Pin Vcc
![Hubungkan Pin Vcc Hubungkan Pin Vcc](https://i.howwhatproduce.com/images/002/image-5588-20-j.webp)
Ada 2 pin yang diperlukan terhubung ke Vcc, daya LCD dan daya LED. Menurut lembar data, daya LCD dapat langsung terhubung ke papan dev pin 3,3 V tetapi daya LED beroperasi sedikit lebih rendah dari 3,3 V. Jadi lebih baik menambahkan resistor SMD di tengah, mis. resistor 12 ohm.
Langkah 12: Hubungkan Dukungan LCD & Papan Dev
![Hubungkan Dukungan LCD & Papan Dev Hubungkan Dukungan LCD & Papan Dev](https://i.howwhatproduce.com/images/002/image-5588-21-j.webp)
menggunakan pita menghubungkan dukungan LCD dan dukungan papan dev bersama-sama. Kedua penyangga harus menyediakan celah sekitar 5 mm untuk pelipatan.
Langkah 13: Hubungkan Pin SPI
![Hubungkan Pin SPI Hubungkan Pin SPI](https://i.howwhatproduce.com/images/002/image-5588-22-j.webp)
Berikut ringkasan koneksinya:
LCD ESP32
GND -> GND RST -> GPIO 33 SCL -> GPIO 18 DC -> GPIO 27 CS -> GPIO 5 SDI -> GPIO 23 SDO -> tidak terhubung Vcc -> LED 3,3 V+ -> resistor 12 Ohm -> LED 3,3 V - -> GND
Langkah 14: Program Flash
![Program Flash Program Flash](https://i.howwhatproduce.com/images/002/image-5588-23-j.webp)
![Program Flash Program Flash](https://i.howwhatproduce.com/images/002/image-5588-24-j.webp)
![Program Flash Program Flash](https://i.howwhatproduce.com/images/002/image-5588-25-j.webp)
![Program Flash Program Flash](https://i.howwhatproduce.com/images/002/image-5588-26-j.webp)
- Unduh kode sumber di GitHub:
- Di bawah folder kode sumber, jalankan "make menuconfig"
- Pilih "Konfigurasi khusus Nofrendo ESP32"
- Pilih "Perangkat Keras untuk dijalankan" -> "Perangkat Keras Kustom"
- Pilih "Tipe LCD" -> "ST7789V LCD"
- Isi pengaturan pin: MISO -> -1, MOSI -> 23, CLK -> 18, CS -> 5, DC -> 27, RST -> 33, Backlight -> -1, IPS -> Y
- Keluar dan Simpan
- Jalankan "make -j5 flash"
- Jalankan "sh flashrom.sh PATH_TO_YOUR_ROM_FILE"
Langkah 15: Konektor I2C
![Konektor I2C Konektor I2C](https://i.howwhatproduce.com/images/002/image-5588-27-j.webp)
![Konektor I2C Konektor I2C](https://i.howwhatproduce.com/images/002/image-5588-28-j.webp)
![Konektor I2C Konektor I2C](https://i.howwhatproduce.com/images/002/image-5588-29-j.webp)
Breakout pin I2C, pin I2C default ESP32 adalah:
Pin 1 (SCL) -> GPIO 22
Pin 2 (SDA) -> GPIO 21 Pin 3 (Vcc) -> 3,3 V (tidak ada daya 5 V saat ditenagai oleh baterai Lipo) Pin 4 (GND) -> GND
Langkah 16: Perakitan Bagian 1
![Image Image](https://i.howwhatproduce.com/images/002/image-5588-31-j.webp)
![](https://i.ytimg.com/vi/8VfJcM7wYEQ/hqdefault.jpg)
Ikuti langkah-langkah video untuk melipat dan meremas semua bagian ke dalam casing.
Langkah 17: Gamepad Prototipe I2C
![Gamepad Prototipe I2C Gamepad Prototipe I2C](https://i.howwhatproduce.com/images/002/image-5588-32-j.webp)
![Gamepad Prototipe I2C Gamepad Prototipe I2C](https://i.howwhatproduce.com/images/002/image-5588-33-j.webp)
Program untuk Gamepad I2C sangat sederhana, hanya 15 baris kode. Tetapi agak sulit untuk memprogram ulang ATtiny861 setelah menyolder, jadi lebih baik mengujinya di papan tempat memotong roti terlebih dahulu.
Unduh, kompilasi, dan flash program dari GitHub:
Langkah 18: Bangun Gamepad I2C
![Bangun Gamepad I2C Bangun Gamepad I2C](https://i.howwhatproduce.com/images/002/image-5588-34-j.webp)
![Bangun Gamepad I2C Bangun Gamepad I2C](https://i.howwhatproduce.com/images/002/image-5588-35-j.webp)
![Bangun Gamepad I2C Bangun Gamepad I2C](https://i.howwhatproduce.com/images/002/image-5588-36-j.webp)
Berikut adalah ringkasan koneksi:
Tombol ATtiny861
GND -> Semua tombol satu pin Pin 20 (PA0) -> Tombol Atas Pin 19 (PA1) -> Tombol Bawah Pin 18 (PA2) -> Tombol Kiri Pin 17 (PA3) -> Tombol Kanan Pin 14 (PA4) -> Pilih tombol Pin 13 (PA5) -> Tombol Start Pin 12 (PA6) -> Tombol A Pin 11 (PA7) -> Tombol B Pin 6 (GND) -> I2C male pin header pin 4 Pin 5 (Vcc) -> I2C male pin header pin 3 Pin 3 (SCL) -> I2C male pin header pin 1 Pin 1 (SDA) -> I2C male pin header pin 2
Langkah 19: Perakitan Bagian 2
![Image Image](https://i.howwhatproduce.com/images/002/image-5588-38-j.webp)
![](https://i.ytimg.com/vi/mznu135IDrs/hqdefault.jpg)
![Opsional: Pin Breakout Audio Opsional: Pin Breakout Audio](https://i.howwhatproduce.com/images/002/image-5588-41-j.webp)
Ikuti langkah-langkah video untuk memasang penutup dan gamepad I2C ke bodi utama.
Langkah 20: Opsional: Pin Audio Breakout
![Image Image](https://i.howwhatproduce.com/images/002/image-5588-40-j.webp)
![](https://i.ytimg.com/vi/7ONQE77eoBk/hqdefault.jpg)
![Opsional: Pin Breakout Audio Opsional: Pin Breakout Audio](https://i.howwhatproduce.com/images/002/image-5588-42-j.webp)
Papan dev ESP32 Pin 25 dan 26 mengeluarkan sinyal audio analog, sangat mudah untuk mematahkan 2 pin ini dan juga pin daya (3,3 V dan GND) di atas. Kemudian Anda dapat menambal earphone untuk dicolokkan. Atau bahkan Anda dapat menambahkan modul penguat audio dengan speaker untuk memutarnya dengan keras.
Langkah 21: Apa Selanjutnya?
![Apa berikutnya? Apa berikutnya?](https://i.howwhatproduce.com/images/002/image-5588-43-j.webp)
Emulator NES bukan satu-satunya hal menarik yang dapat Anda buat dengan ESP32. Misalnya. anda dapat membangun konsol python mikro dengannya. Satu-satunya komponen yang perlu Anda ubah adalah dari gamepad I2C ke keyboard I2C. Saya rasa tidak begitu sulit untuk membuatnya dengan pengontrol ATtiny88. Anda dapat mengikuti twitter saya untuk melihat statusnya.
Direkomendasikan:
Konsol Game Genggam Raspberry Pi Zero DIY: 6 Langkah (dengan Gambar)
![Konsol Game Genggam Raspberry Pi Zero DIY: 6 Langkah (dengan Gambar) Konsol Game Genggam Raspberry Pi Zero DIY: 6 Langkah (dengan Gambar)](https://i.howwhatproduce.com/images/002/image-5450-4-j.webp)
Konsol Game Genggam Raspberry Pi Zero DIY: Dalam proyek ini saya akan menunjukkan kepada Anda bagaimana saya menggunakan Raspberry Pi Zero, baterai NiMH, sirkuit perlindungan over-discharge buatan sendiri, lcd spion dan audio amp untuk membuat konsol game genggam yang dapat dimainkan permainan retro. Mari kita mulai
GamePi - Konsol Emulator Genggam: 17 Langkah (dengan Gambar)
![GamePi - Konsol Emulator Genggam: 17 Langkah (dengan Gambar) GamePi - Konsol Emulator Genggam: 17 Langkah (dengan Gambar)](https://i.howwhatproduce.com/images/001/image-182-61-j.webp)
GamePi - Konsol Emulator Genggam: Intro: Instruksi ini menjelaskan pembuatan konsol emulasi genggam bertenaga Raspberry Pi 3 - Saya telah membaptisnya dengan GamePi. Ada banyak instruksi serupa untuk perangkat semacam itu, tetapi menurut selera saya, kebanyakan dari mereka terlalu besar, terlalu kecil, terlalu
Konsol Game Genggam - Klon Arduboy: 6 Langkah (dengan Gambar)
![Konsol Game Genggam - Klon Arduboy: 6 Langkah (dengan Gambar) Konsol Game Genggam - Klon Arduboy: 6 Langkah (dengan Gambar)](https://i.howwhatproduce.com/images/003/image-8256-11-j.webp)
Konsol Game Genggam | Arduboy Clone: Beberapa bulan yang lalu saya menemukan Arduboy yang menurut situs resminya adalah platform game mini 8 bit yang memudahkan untuk belajar, berbagi, dan bermain game secara online. Ini adalah platform sumber terbuka. Game untuk Arduboy dibuat oleh pengguna
Konsol Genggam Buatan Sendiri: 12 Langkah (dengan Gambar)
![Konsol Genggam Buatan Sendiri: 12 Langkah (dengan Gambar) Konsol Genggam Buatan Sendiri: 12 Langkah (dengan Gambar)](https://i.howwhatproduce.com/images/001/image-1957-69-j.webp)
Konsol Genggam Buatan Sendiri: Selamat datang di panduan langkah demi langkah saya tentang cara membuat GameBoy DIY Anda sendiri dengan Raspberry Pi 3 dan perangkat lunak emulasi Retropie. Sebelum memulai proyek ini, saya tidak memiliki pengalaman dengan raspberry pi, retropie, menyolder, pencetakan 3d atau listrik
Konsol Genggam Dengan Kontroler dan Sensor Nirkabel (Arduino MEGA & UNO): 10 Langkah (dengan Gambar)
![Konsol Genggam Dengan Kontroler dan Sensor Nirkabel (Arduino MEGA & UNO): 10 Langkah (dengan Gambar) Konsol Genggam Dengan Kontroler dan Sensor Nirkabel (Arduino MEGA & UNO): 10 Langkah (dengan Gambar)](https://i.howwhatproduce.com/images/003/image-7489-14-j.webp)
Konsol Genggam Dengan Kontroler dan Sensor Nirkabel (Arduino MEGA & UNO): Yang saya gunakan:- Arduino MEGA- 2x Arduino UNO- Adafruit 3.5" TFT 320x480 Layar Sentuh HXD8357D- Buzzer- Speaker 4Ohm 3W- Lampu LED 5mm- Ultimaker 2+ Printer dengan Filamen PLA Hitam- Pemotong laser dengan kayu MDF- Cat semprot hitam (untuk kayu)- 3x nRF24