Daftar Isi:

Gunakan Arduino Dengan Kontroler N64: 5 Langkah (dengan Gambar)
Gunakan Arduino Dengan Kontroler N64: 5 Langkah (dengan Gambar)

Video: Gunakan Arduino Dengan Kontroler N64: 5 Langkah (dengan Gambar)

Video: Gunakan Arduino Dengan Kontroler N64: 5 Langkah (dengan Gambar)
Video: Cara menampilkan gambar pada running text panel LED P4 menggunakan controller HD WF4 2024, November
Anonim
Gunakan Arduino Dengan Pengontrol N64
Gunakan Arduino Dengan Pengontrol N64

Ada tutorial di luar sana untuk menggunakan pengontrol NES dengan Arduino, tetapi menggunakan pengontrol N64 yang lebih rumit dan joystick analognya memiliki daya tarik yang pasti. Jika Anda memiliki Arduino dan tidak ingin membeli Adaptoid, instruksi ini akan memungkinkan untuk memainkan game yang ditiru di Project 64 dengan Ardunio dan pengontrol N64 Anda. Apakah ini sulit? / Apakah itu akan merusak barang-barang saya? Ini tidak akan mengubah pengontrol Anda dengan cara apa pun, dan pengkabelannya sangat sederhana, jadi jika Anda melakukan semuanya dengan hati-hati seharusnya tidak ada risiko pada pengontrol Anda, dan Anda dapat melepaskannya kapan saja untuk digunakan dengan konsol N64. perlu:Arduino - $30Processing 1.0 - gratis Perangkat Lunak Arduino - gratis 3 buah kabel - gratis (saya harap) kabel USB

Langkah 1: Menghubungkan Pengontrol

Menghubungkan Pengontrol
Menghubungkan Pengontrol
Menghubungkan Pengontrol
Menghubungkan Pengontrol
Menghubungkan Pengontrol
Menghubungkan Pengontrol

Hal pertama yang perlu Anda lakukan adalah menghubungkan Arduino Anda ke controller Controller hanya menggunakan tiga lead: +3.3V, sinyal, dan ground. Melihat langsung ke steker, ground paling kiri, sinyal di tengah, dan +3,3V di kanan. Dengan menggunakan kabel, sambungkan ground dan +3,3V ke masing-masing pin pada Arduino, dan sambungkan kabel sinyal ke pin Digital 2 pada Ardunio. CATATAN: Jika Anda memiliki kode lain di Arduino, Anda harus melepaskan pengontrol dan mengunggah kode baru dari halaman berikutnya ke Arduino sebelum menyalakannya dengan pengontrol terpasang. Hubungkan Arduino Hubungkan kabel USB dan Arduino akan memiliki daya.

Langkah 2: Buka Kemasan dan Jalankan Kode

Kode ini ditulis oleh saya, dengan bagian dari file N64_Arduino berdasarkan kode perakitan yang ditulis oleh Andrew Brown. Arsip ZIP: Dua file Zip di bawah ini berisi kode yang diperlukan untuk menjalankan Arduino dan kemudian menafsirkan data yang dikirimkannya ke komputer. File N64_Arduino perlu dikompilasi di Arduino IDE, dan N64_Controller berjalan di Processing 1.0. N64_Arduino File PDE ini harus diunggah ke Arduino Anda dan berjalan tanpa hambatan jika semuanya terhubung dengan benar. Ini hanya menanyakan pengontrol N64 untuk data pada tombol dan stik Analog dan mengirimkannya kembali ke komputer melalui port serial. Cukup mudah untuk memodifikasi, misalnya, Anda dapat menggunakan metode dari file ini untuk meminta pengontrol dan menggunakan data untuk menjalankan robot Arduino alih-alih mengirimkannya kembali ke komputer. N64_Controller Ini adalah proyek Processing 1.0 yang mengambil data yang dikirimkan oleh Arduino dan mengubahnya menjadi penekanan keyboard yang dapat Anda petakan ke emulator seperti Project 64. Anda mungkin perlu mengubah baris String portName = Serial.list()[1]; untuk mencocokkan Arduino Anda, itu harus Serial.list()[0]; Serial.list()[1]; atau Serial.list()[2]; EDIT: Tambahkan "import java.awt. Robot;" "impor java.awt. AWTException;" "import java.awt.event. InputEvent;" ke kode jika Anda menggunakan Processing 1.1N64_Controller_mouse Ini sama dengan N64_Controller, kecuali bahwa stik analog mengontrol mouse Anda, bukan tombol panah. A dan B adalah klik kanan dan kiri, masing-masing. Untuk mengaktifkan mouse, tekan tombol mulai pada pengontrol Anda.

Langkah 3: Siapkan Proyek 64

Siapkan Proyek 64
Siapkan Proyek 64

Sebelum Anda dapat menggunakan pengontrol, Arduino harus terhubung dan menjalankan kode yang Anda unduh pada langkah terakhir, dan Processing 1.0 harus dibuka dengan program N64_Controller berjalan. Uji di Notepad, menekan tombol A harus mengetik A, B harus mengetik B, dll. Jadi sekarang Anda memiliki pengontrol yang berfungsi (semoga) dan Anda ingin memainkan beberapa game. Downl0ad PJ 64https://www.pj64 -emu.com/downloads/Set Key MappingsMulai PJ 64 dan buka menu pengaturan terlebih dahulu (Ctrl+T). Ubah pengontrol input ke input langsung N-Rage. Buka menu "Configure Controller Plugin" dan atur pemetaan menggunakan controller. Mulai Bermain!Anda harus siap untuk pergi sekarang! Unduh beberapa ROM dan mulailah menikmati adaptor N64 homebrew Anda.

Langkah 4: Kode Arduino secara Mendalam

Kode Arduino secara Mendalam
Kode Arduino secara Mendalam

Protokol N64 Bit yang dikirim ke dan dari pengontrol N64 pada antarmuka satu kabel dikodekan dalam pulsa lebar 4 s. Sebuah '0' adalah 3 s rendah dan 1 s tinggi. A '1' adalah 1 s rendah dan 3 s tinggi. Kode Arduino dalam metode N64_send atau N64_receive menggunakan kode perakitan dengan waktu yang sangat hati-hati yang ditulis oleh Andrew Brown untuk melakukan bit-bang pada jalur data untuk berkomunikasi dengan pengontrol. blok nop digunakan untuk menunggu jumlah s yang sesuai sebelum melakukan polling pada jalur pengiriman data. Saat startup, 0x00 dikirim ke pengontrol, dan kemudian setelah itu satu-satunya perintah yang digunakan adalah 0x01 untuk menanyakan status pengontrol. Pengkodean Data Ketika data diterima setelah 0x01, data itu datang sebagai 16 bit informasi tombol dan 16 bit informasi joystick analog. Data akan terlihat seperti 44000000000000400044440044000444. Format bit adalah: A, B, Z, Start, Dup, Ddown, Dleft, Dright, 0, 0, L, R, Cup, Cdown, Cleft, Cright + 16 bit analog posisi tongkat. Metode translate_raw_data() melewati 32 bit, memasukkannya ke dalam struct N64_status. 16 bit pertama sederhana 1 atau 0, tetapi 16 terakhir diterjemahkan ke dalam bilangan bulat kira-kira dalam kisaran (-80, 80) oleh for (i=0; i<8; i++) { N64_status.stick_x |= N64_raw_dump[16+i] ? (0x80 >> saya): 0; } Setelah data dalam bentuk sederhana ini, mudah untuk melakukan apapun yang Anda inginkan dengannya. Dalam hal ini, ia hanya dikirim melalui port serial dalam metode loop() sebagai string data biner dengan dua bilangan bulat untuk nilai x dan y. Data yang dikirim melalui port serial mungkin terlihat seperti: 0400000000000400 63 -67 yang berarti bahwa dua tombol ditekan dan tongkat kendali berada di 63, -67.

Langkah 5: Referensi

Referensi
Referensi

Proyek Andrew Brown untuk membuat adaptor gamecube ke N64 dengan Arduino sangat berharga saat mengkode proyek ini:

Skema yang bermanfaat dapat ditemukan di sini: https://www.raphnet.net/electronique/gc_n64_usb/index_en.php Informasi tentang protokol kepemilikan pengontrol N64 dapat ditemukan di sini:

Direkomendasikan: