Talaan ng mga Nilalaman:

Game Boy Reader Controller: 17 Mga Hakbang (na may Mga Larawan)
Game Boy Reader Controller: 17 Mga Hakbang (na may Mga Larawan)

Video: Game Boy Reader Controller: 17 Mga Hakbang (na may Mga Larawan)

Video: Game Boy Reader Controller: 17 Mga Hakbang (na may Mga Larawan)
Video: DR. VICKI BELO's TRANSFORMATION💖🤩#vickibelo #doctor #transformation #viral #trending 2024, Hulyo
Anonim
Game Boy Reader Controller
Game Boy Reader Controller

Sa Instructable na ito ay susubukan kong ipaliwanag kung paano ko ginawa ang aparato sa itaas. Gumagawa ito bilang isang Game Boy cartridge reader, na maaaring basahin ang ROM at mabasa / isulat ang RAM ng isang laro ng Game Boy. Pagkatapos ay awtomatikong mag-boot ang laro upang maaari mo patugtugin ito sa iyong computer Sa kasalukuyan ay gagana lamang ito sa Windows.

Gusto kong makita ang itinuturo na ito hindi para sa mga nagsisimula, kailangan mo ng ilang mga kasanayan sa paghihinang bago mo subukang ituro ito. Mangyaring basahin muna ang lahat ng mga hakbang bago magsimula, makatipid ito ng oras at pera.

Bonus Bilang isang uri ng bonus maaari mong gamitin ang aparato bilang isang controller, sa kasamaang palad mayroon akong ilang mga problema sa code. Ginawa ko ang aparatong ito para sa isang proyekto sa paaralan at hindi ko nagawang gumana ang bahaging ito, iyon ang dahilan kung bakit ito ay isang bonus. Kung may nakakita ng solusyon sa mga problema, mangyaring huwag mag-atubiling magbigay ng puna sa ibaba upang masisiyahan ang lahat sa bagong paraan ng paglalaro.

Hakbang 1: Mga Bahaging Kailangan:

- humigit-kumulang 60 mga wire ng 20 sentimetro

- isang DS (Lite) slot ng kartutso 2

- isang Arduino Uno rev. 3

- minimal 40 butas x 50 butas prototyping board (tungkol sa 2 mm raster)

- 3mm na humantong (ang default ay pula)

- 220 Ohm risistor

- 31 mga header pin

- 74HC595

- 4 2mm screws na may kaunting haba ng 25mm

Mga bahagi ng bonus:

- 74HC165

- 5 mga pindutan ng pandamdam

- Paikutin encoder na may pindutan

- 8 x 10k Ohm resistors

Hakbang 2: Kailangan ng Mga Tool:

  • panghinang
  • panghinang
  • pincer
  • pliers
  • paghuhubad ng pliers
  • sipit
  • umiinog na tool o kutsilyo ng utility
  • drilling machine (o anumang iba pang paraan upang mag-drill ng isang butas sa prototyping board)
  • pinuno (o iba pang tool sa pagsukat)

Hakbang 3: Pag-order ng Casing

Pag-order ng Casing
Pag-order ng Casing
Pag-order ng Casing
Pag-order ng Casing

Dahil ang 3D na pag-print ay maaaring tumagal ng maraming oras, nagsisimula kami sa pag-order ng pambalot. Aabutin ito ng halos 6 na araw. Sa ibig sabihin ng oras maaari mong gawin ang natitirang pagtuturo na ito. Pag-order I-download ang 3 bahagi dito.

Pagkatapos nito maaari kang mag-order sa kanila sa Oceanz. Huwag mag-atubiling pumili ng iyong sariling mga kulay at kalidad upang mai-print ang mga bahagi. Tiyaking gagamitin mo pa rin ang diskarteng nagpi-print ng SLS, kung hindi man ma-stuck ang mga pindutan at hindi mo magagamit ang mga ito.

Hakbang 4: Mga Soldering Wires sa Cartridge Slot

Mga Soldering Wires sa Cartridge Slot
Mga Soldering Wires sa Cartridge Slot
Mga Soldering Wires sa Cartridge Slot
Mga Soldering Wires sa Cartridge Slot
Mga Soldering Wires sa Cartridge Slot
Mga Soldering Wires sa Cartridge Slot
Mga Soldering Wires sa Cartridge Slot
Mga Soldering Wires sa Cartridge Slot

Nagsisimula kami sa paghihinang ng lahat ng mga pin ng puwang ng kartutso. Ngunit kailangan mo munang i-cut ang ilang mga piraso mula sa adapter, kung hindi man ay hindi magkasya ang larong Game Boy. Tingnan ang unang larawan upang malaman kung aling mga piraso ang kailangang putulin. Gupitin din ang plastik na rektanggulo sa likod ng slot ng kartutso. Sa ganitong paraan magagawa mong i-slide ang game cart mismo sa pambalot sa paglaon. Ang pinakamahusay na paraan upang maghinang ang mga wire sa mga pin, ay sa pamamagitan ng paghihinang sa kanila sa likuran ng puwang. Kaya't hindi sa harap ng adapter na ipinapakita sa larawan. Maaari mong gamitin ang iba`t ibang mga tool upang gawing mas madali ang paghihinang. Skematika Kasama ko ang isang larawan ng mga iskema na ginawa ng InsideGadgets. Ang mga resistor ay opsyonal at hindi kasama sa itinuturo na ito dahil sa maliit na puwang na pinagtatrabahuhan namin. Gamitin ang mga iskema upang malaman kung aling mga kable ang kailangang puntahan kung saan, at kung saan maaaring maiugnay sa bawat isa.

Hakbang 5: Pagputol ng Prototyping Board

Pagputol sa Prototyping Board
Pagputol sa Prototyping Board

Arduino Shield

Ang susunod na hakbang ay ang paghihinang ng mga wire sa prototyping board. Bago natin ito magawa, kailangan nating gupitin ang prototyping board sa wastong laki. Mayroong iba't ibang mga paraan upang magawa ito. Gumamit ako ng isang rotary tool, ngunit maaari mo ring gamitin ang isang kutsilyo ng utility upang masira ang mga piraso ng. Mga Dimensyon Para sa kalasag ay pinutol namin ang isang piraso ng 20 sa 21 butas. Pagkatapos nito, maaari mong subukang magkasya sa ilang mga pin ng header at gupitin din ang mga ito sa laki na kinakailangan. Hangga't maaari silang maipasok sa lahat ng mga pin ng Arduino, dapat kang maging mabuti. Kahit na ang mga pin ay hindi umaangkop sa 0 hanggang 7 na mga pin sa Arduino. Samakatuwid pinutol ko ang isang maliit na bahagi ng board ng kalasag at nakakonekta ang mga wire nang direkta sa mga pin, na ipapakita ko ang susunod na hakbang

Hakbang 6: Pagsasama-sama ng Lahat ng Lahat

Pinagsasama-sama ang Lahat
Pinagsasama-sama ang Lahat
Pinagsasama-sama ang Lahat
Pinagsasama-sama ang Lahat

Matapos i-cut ang board ng kalasag maaari nating simulang ilapat ang lahat doon. Una akong nagsimula sa paghihinang ng 74HC595 shift register sa board. Tiyaking solder ang mga ito sa isang lugar kung saan hindi nila mahawakan ang anumang bahagi ng Arduino board. Matapos iyon maghinang ang mga pin ng header sa Arduino at subukan ang board pagkatapos nito. Kung hindi ito magkasya nang maayos, tiyaking baguhin ito upang magawa ito.

Muli, isinama ko ang mga iskema upang malaman mo kung aling mga kable ang kailangang puntahan kung saan. Mangyaring tingnan ito nang mabuti. Dahil hindi kami gumagamit ng anumang mga resistors, madali kaming makagawa ng mga maikling circuit at iprito ang mga rehistro ng shift o makapinsala sa iba pang mga bahagi. *** Kapag nag-wire ka sa mga header pin sa board ng kalasag, siguraduhing solder ang mga ito sa ilalim ng ang lupon. Kung hindi man ang Arduino na may kalakip na kalasag ay hindi magkakasya sa loob ng pambalot *** Ang mga susunod na hakbang ay bonus. Kung nais mo lamang ang bahagi ng Game Boy reader, mangyaring magpatuloy sa hakbang 12.

Hakbang 7: *** BONUS *** Paghihinang ng mga Pindutan

*** BONUS *** Paghihinang ng mga Pindutan
*** BONUS *** Paghihinang ng mga Pindutan
*** BONUS *** Paghihinang ng mga Pindutan
*** BONUS *** Paghihinang ng mga Pindutan
*** BONUS *** Paghihinang ng mga Pindutan
*** BONUS *** Paghihinang ng mga Pindutan

Ang mga paparating na bahagi ay bonus.

Nagsisimula kami ngayon sa paghihinang ng mga pindutan. Gumagamit din kami ng 10k resistors bilang pull-down resistors kaya nakakakuha kami ng mas tumpak na mga pagpindot sa mga pindutan. Nagsama ako ng isang datasheet ng mga tactile button, tingnan ang imahe upang malaman kung aling mga wire ang pupunta kung saan. Pagkatapos ay dapat magmukhang ito sa nasa pangalawang larawan.

Hakbang 8: *** BONUS *** Paghihinang ng LED at Rotary Encoder

*** BONUS *** Pag-solder ng LED at Rotary Encoder
*** BONUS *** Pag-solder ng LED at Rotary Encoder
*** BONUS *** Pag-solder ng LED at Rotary Encoder
*** BONUS *** Pag-solder ng LED at Rotary Encoder

LED

Ang LED ay hindi mahirap maghinang. Ang pinakamahabang binti ay ang 5V na bahagi at dapat ding maglaman ng isang 220 Ohm risistor sa pagitan ng binti at ng kawad. Ang mas maikli na binti ay ang Ground side at dapat lamang itong solder sa isang kawad.

Rotary Encoder

Ang rotary encoder ay may dalawang panig na may mga pin. Ang panig na may 3 mga pin ay ang umiikot na bahagi. Ang may 2 mga pin ay ang mga pindutan sa gilid. Muli, tingnan ang larawan upang malaman sigurado kung paano ikonekta ang mga wire.

Ang gitnang pin ng umiikot na bahagi ay Ground. Ang iba pang dalawang mga pin ay ang isa kung saan irehistro ang umiikot ng bahagi. Ang pinaka-tamang pin ay ang "A" pin at ang pinaka kaliwang pin ay ang "B" pin. Siguraduhin na unang wire pin A ang rehistro ng shift at pagkatapos ng pin na iyon B. Kung hindi man kailangan mong ilipat ang mga pin na ito pagkatapos sa code. Gayundin, ang mga pin na pumupunta sa rehistro ng shift, dapat ding magkaroon ng isang wire na may 10k resistor sa Lupa.

Hakbang 9: *** BONUS *** Pagputol ng Isa pang Prototyping Board

*** BONUS *** Pagputol ng Isa pang Prototyping Board
*** BONUS *** Pagputol ng Isa pang Prototyping Board

Para sa mga Pindutan ay pinutol namin ang isa pang prototyping board. Ang board na ito ay pupunta sa ibaba mismo ng rotary encoder sa kaso. Kailangan din nating mag-drill ng dalawang butas para sa rotary encoder, kung hindi man ay hindi umaangkop ang board. Mga Dimensyon. Ngunit unang gupitin ang board sa laki ng 42mm x 44mm. Gayunpaman, ang board ay hindi magkakasya sa loob. Tulad ng mga larawan na maaaring sabihin ng isang libong mga salita, mangyaring tingnan ang kalakip na sheet. Ang mga pulang bahagi ay kailangang i-cut at drill ang layo.

Ang pinakamahusay na paraan upang malaman kung ang umiikot na encoder ay umaangkop sa pamamagitan ng unang pagmamarka ng prototyping board at tingnan kung ang mga kawit sa gilid ng rotary encoder ay nasa loob ng minarkahang puwang. Pagkatapos ng drill na iyon at gupitin ang mga piraso.

Hakbang 10: *** BONUS *** Paghihinang sa Mga Bahagi ng Bonus

*** BONUS *** Paghihinang sa Mga Bahagi ng Bonus
*** BONUS *** Paghihinang sa Mga Bahagi ng Bonus

Ang mga bahagi ng bonus ay handa na ngayong solder sa board. Una magsimula sa paghihinang na rehistro ng shift ng 74HC165 sa board. Inilagay ko ang rehistro ng shift sa kanang bahagi ng board, sa ibaba ng cut off na piraso at sa kanan ng rotary encoder. Skematika Pagkatapos ay solder ang lahat ng mga wires sa board. Nag-attach ako ng isang eskematiko upang maipakita kung aling kawad ang dapat pumunta kung saan. Inaasahan kong makakatulong ito upang mahinang ang lahat. Siguraduhing malaman kung ano ang orientation ng shift register, makikita mo ito sa maliit na indent na bilog na bilog. Ang indent ay ang tuktok ng maliit na tilad (tulad ng isa sa eskematiko).

Hakbang 11: *** BONUS *** Paglalagay ng Lahat Sa

*** BONUS *** Paglalagay ng Lahat Sa
*** BONUS *** Paglalagay ng Lahat Sa

Ngayon ay dapat nating magkaroon ng lahat ng bagay na solder at handa nang ilagay sa kaso. Nagsisimula kami sa mga bahagi ng bonus, dahil ang mga ito ay nasa tuktok ng pambalot. Kaya't magsimula sa paglalagay sa rotary encoder. Pagkatapos nito ay dumulas sa mas maliit na prototyping board upang ito ay nakasalalay sa mga indent. Tingnan ang larawan. Pagkatapos ay ilagay sa lahat ng mga pindutan. Dapat madali itong dumulas.

Hakbang 12: Paglalagay ng Lahat sa

Ngayon dapat nating magkaroon ng lahat ng bagay na solder at handa nang ilagay sa kaso. Ass AssemblyFir muna ilagay natin sa LED. Pumunta ito sa ibaba mismo ng butas sa harap ng aparato, sa likod ng pindutang "B".

Pagkatapos ay maaari kang mag-slide sa Game Boy cartridge slot. Ang pinakamahusay na paraan ay upang magsimula sa kanang bahagi. Pagkatapos ay maaari mong itulak ang kaliwang bahagi sa lugar gamit ang iyong tweezers. Maaari mong subukan kung ang lahat ay umaangkop sa pamamagitan ng pag-slide ng isang Game Boy cartridge sa. Bago kami magpatuloy, gupitin ang mga nangungunang pin, kung hindi man ang Arduino kasama ang kalasag ay hindi magkakasya sa loob.

Hakbang 13: Pagkonekta sa Lahat

Ang aming huling hakbang ng pagtitipon ay ang pagkonekta sa kalasag sa Arduino Uno at pag-slide sa Arduino sa lugar. Kung na-solder mo ang mga wire sa ilalim ng mga pin, dapat magkasama ang lahat. Pagkatapos ay i-tornilyo sa ilalim ng aparato at lahat kami ay nakatakda upang mag-upload ng ilang code sa aparato.

Hakbang 14: Pag-upload ng Arduino Code

Nakarating kami sa isa sa mga huling hakbang ng pagtuturo na ito. Upang magamit ang aparatong ito, kailangan naming mag-upload ng ilang code. Naglalaman din ang code na ito ng bonus code, kaya huwag magalala tungkol doon.

Ano ang ginagawa nito Ano ang ginagawa ng code na ito, nakikipag-usap ba ito sa isang script ng Python. Sinasabi ng script ng Python sa Arduino kung ano ang dapat gawin at ang Arduino pagkatapos ay magsagawa ng isang piraso ng code at magpapadala ng data pabalik sa script ng Python. Kaya't sasabihin ng script ng Python sa aparato na kailangan nito upang itapon ang laro ng Game Boy. Tumutugon ang aparato doon at mai-download ang iyong laro sa Game Boy sa iyong computer. Kapag na-download ang parehong laro at save file, awtomatikong nagsisimula ang laro sa isang emulator (BGB).

Mag-download at Mag-install

Mangyaring i-download ang naka-attach na.zip file. Naglalaman ito ng Arduino sketch kasama ang isang pasadyang aklatan. Upang mai-install ang library na ito, kailangan mong kopyahin ang folder na "GBController" sa iyong folder ng Arduino Library na karaniwang inilalagay sa "C: / Program Files (x86) Arduino / libraries"

Kapag nakopya mo ang folder, kailangan mong i-restart nang kumpleto ang Arduino IDE. Kaya isara ang lahat ng iyong mga sketch (mangyaring i-save ang mga ito bago gawin ito) at pagkatapos ay buksan ang GBCartRead_v1_6_Rev1.ino file. I-upload ito sa iyong Arduino upang masimulan namin ang pagsubok. *** Bago ilagay sa isang game cart kailangan mong i-unplug ang aparato! Kung hindi man ay tatayo ka sa peligro ng pagtanggal ng iyong RAM sa game cart at sa gayon ay mawala ang iyong pag-usad sa laro! ***

Hakbang 15: Pagsubok sa Device

Pagsubok sa Device
Pagsubok sa Device

Kapag naka-plug in, handa na ang iyong Arduino na magpadala ng ilang data. Ngunit hindi ito mangyayari hangga't hindi gumagana ang script ng Python. Kaya mangyaring i-download ang nakalakip na file at ilagay ito sa isang lugar sa iyong computer.

Kung wala kang naka-install na Python sa iyong computer, mangyaring i-download ito dito. Kailangan mo rin ng Pyserial.

Pagsusulit

Mag-right click sa GBControllerReader.py file at piliin ang "i-edit gamit ang IDE". Dapat mong makita ang isang bagay tulad sa larawan. Ngayon i-unplug ang aparato, ipasok ang isang Game Boy cart at ikonekta muli ang aparato kung hindi mo pa nagagawa. Pagkatapos nito maaaring pindutin ang F5 upang patakbuhin ang code at ang script ng Python ay magsisimulang basahin ang header ng laro ng Game Boy. Pagkatapos nito maaari kang pumili upang itapon ang laro.

Hakbang 16: *** BONUS *** Pagkontrol sa Laro

Matapos mong matapon ang laro, awtomatiko itong magsisimula sa emulator. Maaari mo nang simulan ang naka-attach na Pag-proseso ng sketch.

Nagkaroon ako ng ilang mga problema sa bahaging ito, ngunit marahil ito ay gumagana para sa iyo. Tulad ng sinabi ko sa intro ng itinuturo na ito. Kung may nakakaalam kung paano malutas ang mga problemang ito, huwag mag-atubiling tumugon sa mga komento, upang matuto ako mula rito (at sa iba pa). At pagkatapos ay makakaranas kami ng isang bagong paraan ng paglalaro ng aming mga minamahal na laro.

Hakbang 17: Outro

Outro
Outro

Salamat sa pagbabasa ng itinuturo na ito. Inaasahan kong nasiyahan ka dito at nasisiyahan ka sa paggawa nito. Nais ko ring pasalamatan muli si Oceanz sa pagtulong sa akin dito. Ang galing talaga nila sa 3D print. Naghahatid sila ng mahusay na serbisyo na may mahusay na kalidad at kahit na ang pinakamahusay na magagamit na presyo. Kung wala sila hindi ito gagana.

Mga tip?

Kung nakakita ka ng pagkakamali sa itinuturo na ito o may anumang mga tip upang gawing mas mahusay ito, mangyaring huwag mag-atubiling sabihin ito. Kung gayon mas masisiyahan pa tayong lahat. Siyempre nais kong makita kung paano naging ang iyong bersyon, kaya't huwag mag-atubiling mag-post ng ilang mga larawan nito sa mga komento. Inaasahan ko ang lahat ng iyong mga reaksyon. Maligayang paglalaro!

Inirerekumendang: