Sisällysluettelo:

Käytä Arduinoa N64 -ohjaimella: 5 vaihetta (kuvien kanssa)
Käytä Arduinoa N64 -ohjaimella: 5 vaihetta (kuvien kanssa)

Video: Käytä Arduinoa N64 -ohjaimella: 5 vaihetta (kuvien kanssa)

Video: Käytä Arduinoa N64 -ohjaimella: 5 vaihetta (kuvien kanssa)
Video: Самый крутой робот, которого я когда-либо создавал! Автомобильный комплект SunFounder Zeus ИСПОЛЬЗУЕ 2024, Kesäkuu
Anonim
Käytä Arduinoa N64 -ohjaimen kanssa
Käytä Arduinoa N64 -ohjaimen kanssa

Siellä on opetusohjelmia NES -ohjaimen käyttämisestä Arduinon kanssa, mutta monimutkaisemman N64 -ohjaimen ja sen analogisen ohjaussauvan käyttäminen on selvä. Jos sinulla on Arduino ympärilläsi etkä halua ostaa Adaptoidia, tämä ohje antaa mahdollisuuden pelata emuloituja pelejä Project 64: ssä Ardunion ja N64 -ohjaimen kanssa. / Vahingoittaako se tavaroitani? Tämä ei muuta ohjainta millään tavalla, ja johdotus on erittäin yksinkertainen, joten jos teet kaiken huolellisesti, ohjaimesi ei pitäisi olla vaarassa ja voit irrottaa sen milloin tahansa käyttääksesi N64 -konsolia. tarve: Arduino - 30 dollaria Käsittely 1,0 - ilmainen Arduino -ohjelmisto - ilmainen 3 johtoa - ilmainen (toivon) USB -kaapeli

Vaihe 1: Ohjaimen kytkentä

Ohjaimen kytkentä
Ohjaimen kytkentä
Ohjaimen kytkentä
Ohjaimen kytkentä
Ohjaimen kytkentä
Ohjaimen kytkentä

Ensimmäinen asia, joka sinun on tehtävä, on liittää Arduino ohjaimeen Ohjain käyttää vain kolmea johtoa: +3,3 V, signaali ja maa. Kun katsot suoraan pistokkeeseen, maa on kauimpana vasemmalla, signaali on keskellä ja +3,3 V on oikealla. Liitä johto käyttämällä maadoitus ja +3,3 V Arduinon vastaaviin nastoihin ja liitä signaalijohto Ardunion digitaaliseen 2 -nastaiseen. uusi koodi seuraavalta sivulta Arduinolle ennen kuin käynnistät sen, kun ohjain on liitetty.

Vaihe 2: Pura koodi ja suorita se

Tämä koodi on minun kirjoittamani, ja osa N64_Arduino -tiedostosta perustuu Andrew Brownin kirjoittamaan kokoonpanokoodiin. N64_Arduino -tiedosto on käännettävä Arduino IDE: hen, ja N64_Controller toimii Processing 1.0 -versiossa. Se yksinkertaisesti kyselee N64 -ohjaimesta tietoja painikkeista ja analogisesta tikusta ja lähettää sen takaisin tietokoneelle sarjaportin kautta. Muokkaus on riittävän helppoa, esimerkiksi voit käyttää tämän tiedoston menetelmiä ohjaimen kyselyyn ja käyttää tietoja Arduino -robotin suorittamiseen sen sijaan, että lähetät sen takaisin tietokoneelle. N64_Controller Arduinon lähettämät tiedot ja muuntaa ne näppäimistön painalluksiksi, jotka voit yhdistää projektin 64 kaltaiseen emulaattoriin. Sinun on ehkä muutettava riviä String portName = Serial.list () [1]; vastaamaan Arduinoasi, sen pitäisi olla joko Serial.list () [0]; Sarja.lista () [1]; tai Serial.list () [2]; EDIT: Lisää "import java.awt. Robot;" "Tuo java.awt. AWTException;" "Tuo java.awt.event. InputEvent;" koodiin, jos käytät käsittelyä 1.1N64_Controller_mouse Tämä on sama kuin N64_Controller, paitsi että analoginen tikku ohjaa hiirtäsi, ei nuolinäppäimiä. A ja B ovat oikeaa ja vasenta napsautusta. Aktivoi hiiri painamalla ohjaimen käynnistyspainiketta.

Vaihe 3: Asenna projekti 64

Asenna projekti 64
Asenna projekti 64

Ennen kuin voit käyttää ohjainta, Arduino on yhdistettävä ja suoritettava viimeisessä vaiheessa lataamasi koodi, ja Processing 1.0: n on oltava auki N64_Controller -ohjelman ollessa käynnissä. Testaa se Muistiossa, paina A -painiketta, jos haluat kirjoittaa A, B kirjoittaa B jne. Joten nyt sinulla on toimiva ohjain (toivottavasti) ja haluat pelata joitain pelejä. -emu.com/downloads/Set Key Mappings Käynnistä PJ 64 ja avaa ensin asetusvalikko (Ctrl+T). Vaihda tulo-ohjain N-Ragen suoraan tuloon. Avaa "Configure Controller Plugin" -valikko ja tee määritykset ohjaimella. Aloita toisto! Sinun pitäisi olla valmis menemään nyt! Lataa joitakin ROM -levyjä ja aloita Homebrew N64 -sovittimen nauttiminen.

Vaihe 4: Arduino -koodi perusteellisesti

Arduino -koodi perusteellisesti
Arduino -koodi perusteellisesti

N64 -protokolla N64 -ohjaimelle ja sieltä lähetetyt bitit yhden langan rajapinnalla koodataan 4 µs leveinä pulsseina. A '0' on 3 µs matala ja 1 µs korkea. A '1' on 1 µs matala ja 3 µs korkea. Arduino-koodi menetelmissä N64_send tai N64_reception käyttää erittäin huolellisesti ajoitettua kokoonpanokoodia, jonka Andrew Brown on kirjoittanut datalinjan bittitangolle kommunikoidakseen ohjaimen kanssa. nop -lohkoja käytetään odottamaan sopivia määriä µs ennen datan lähetyslinjan pollaamista. Käynnistyksen yhteydessä 0x00 lähetetään ohjaimelle ja sen jälkeen ainoa komento on 0x01 ohjaimen tilan kyselemiseksi. analogiset ohjaussauvan tiedot. Tiedot näyttäisivät 44000000000000400044440044000444. Bittien muoto on: A, B, Z, Start, Dup, Ddown, Dleft, Dright, 0, 0, L, R, Cup, Cdown, Cleft, Cright + 16 bittiä analogista tikun asento. Menetelmä translate_raw_data () käy läpi 32 bittiä ja lisää ne rakenteeseen N64_status. Ensimmäiset 16 bittiä ovat yksinkertaisia 1 tai 0, mutta viimeiset 16 muunnetaan kokonaisluvuksi, joka on suunnilleen alueella (-80, 80), kun (i = 0; i <8; i ++) {N64_status.stick_x | = N64_raw_dump [16+i]? (0x80 >> i): 0; } Kun tiedot ovat tässä yksinkertaisessa muodossa, niiden kanssa on helppo tehdä mitä haluat. Tässä tapauksessa se yksinkertaisesti lähetetään sarjaportin kautta loop () -menetelmässä binääridatan merkkijonona, jossa on kaksi kokonaislukua x- ja y -arvoille. Sarjaportin kautta lähetetyt tiedot voivat näyttää tältä: 0400000000000400 63-67, mikä tarkoittaa, että kahta painiketta painettiin ja ohjaussauva oli 63, -67.

Vaihe 5: Viitteet

Viitteet
Viitteet

Andrew Brownin projekti luoda pelikuutio N64 -sovittimeen Arduinolla oli korvaamaton, kun koodaat tätä projektia:

Hyödyllisiä kaavioita löytyy täältä: https://www.raphnet.net/electronique/gc_n64_usb/index_en.php Tietoja N64 -ohjaimien omasta protokollasta löytyy täältä:

Suositeltava: