Мазмуну:

USB NES Controller Arduino менен!: 6 кадам (сүрөттөр менен)
USB NES Controller Arduino менен!: 6 кадам (сүрөттөр менен)

Video: USB NES Controller Arduino менен!: 6 кадам (сүрөттөр менен)

Video: USB NES Controller Arduino менен!: 6 кадам (сүрөттөр менен)
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Ноябрь
Anonim
USB NES Controller Arduino менен!
USB NES Controller Arduino менен!
USB NES Controller Arduino менен!
USB NES Controller Arduino менен!

UPDATE 22-12-2014Instructables колдонуучу mattpbooth кодду жаңыртты жана аны githubга жайгаштырды:

github.com/mattpbooth/ArduinoNESController…

Рахмат Мэтт!

UPDATE 03-12-2011

Println'ди print (derp) менен алмаштырды.

UPDATE 01-12-2011

Бардык кодду нөлдөн баштап кайра түзүңүз.

Remade 'ible код бөлүмү; Азыр 'муляждар үчүн COM портун иштетүү' камтылган

Айымдар жана мырзалар, мен сыймыктануу менен 8bit ырахат тартуулайм.. кармоо үчүн сиздердин! GNU/Linux, Mac OS X же Windows колдоносузбу, USB NES контроллери шайкеш келет.

Бул кандайдыр бир жол менен контролерду өзгөртөбү?

Жок, контроллер ошол бойдон калат, андыктан аны чыныгы NESте колдоно аласыз

Бирок менде ардуино жок; _;

Сиз параллель портту колдоно аласыз:

Ардуино сатып алыңыз:

Же retrozone NES комплект:

1 -кадам: Кээ бир Awesome Controller шорпо үчүн ингредиенттер

Кээ бир кереметтүү контролер шорпо үчүн ингредиенттер
Кээ бир кереметтүү контролер шорпо үчүн ингредиенттер

Сизге керек болот: NES контроллери An Arduino A USB кабели B түрү Корпус жана зым катары колдонсоңуз болот.. Кошумча: NES порту https://www.parallax.com/Store/Components/Other/tabid/157/ CategoryID/32/List/0/SortField/0/Level/a/ProductID/522/Default.aspx Arduino software https://arduino.cc/ Processing

2 -кадам: Arduino'ду Nes контроллерине кантип туташтыруу керек

Ардуинону Nes контроллерине кантип туташтыруу керек
Ардуинону Nes контроллерине кантип туташтыруу керек
Ардуинону Nes контроллерине кантип туташтыруу керек
Ардуинону Nes контроллерине кантип туташтыруу керек
Ардуинону Nes контроллерине кантип туташтыруу керек
Ардуинону Nes контроллерине кантип туташтыруу керек

Кээ бир зымдар менен эки сүрөттөгү текстке ылайык төөнөгүчтөрдү туташтырыңыз.. Сиз ошондой эле NESтин контролер портун колдонсоңуз болот (сынган бирөө, иштөө убактысын текке кетирбеңиз). Сиз акыркы сүрөткө окшош нерсени каалайсыз.

3 -кадам: Код

UPDATE 22-12-2014

Instructables колдонуучусу mattpbooth кодду жаңыртты жана аны githubга жайгаштырды:

github.com/mattpbooth/ArduinoNESController

Рахмат Мэтт!

Эй балдар, мен кодду толугу менен кайра жаздым жана ал азыр кемчиликсиз иштеши керек. Сизге керек болгон бир гана түзөтүү - бул Эскизди иштетүү; ал кайсы COM портун колдонушу керектигин тууралашыңыз керек. Бул үчүн бул кадамдарды кылдаттык менен аткарыңыз!

Кадамдар

1) Arduino туташкан болсо, аны ажыратыңыз. 2) Иштетүү эскизин иштетиңиз, ал катаны көрсөтөт (!). 3) Консолду текшериңиз (иштетүүнүн аягында текст менен кара куту) 4) Консолдо активдүү COM портторунун тизмеси болот;

Сериялык тизме ЭСКЕРТҮҮ: RXTX Версиясы дал келбейт Jar версиясы = RXTX-2.2pre1 native lib Версия = RXTX-2.2pre2 [0] "COM3" Сериялык тизмектин аягы

5) Көрүнүп тургандай, учурда COM3 активдүү жана учурда биринчи COM порту болуп саналат ("[0]" менен белгиленет) 6) Эгерде иштетүү эскизи ката көрсөтпөстөн чуркаса, токтотуу баскычын басыңыз. 7) Ардуинону туташтырыңыз. 8) Кайра иштетүү эскизин иштетүү. 9) Консолду активдүү порттор үчүн текшериңиз;

Сериялык тизме ЭСКЕРТҮҮ: RXTX Версиясы дал келбейт Jar версиясы = RXTX-2.2pre1 native lib Version = RXTX-2.2pre2 [0] "COM3" [1] "COM5" Сериялык тизмектин аягы

10) Көрүп турганыңыздай, COM5 күтүлбөгөн жерден arduino туташкандан кийин тизмеде пайда болду. 11) Биз азыр билебиз, arduino COM5ге ээ жана бул экинчи COM порту ("[1]" менен белгиленген) 12) Биз өзүбүздүн кодду тууралоону билебиз;

Алмаштыруу: arduino = new Serial (this, Serial.list () [?], 9600); // ДИККАТ !!!

Менен: arduino = new Serial (this, Serial.list () [1], 9600); // ДИККАТ !!!

13) Программаны сактаңыз. 14) Ардуино эскизин ардуиного жүктөңүз. 15) Processing эскизин баштаңыз!

4 -кадам: Ишти түзүү

Иш кылуу
Иш кылуу
Иш кылуу
Иш кылуу
Иш кылуу
Иш кылуу
Иш кылуу
Иш кылуу

Элестетүүңдүн жапайы болушуна жол ач! Мен өзүмдүн ардуиномду тапкан эски принтер адаптерине салып койдум жана бул абдан жакшы окшойт =) Мен муну адаптерди ичип, 'емурду' сактап гана койдум. Мен бычак менен бир жагын кесүү менен кабелден "ниппелди" алып салдым, андан кийин баштапкы кабелди чыгарып, менин USB кабелиме алмаштырып койсо болот. Адаптерде кичинекей тешик бар болчу (мен аны USB кабели үчүн колдонгом) жана NES контролери үчүн колдонгон чоң тешик. Бирок чоң тешик анча чоң эмес болчу, ошондуктан кээ бирлерин араа менен кесип алдым (өтө шалпайган), андан кийин ал өтө чоң болуп калды, мен контроллердин сайгычынын тегерегине жабышчаак скотч тагып, муну убактылуу чечтим. Мен азыр дагы.. сексуалдуу кылуу үчүн контролер портун жыйноо үчүн үзүлгөн NESке буйрук бердим.

5 -кадам: Бул тирүү

Учурда менин колумда камера жок, андыктан бул жерде менин көзөмөлдөгү кээ бир баскычтарды баскан менин кыска үстөл тасмам. Эгерде сиз java табылган жок деген ката файлын алсаңыз, аны кайра орнотушуңуз керек болот (кайра) https://java.com/ Кимдир бирөө эмне үчүн мен пакеттик файлды түзгөнүмө кызыккан болсо; Мен Java -ны кайра орнотууга өтө жалкоо болуп, кичине кол менен оңдоп койдум. Btw, компьютериңизде NES оюнун ойноо үчүн сизге эмулятор керек болот: [windows] https://www.emulator-zone.com/doc.php/nes/ (эгер сиз Vista менен иштеп жатсаңыз, FakeNes колдонуңуз) [Mac] https://www.zophar.net/macintosh/nes.html [Linux] https://www.zophar.net/linux/nes.html Жана сизге кээ бир оюндар (ROMS) керек болот, бирок буларды жүктөө мыйзамсыз (Ооба, түпнускага ээ болсоңуз дагы) эмне кылсаңыз да, аларды жүктөбөңүз жана айрыкча бул сайттан https://vimm.net/ жүктөбөңүз, анткени ал баарынан мыйзамсыз *GASP *

6 -кадам: Кошумча маалымат

Кошумча маалымат
Кошумча маалымат

Кененирээк маалымат: NES контроллеринин ичинде 8 бит алмашуу реестри бар. Бир нече микросекунддарга илгичтин пинин бийик коюу менен, мен чипти мага маалымат түкүрүп баштоону айтып жатам.. Эгерде кийинки байтты алгым келсе, сааттын пинин 200 микросекундга орнотушум керек. Бардык байттарды алуу үчүн саат пинин 7 жолу "жаркылдатуу" керек [Саат жогорку күтүү 200 микросекунд Сериалдык саат төмөн Окуу 200 микросекунд]*/SNES контролери Мен жазган кодду SNES контролери менен да колдонсо болот! Эгер кимдир бирөө өтүнүч келтирсе, мен муну кантип кеңейтүү керектигин көрсөтө алам codehttps://little-scale.blogspot.com/2007/07/nes-controller-to-arduino.html'жана акырында.. Бул менин биринчи үйрөткүчүм, ошондуктан мага катуу тий = P (ооба оор, жумшак эмес = P)

Сунушталууда: