Sommario:

Controller USB NES con Arduino!: 6 passaggi (con immagini)
Controller USB NES con Arduino!: 6 passaggi (con immagini)

Video: Controller USB NES con Arduino!: 6 passaggi (con immagini)

Video: Controller USB NES con Arduino!: 6 passaggi (con immagini)
Video: Maranza cerca di prendermi la moto 2024, Novembre
Anonim
Controller USB NES con un Arduino!
Controller USB NES con un Arduino!
Controller USB NES con un Arduino!
Controller USB NES con un Arduino!

AGGIORNAMENTO 22-12-2014 L'utente mattpbooth di Instructables ha aggiornato il codice e lo ospita su github:

github.com/mattpbooth/ArduinoNESController…

Grazie Matteo!

AGGIORNAMENTO 03-12-2011

Sostituito println con print (derp).

AGGIORNAMENTO 01-12-2011

Rifatto tutto il codice da zero.

Rifatta la sezione del codice ible; Ora include una "Configurazione della porta COM di elaborazione per i manichini"

Signore e signori, vi presento con orgoglio il piacere di 8 bit.. il vostro per l'accaparramento! Sia che utilizzi GNU/Linux, Mac OS X o Windows, il controller USB NES è compatibile.

Questo modificherà in qualche modo il controller?

No, il controller rimarrà lo stesso, quindi puoi ancora usarlo su un vero NES

Ma non ho un arduino;_;

Puoi usare la porta parallela:

Acquista un arduino:

O un kit NES retrozone:

Passaggio 1: ingredienti per una fantastica zuppa di controller

Ingredienti per una fantastica zuppa di controller
Ingredienti per una fantastica zuppa di controller

Avrai bisogno di: Un controller NES Un Arduino Un cavo USB di tipo B Qualcosa che puoi usare come involucro e alcuni cavi.. Opzionale: porta NES https://www.parallax.com/Store/Components/Other/tabid/157/ CategoryID/32/List/0/SortField/0/Level/a/ProductID/522/Default.aspx Software Arduino https://arduino.cc/ Elaborazione

Passaggio 2: come collegare Arduino al controller Nes

Come collegare Arduino al controller Nes
Come collegare Arduino al controller Nes
Come collegare Arduino al controller Nes
Come collegare Arduino al controller Nes
Come collegare Arduino al controller Nes
Come collegare Arduino al controller Nes

Con un filo collega i pin secondo i testi su entrambe le immagini.. Potresti anche usare la porta del controller da un NES (una rotta, non sprecarne una funzionante). Vuoi qualcosa di vagamente simile all'ultima immagine.

Passaggio 3: codice

AGGIORNAMENTO 22-12-2014

L'utente di Instructables mattpbooth ha aggiornato il codice e lo sta ospitando su github:

github.com/mattpbooth/ArduinoNESController

Grazie Matteo!

Ehi ragazzi, ho completamente riscritto il codice e ora dovrebbe funzionare perfettamente. L'unica regolazione che potresti dover apportare è allo schizzo di elaborazione; è necessario regolare quale porta COM dovrebbe utilizzare. Per fare ciò, segui attentamente questi passaggi!

Passi

1) Scollega l'Arduino se è connesso. 2) Esegui lo schizzo Processing, VERRA'(!) visualizzato un errore. 3) Spuntare la console (scatola nera con testo in fondo all'elaborazione) 4) Nella console sarà presente l'elenco delle porte COM attive;

Elenco seriale ATTENZIONE: Mancata corrispondenza versione RXTX Versione Jar = RXTX-2.2pre1 versione lib nativa = RXTX-2.2pre2 [0] "COM3" Fine elenco seriali

5) Come puoi vedere, attualmente COM3 è attiva ed è la prima porta COM al momento (indicata da "[0]") 6) Se lo sketch di Processing è stato eseguito senza visualizzare un errore, premere il pulsante di arresto. 7) Collega l'arduino. 8) Eseguire di nuovo lo schizzo Processing. 9) Controllare la console per le porte com attive;

Elenco seriale ATTENZIONE: Mancata corrispondenza versione RXTX Versione Jar = RXTX-2.2pre1 versione lib nativa = RXTX-2.2pre2 [0] "COM3" [1] "COM5" Fine elenco seriali

10) Come puoi vedere COM5 è apparso improvvisamente nell'elenco dopo aver collegato l'arduino. 11) Ora sappiamo che l'arduino ha la COM5 ed è la seconda porta COM (indicata con "[1]") 12) Sappiamo regolare il nostro codice;

Sostituisci: arduino = new Serial(this, Serial.list()[?], 9600); // ATTENZIONE!!!

Con: arduino = new Serial(this, Serial.list()[1], 9600); // ATTENZIONE!!!

13) Salva il programma. 14) Carica lo sketch di arduino su arduino. 15) Avvia lo schizzo di Processing!

Passaggio 4: creare un caso

Fare un caso
Fare un caso
Fare un caso
Fare un caso
Fare un caso
Fare un caso
Fare un caso
Fare un caso

Lascia correre la tua immaginazione! Ho inserito il mio arduino in un vecchio adattatore per stampante che ho trovato e penso che sembri abbastanza buono =) L'ho fatto sventrando l'adattatore e salvando solo il "capezzolo". Ho rimosso il "capezzolo" dal cavo tagliando un lato con un coltello, dopodiché il cavo originale poteva essere estratto e sostituito dal mio cavo USB. L'adattatore aveva un piccolo foro (che ho usato per il cavo USB) e un grande foro che ho usato per il controller NES. Il grande buco tuttavia non era abbastanza grande, quindi ne ho tagliato un po' con una sega (molto sciatta) dopo di che era troppo grande, l'ho riparato temporaneamente mettendo del nastro adesivo attorno alla spina del controller. Al momento ho ordinato un NES rotto da cui prelevare la porta del controller per renderlo più.. sexy.

Passaggio 5: è vivo

Al momento non ho una fotocamera a portata di mano, quindi ecco un breve filmato sul desktop in cui premo alcuni pulsanti sui controlli. Se ricevi un file di errore che dice che java non è stato trovato dovrai installarlo (di nuovo) https://java.com/ Nel caso qualcuno si sta chiedendo perché ho creato un file batch; Ero troppo pigro per reinstallare Java e ho fatto una piccola correzione manuale. A proposito, per giocare a un gioco NES sul tuo computer avrai bisogno di un emulatore: [windows] https://www.emulator-zone.com/doc.php/nes/ (se stai usando Vista, usa FakeNes) [Mac] https://www.zophar.net/macintosh/nes.html [Linux] https://www.zophar.net/linux/nes.html E avrai bisogno di alcuni giochi (ROM) ovviamente ma questi sono illegali da scaricare (Sì, anche se possiedi l'originale) quindi qualunque cosa tu faccia non scaricarli e soprattutto non da questo sito https://vimm.net/ perché quello è il più illegale di tutti *GASP*

Passaggio 6: informazioni aggiuntive

Informazioni addizionali
Informazioni addizionali

Maggiori dettagli All'interno del controller NES c'è un registro a scorrimento a 8 bit. Posizionando il pin di chiusura in alto per alcuni microsecondi, dico al chip di iniziare a sputarmi dati addosso. Quando lo fa, il primo byte diventa disponibile per la lettura sul pin seriale. Se voglio ricevere il byte successivo dovrò impostare il pin dell'orologio alto per 200 microsecondi. Ho bisogno di "lampeggiare" il pin dell'orologio 7 volte per ottenere tutti i byte/*Latch altoAspetta 200 microsecondiLatch bassoLeggi serialeAspetta 200 microsecondiRipeti 7 volte [Orologio alto Attendi 200 microsecondi Leggi seriale Orologio basso Attendi 200 microsecondi]*/Controller SNESIl codice che ho scritto può essere utilizzato anche con un controller SNES! Se qualcuno fa una richiesta posso espandere questo 'possibile per mostrare anche come farlo Originale codicehttps://little-scale.blogspot.com/2007/07/nes-controller-to-arduino.html'e infine.. Questo è il mio primo istruibile, quindi vai duro con me =P (sì duro, non morbido = P)

Consigliato: