Talaan ng mga Nilalaman:

Lapcade Arcade Controller: 6 Mga Hakbang (na may Mga Larawan)
Lapcade Arcade Controller: 6 Mga Hakbang (na may Mga Larawan)

Video: Lapcade Arcade Controller: 6 Mga Hakbang (na may Mga Larawan)

Video: Lapcade Arcade Controller: 6 Mga Hakbang (na may Mga Larawan)
Video: 07 29 81 2024, Hunyo
Anonim
Lapcade Arcade Controller
Lapcade Arcade Controller

Hindi ako gaanong isang gamer. Noong bata pa ako, mas interesado akong makita kung paano sila gumana kaysa sa paglalaro ko sa kanila. Maaari kong asahan sa isang kamay kung gaano karaming mga arcade game ang regular kong nilalaro. Sinabi na, madali para sa isang tao na makita itong kakaiba na maglalaan ako ng oras upang bumuo ng isang arcade controller. Gayunpaman, ito ay isa sa aking mga paboritong proyekto hanggang ngayon. Bilang karagdagan sa pagiging mapaghamong sa disenyo, code, at pagbuo, ito rin ay isang paalala ng isang nakaraang panahon ng matibay mekanikal na mga pindutan at mga joystick.

Nawala ang mga araw ng Arcade ngunit maaari mo pa ring magkaroon ng pakiramdam ng isang klasikong arcade game sa iyong sariling silid. Kaya, narito ipinakikita ko sa iyo ang Lapcade. Kung katulad mo ako at nasisiyahan sa pagbuo ng mga bagay-bagay higit pa sa paglalaro, maaaring masisiyahan ka sa pagbuo na ito. Kung mayroon kang anumang mga katanungan o mungkahi na hindi kasama sa seksyong "mga ideya para sa bersyon 2" sa ibaba, mangyaring mag-iwan ng komento.

Hakbang 1: Pangkalahatang-ideya

Pangkalahatang-ideya
Pangkalahatang-ideya
Pangkalahatang-ideya
Pangkalahatang-ideya

Ano ang bagay na ito?

Una, mangyaring tandaan kung ano ang hindi ng Lapcade:

  • Hindi ito gaming console.
  • Wala itong mga laro o may kakayahang mag-load at maglaro ng mga laro.
  • Hindi ito nakakakonekta sa isang TV o monitor.

Ang Lapcade ay isang Bluetooth keyboard. Wala nang higit pa, walang mas kaunti.

Dinala ko ito sapagkat mayroong ilang pagkalito sa puntong ito. Marami akong mga katanungan tungkol sa kung anong mga laro ang maaaring mai-load dito at kung anong uri ng interface ng video ang ginagamit nito - hindi ito maaari at hindi! Ito ay ganap na nakasalalay sa PC na ikinonekta mo ito, at sa bagay na iyon, ang langit ang limitasyon. Kung ang iyong aparato ay maaaring tumanggap ng isang Bluetooth keyboard, kung gayon dapat na gumana ang Lapcade dito. Hindi ko ito nasubukan ngunit nakakita ako ng iba pang mga proyekto na gumamit ng EZ-Key (inilarawan sa ibaba) na konektado sa mga handheld device. Kaya, teoretikal, maaari mong ikonekta ang aparatong ito sa anumang computer na nagpapatakbo ng Windows, Linux, ChromeOS, MAC, atbp pati na rin ang Raspberry Pi, Android, iOS, at iba pa na sumusuporta sa Bluetooth v2.1. Gayunpaman, maaaring kailanganin ang pagbabago ng mga keycode.

Paunang Bersyon 1

Orihinal, nakakita ako ng isang produkto na tinatawag na Adafruit Bluefruit EZ-Key bluetooth HID (Human interface device - think keyboard) na papayagan akong kumonekta pamilyar na mga pindutang nakaka-click at magpadala ng mga keystroke tulad ng isang keyboard. Nang una akong nagtayo ng isang controller batay sa EZ-Key, sinunod ko ang isang hanay ng mga tagubilin upang bumuo ng isang simple at tuwid na pasulong na controller at gumana ito ng mahusay. Ginamit ko ang controller sa isang mabibigat na frame na kahoy na walang isyu sa loob ng ilang buwan. Gayunpaman, limitado ka sa 12 mga input at walang paraan upang baguhin ang keycode na ipinadala ng aparato nang hindi muling pagprogram ng mga EZ-Key input pin.

Habang ginagamit ko ang aking Kodi media center upang maipakita ang mga naka-install na laro, nais kong lumipat sa pagitan ng pagkontrol sa media center at paglalaro nang hindi na kinakailangang gumamit ng maraming mga Controller / Remote. Nais ko ring ayusin ang aparato upang magamit ito ng aking kaliwang kamay na anak ayon sa gusto niya.

Gumagamit din ako ng 4 na baterya ng AA upang magaan ang aparato at sa labas ng kahon ay hindi ito lilitaw na mayroong isang mababang mode ng kuryente. Ang mga baterya ay masisipsip ng tuyo sa isang araw o dalawa kahit na hindi ito ginagamit.

Kaya, sa paghimok ng isang kaibigan ko, nagpasya akong bumuo ng isang nai-program na bersyon ng parehong controller na may mabilis na mga pagbabago sa mode, papayagan akong gamitin ang parehong aparato upang makontrol ang maraming mga application, maaari ding "baligtarin" para sa kaliwang kamay gamitin at nasa isang kaso ng laptop na mas mababa sa aking kasalukuyang solusyon na 10 lb.

Oras na para sa isang pag-upgrade.

Mga Layunin sa Proyekto ng Bersyon 1:

  • Nababaluktot
  • Rechargable
  • Para sa mga Lefties at Righties
  • Walang pisi
  • Magaan

Nais kong maging bagong kakayahang umangkop ang bagong disenyo na ito. Ang mga kontrol ay kailangang mabago nang mabilis nang hindi kinakailangang muling pagprogram ng mga sangkap sa tuwing may pagsusulit o pagbabago na kailangang gawin. Nangangahulugan ito na kailangang magkaroon ng isang interface sa controller upang pumili ng "mga mode" ng operasyon. Ang bawat posisyon ng pindutan at joystick ay kailangang magkaroon ng iba't ibang mga key-code na nauugnay dito. Ang mga parehong kontrol ay kailangan ding gamitin upang mapili rin ang iba't ibang mga mode.

Ang EZ-Key ay hindi direktang mai-program sa real time kaya ang susunod na solusyon ay ang paggamit ng isang controller tulad ng isang Arduino upang pamahalaan ang pagpapaandar. Ang EZ-Key ay gagamitin lamang upang maihatid ang mga keycode sa PC sa pamamagitan ng Bluetooth. Pinili ko ang Arduino Pro Mini dahil sa direktang pagiging tugma nito sa UNO (na mayroon na akong karanasan) at dahil sa siksik na laki nito.

Hindi ko nais na makitungo sa mga baterya sa bagong kahon na ito tulad ng ginawa ko sa hinalinhan ng Lapcade kaya, pinili kong gumamit ng isang baterya na rechargeable na Lithium Polymer at charger / supply board. Nangangahulugan ito na maaari ko lamang gamitin ang isang karaniwang USB charger. Nangangahulugan din ito na hindi ko na bubuksan ang kaso sa tuwing namatay ang mga baterya. Ang EZ-Key at ang PowerBoost 500C ay parehong may mga tagapagpahiwatig na kailangang ilipat sa tuktok ng controller para sa katayuan ng pagpapares at mababang pahiwatig ng baterya. Nagdagdag ako ng ilang mga LED sa disenyo upang maipakita ko ang madaling gamiting mga tagapagpahiwatig ng katayuan sa gumagamit sa panahon ng pagpapatakbo.

Tulad ng pag-mature ng pagsubok sa aking disenyo, natuklasan ko na ang ilan sa aking orihinal na ideya ay hindi tulad ng inaasahan ko. Halimbawa, ang tagapagpahiwatig ng LBO sa PowerBoost ay hindi gagana tulad ng inaasahan kapag nakatali sa isang microcontroller. Papayagan nitong dumaan ang kasalukuyang landas mula sa baterya habang ang aparato ay "naka-off" o hindi pinagana, ang ilaw ng LBO ay magaan at mananatiling naiilawan. Ang iba sa forum ng Adafruit ay nakaranas din ng isyung ito at nag-aalok ng isang mas mahusay na solusyon sa pag-sample ng boltahe ng baterya nang direkta sa isang analog input. Kapag ang boltahe ay bumaba sa isang tiyak na antas, oras na upang ipaalam sa gumagamit na ang baterya ay papatayin.

Hakbang 2: Ano ang Kailangan Mo

Listahan ng Mga Elektronikong Bahagi

Ang sugat na ito ay naging isang medyo kumplikadong pagbuo. Hindi mo kailangang gamitin ang parehong mga bahagi na ginawa ko ngunit kung gumamit ka ng kapalit na bahagi, tiyaking naiintindihan mo kung paano ito makikipag-ugnay sa iba pang mga circuit at code. Habang masaya akong nag-aalok ng mga mungkahi, hindi ako makakatulong sa pag-troubleshoot ng code o mga isyu para sa iba't ibang mga pagsasaayos.

1 Arduino Pro Mini 5V - Gusto ko ang Pro dahil siksik ito. Maaari mong gamitin ang anumang Uno pin / makagambala na katugmang board sa ibinigay na code

1 Adafruit Bluefruit EZ-Key bluetooth HID - Tulad ng inilarawan sa itaas, ito ang bluetooth HID na nagpapahintulot sa mga keycode na maipadala sa host PC.

1 MCP23017 - i2c 16 input / output port expander -Ang chip na ito ay ginagamit upang magdagdag ng 16 pang mga input sa Arduino sa pamamagitan ng I2C na komunikasyon na proteksyon

1 Adafruit PowerBoost 500 + Charger - Ito ang control board ng kuryente para sa pagpapatakbo ng Lapcade at singilin ang LiPo

1 baterya ng Litium Polymer (Gumamit ako ng 2500mAh, ngunit maaari mong gamitin ang mas mataas / mas mababang kapasidad)

1 8-Way Arcade Joystick - Mangyaring tingnan ang seksyong "mga saloobin para sa bersyon 2" sa ibaba tungkol sa mga joystick

9 Mga Button ng Push ng Arcade - Iba't ibang mga kulay at mga screenprint

2 Nag-iilaw panandaliang mga pindutan - Ginamit ko ang 2 mga pindutan na ito para sa mga pindutan ng Center 4 at 5 at mula sa Adafruit: Pula (Center 4), Blue (Center 5)

1 Nag-iilaw na pushbutton ng pagdikit na ginamit ko ito para sa power button mula sa Adafruit: Green

2 LEDs Ginamit para sa pagsangguni sa signal ng pagpapares at mababa ang baterya. Gumamit ako ng dalawang bahagi ng RadioShack 2760270 at 2760271

1 16 x 2 LCD screen

1 I2C / SPI LCD backpack - Ginamit para sa komunikasyon ng I2C sa display na 16x2.

1 Panel Mount USB extension cable - Ginamit upang mapalawak ang micro-b USB konektor ng PowerBoost sa pader ng gabinete.

1 Adafruit Perma-Proto Buong laki na Breadboard PCB - Hindi kinakailangan ngunit ginagawang mas madali ang permanenteng pag-mount.

5 220 Ohm Resistors

7 1K Ohm Resistors

2 2.2K Ohm Resistors

1 4.7K Ohm Resistor

18 # 10 Mga Konektor ng Babae na Spade - Para sa pagkonekta sa mga contact ng arcade button. Inirekumenda sa paglipas ng paghihinang dahil ang mga pindutan ay sa kalaunan ay mawawala.

22 gauge hookup wire - Gumamit ako ng solidong wire ng hookup sa halip na maiiwan tayo upang makagawa ng libreng nakatayo na pamamahala ng kawad. Puro ito para sa mga layunin ng pagpapakita at hindi inirerekumenda dahil ang solidong kawad ay malutong at madaling kapitan ng pagkasira.

Ang mga sumusunod na item ay hindi kinakailangan ngunit gagawing mas simple ang mounging at, kung sakaling mag-iinuman ka ng isang bahagi, gawing mas madali ang kapalit:

  • IC Socket - para sa 28-pin 0.3 "Chips
  • IC Socket - para sa 28-pin 0.6 "Chips
  • 0.1 "Babae header (hindi bababa sa 1 36 pin header)

Mga Bahagi ng Gabinete:

  • 3 12 x 24 1 / 8th inch birch panels
  • 1 12 x 24 1 / 8th inch malinaw na acrylic panel

Mga file:

  • Lapcade V1.xlsx - Ang spreadsheet na nabanggit sa ibaba na mayroong mga koneksyon sa circuit.
  • LapcadeV1-code.zip - Zip file na naglalaman ng Arduino code na nakasulat para sa proyektong ito.
  • Lapcade_v1.zip - Zip file na naglalaman ng mga guhit na svg para sa gabinete.
  • LapcadeV1-Circuit_Diagram_Large.zip - Zip file na naglalaman ng isang mataas na bersyon ng resolusyon ng fritzing circuit diagram na ipinakita sa ibaba.

Mga link sa higit pang mga mapagkukunan:

  • Adafruit Bluefruit EZ-Key Dokumentasyon
  • Adafruit PowerBoost 500 + Dokumentasyon
  • I2C / SPI LCD Backpack Dokumentasyon
  • MCP23017 I2C Port Extender Dokumentasyon
  • Adafruit MCP23017 Arduino Library

Hakbang 3: Assembly - Ang Gabinete

Assembly - Ang Gabinete
Assembly - Ang Gabinete
Assembly - Ang Gabinete
Assembly - Ang Gabinete
Assembly - Ang Gabinete
Assembly - Ang Gabinete
Assembly - Ang Gabinete
Assembly - Ang Gabinete

Nais kong magkaroon ng isang napaka-magaan na kahon ng timbang na maaari ring tumagal ng pagkatalo. Nang hindi nagiging masyadong exotic sa mga materyales, magaan ang katumbas ng manipis at manipis na karaniwang katumbas ng malutong. Ang pangunahing gumagamit ng Lapcade ay maaaring ang aking anak na lalaki na gustong "pindutin" ang mga pindutan at "mag-navigate" sa joystick nang may labis na sigasig. Bagaman mahusay siya tungkol sa hindi pagbagsak ng mga bagay, nagawa niyang maisuot ang pang-industriya na mga switch ng mikro sa isang joystick sa loob ng ilang buwan.

Upang mapagtagumpayan ang isyung ito at dahil ang Lapcade ay 20 ang lapad, ang aking disenyo ay idinagdag sa dalawang patayong mga tadyang na tinitiyak ang tuktok at kaliwa at kanang mga gilid. Sa panahon ng dry fitting ang disenyo ay nakatiis ng 70 lbs ng mga libro na nakalagay dito. Kapag nakadikit, ang kahon ay naging mas matibay. Matapos matanggap ang mga pinutol na materyales, una kong maluwag na magkakasya ang lahat ng mga panel upang matiyak na gumagana ang mga ito. Pagkatapos ay gaanong binasbasan ko ito at inalis ang hangin. Gumamit ako ng pandikit na kahoy upang ikabit ang mga piraso.

Ang mga libro sa mga larawan sa ibaba ay inilagay upang ilagay ang presyon sa mga bagong nakadikit na piraso hanggang sa itakda ang mga ito. Kapag ang kola ay gumaling, kininis ko ang mga gilid. Sinadya ng offset ng aking disenyo na i-offset ang mga panel upang makalabas sila nang kaunti sa mga sulok. Papayagan akong mag-ikot ng mga sulok sa panahon ng pag-sanding nang hindi masyadong napupunta sa pinagsamang.

Matapos linisin ang mga ibabaw, pagkatapos ay naglapat ako ng maraming mga coats ng polyurethane - pinapayagan na pagalingin sa pagitan ng mga coats. Ang resulta ay isang magaan na kahon na gawa sa kahoy na may takip sa ilalim ng acrylic. Orihinal na ginusto ko ang isang buong malinaw na kahon ngunit nang ipadala niya sa akin ang mga bahagi ng "pagsubok" ng birch, nagbago agad ang aking isip. Ito ay hindi lamang magaan, ito ay isang magandang ibalik sa ideya ng paglalaro ng gabinete. Nasa ibaba ang mga svg file.

Mangyaring Tandaan: Ito ay isang pagguhit ng multi-layer at ang bawat layer ay kumakatawan sa isang hanay ng mga pagbawas sa isang sheet ng materyal. Kapag nagpapadala ng isang naka-print sa iyong pamutol, siguraduhin na ang lahat ng iba pang mga layer ay nakatago bago i-cut.

Isa pang Tala: Nang iguhit ko ang lugar para sa display ng LCD, gumamit ako ng isang display na nasa kamay ko para sa mga sukat. Sa pagitan ng oras na binubuo ko ang pagguhit at sa paglaon ay nababagay ang mga bahagi sa kaso, ginamit ko ang orihinal na LCD sa ibang proyekto at nag-order ng kapalit. Tulad ng ito ay naging, ang mga tumataas na butas para sa pangalawang isa ay bahagyang naiiba kaysa sa orihinal at sugat na hindi pumila. Kaya, mag-ingat bago i-cut ang iyong materyal upang i-double check kung ang mga bahagi na mayroon ka ng mga butas sa pagguhit.

Isang Pangatlong Tandaan: Hindi ako nagsama ng isang ginupit para sa USB singsing na kurdon sa orihinal na pagguhit lamang dahil hindi ako sigurado kung saan ko nais na ilagay ito upang hindi ito makagambala sa paggamit. Kalaunan ay pinutol ko ang mga butas para dito sa kaliwang bahagi malapit sa kung saan mo nakikita ang salitang "Lapcade" sa mga imahe sa ibaba. Ang Bersyon 2 ay magkakaroon ng port ng pagsingil sa ibang posisyon.:)

Hakbang 4: Assembly - Electronics

Assembly - Elektronika
Assembly - Elektronika
Assembly - Elektronika
Assembly - Elektronika
Assembly - Elektronika
Assembly - Elektronika
Assembly - Elektronika
Assembly - Elektronika

Tingnan muna natin ang diagram ng mga kable na ipinakita sa itaas.

Ang unang bagay na dapat tandaan dito ay ang kapangyarihan at riles ng lupa ng breadboard. Ang mga daang-bakal na may asul na linya ay ground (-) at ang mga riles na may pulang linya ay kapangyarihan (+). Ito ay pamantayan ngunit gumagawa ako ng isang tala nito dahil ang karaniwang linya ng joystick (itim na kawad) ay konektado sa kapangyarihan at hindi sa lupa. Sa Fritzing ginamit ko ang kulay ng kawad ng joystick sa halip na ang kulay ng kombensiyon at naisip na maaaring maging sanhi ng pagkalito - napakahusay na alisin iyon.

Mga Koneksyon ng Component

Sa halip na subukang sabihin ang bawat koneksyon sa mahabang anyo dito (Ang Arduino analog pin 0 ay dumadaan sa isang 220 ohm resister sa PowerBoost Bat pin), gumawa ako ng isang spreadsheet na naglalaman ng lahat ng mga koneksyon mula sa pananaw ng sangkap. Kaya, sa Arduino tab ng spreadsheet, makikita mo ang APM A0 -> 2.2K OHM -> PB Bat at sa tab na PowerBoost makikita mo ang PB BAT -> 2.2K OHM -> APM A0. Mangyaring tingnan ang seksyon ng mga mapagkukunan sa ibaba para sa lahat ng mga file na nauugnay sa proyektong ito.

Ang isa pang tala tungkol sa spreadsheet ay ang ilang mga aparato na nagpapakita ng dalawang mga haligi ng koneksyon. Ito ay upang maipakita ang higit sa isang koneksyon sa isang pin. Halimbawa, ang bawat isa sa mga koneksyon ng joystick maliban sa karaniwang kawad ay gumagamit ng isang pull-down risistor upang matiyak na ang port extender ay tumatanggap ng isang solidong mataas o mababang signal. Upang maipakita ito para sa Joystick 2, makikita mo ang dalawang mga haligi para sa koneksyon ng isa para sa Joystick wire sa MCP 21 pin at ang isa pa para sa isang koneksyon mula sa pin 21 sa pamamagitan ng isang risistor patungo sa lupa. Sigurado ako na may mga mas mahusay na paraan upang idokumento ito ngunit natatakot akong ma-stuck ka sa aking mga paraan ng paggawa ng mga bagay sa isang ito.:)

Ang bawat isa sa mga pindutan ng arcade ay may isang pangkaraniwang (com), isang karaniwang bukas (hindi) at karaniwang sarado (nc) na contact. Para sa bawat isa sa mga pindutan na ito, gumagamit ako ng mga koneksyon sa com at nc.

Hakbang 5: Code

Code
Code

Una at pinakamahalaga, kailangan kong magbigay ng kredito kung saan ito nararapat. Malaki ang aking pagsalig sa sumusunod na artikulo upang mai-code ang Lapcade:

learn.adafruit.com/convert-your-model-m-keyboard-to-blu Bluetooth-with-bluefruit-ez-key-hid Espesyal na salamat kay Benjamin Gould para sa isang mahusay na nakasulat at dokumentadong proyekto!

Kaya, sa gitna ng proyektong ito ay isang keyboard. Mula sa pananaw ng PC, ang Lapcade ay isang keyboard na konektado sa pamamagitan ng bluetooth na kung saan ay napakahusay ng EZ-Key. Kinakailangan ang mga kumplikadong mga protokol ng Bluetooth, oras, at code at nai-encapsulate ang mga ito upang ang kailangan ko lang gawin sa arduino ay ipadala ito sa mga keycode. Upang magawa iyon, ginamit ko ang mga mapa ng code sa proyekto sa itaas at ang aking sariling mga array upang lumikha ng mga mode ng pagpapatakbo. Binabago ng bawat mode kung ano ang ginagawa ng parehong pagpindot ng pindutan sa Lapcade at kung ano ang naipadala sa PC. Mayroong tatlong "built-in" na mga mode sa pagpapatakbo at lahat ng mga mode pagkatapos ng mga iyon ay mga mode ng aplikasyon.

Mga Mode ng Pagpapatakbo

Ang sumusunod ay nagbubuod ng mga mode ng pagpapatakbo ng Lapcade:

  1. Startup - Sinusuri ng mode na ito ang pagkakakonekta sa PC at nagtatakda ng mga variable ng pagsisimula. Kung ang EZ-Key ay hindi ipinares sa isang PC pagkatapos ay nagbabago ito sa Pairing Mode
  2. Pagpares - Sa mode na ito ang EZ-Key ay naghihintay na ipares sa isang PC.
  3. Piliin ang Mode - Pinapayagan ng mode na ito ang gumagamit na pumili kung aling application mode ang gagamitin. Walang mga keycode na ipinadala sa PC sa mode na ito. Mayroon ding mga pagpipilian ng mabilis na mode batay sa nakaraang mode ng application. Halimbawa ang mode ng pagpindot at pagkatapos ang manlalaro ng dalawang pindutan kapag nasa Mame player na 1 mode na simpleng lumilipat ang mode nang hindi kinakailangang maghanap at piliin ang Mame Player 2 sa display.

Mga Mode ng Application

Ginagamit ang mga mode ng application upang magpadala ng naaangkop na mga keycode sa pc batay sa kung aling application ang gumagamit. Halimbawa sa Kodi mode ang aksyon 2 key ay nagpapadala ng "P" na naka-pause. Sa Mame, ang parehong pindutan ay nagpapadala ng kaliwang Alt key. Kung nais ng isang tao na gamitin ang controller upang i-play ang Minecraft para sa PC, kung gayon ang kailangan lamang gawin ay idagdag ang naaangkop na mga mapa ng array.

Ang bawat aplikasyon ay kailangang tukuyin sa 4 na mga arrays ng data.

  • mode - Naglalaman ang array na ito ng teksto na ipapakita sa screen para sa bawat mode. Upang magamit ang pangalawang linya ng display, maglagay lamang ng ~ sa array bilang isang linya ng break.
  • keyModes [14] - Ang matrix array na ito ay naglalaman ng mga keycode na ipinadala sa PC. Ang bawat linya ng 14 na mga elemento ay kumakatawan sa mga indibidwal na mga pindutan sa mga keycode mappings.
  • keyModifiers [14] - Ang matrix array na ito ay naglalaman ng mga modifier ng keycode para sa bawat keystroke tulad ng pagpindot sa shift key.
  • quickMode [3] - Ang matrix array na ito ay naglalaman ng pattern ng pagpili ng mabilis na mode para sa kasalukuyang mode.

Pangunahing operasyon

Kapag naka-on ang system napupunta ito sa startup mode kung saan ang katayuan ng koneksyon sa Bluetooth ay nasuri at ipinakita sa gumagamit. Nakukuha ng Arduino ang katayuan ng EZ-Key mula sa pagbibilang at pag-time sa mga pulso mula sa L1 pin ng EZ-Key. Mayroong apat na mga sub-status para sa startup mode:

  • Pagpapares - Ang EZ-Key ay nasa aktibong mode ng pagpapares na naghihintay na ilakip sa isang aparato.
  • Ipares ngunit Hindi Nakakonekta - Ang EZ-Key ay ipinares na dati ngunit hindi kasalukuyang nakakonekta sa host na aparato.
  • Ipares at Nakakonekta - Ang EZ-Key ay ipinares at ang koneksyon ay naitatag sa host. Sa puntong ito, ang system ay lilipat sa Mode Select.
  • Hindi Kilalang Katayuan - Ang EZ-Key ay nagbabalik ng isang hindi kilalang code o mayroong pagkagambala ng signal na gumagawa ng isang hindi kilalang pattern ng signal. Hahawakan at aabisuhan ng system ang gumagamit. Dapat i-restart kung nangyari ito.

Kung ipinares ang system ngunit hindi makakonekta sa PC, mananatili ang system sa pagkonekta ng estado sa startup mode. Kung pinipigilan ng gumagamit ang pindutan ng pagtakas habang binubuksan ang aparato, lalaktawan nito ang tseke sa koneksyon ng Bluetooth at magpatuloy sa Pagpili ng Mode.

Kung ang system ay hindi pa naipares, pagkatapos ang Startup Mode ay susundan ng Pairing Mode. Sa estadong ito ise-broadcast ng system na magagamit ito para sa pagpapares. Kapag natuklasan ito at naka-attach sa pamamagitan ng isang host, ito ay lilipat sa Mode Select. Ang aparato ay maaaring hindi mapares sa Mode Select sa pamamagitan ng pagpindot sa pindutan ng Aksyon 1.

Sa Mode Select, ang pataas at pababang mga aksyon ng joystick ay lilipat sa iyo sa mga magagamit na mga mode ng application sa LCD display. Upang mapili ang isa sa mga mode, pindutin ang enter button (gitna 5).

Kapag nasa isang mode ng aplikasyon, ang bawat isa sa mga pindutan at ang joystick ay magpapadala ng mga keycode bawat mga keymap na tinukoy sa apat na mga array tulad ng inilarawan sa itaas.

Mabilis na Mga Mode

Kapag napili ang isang Application Mode, nakatakda ang kahulugan ng mabilis na mode. Sa madaling sabi, ang Mga Mabilis na Mode ay ang Mga Mode ng Application na mapipili ng unang tatlong mga pindutan ng gitnang (Center 1-3). Ang tatlong mga pindutan na ito ay tumutugma sa elemento ng array sa kabuuan ng matrix.

Halimbawa 0 base array indexing) na kung saan ay 5. Ang system pagkatapos ay lumipat sa Application Mode 5 na kung saan ay Mame, player 2.

Hakbang 6: Mga Ideya para sa Bersyon 2

Pagpapakita ng Button - Sa palagay ko hindi mo maplano ang lahat ngunit may isang ideya sa disenyo na nais kong magkaroon ako ng maaga para sa bersyon ng isang - indibidwal na mga panel ng LCD na pindutan. Napakalinaw nito nang mabilis na nabuo na ang pag-alam lamang sa kung anong mode ka ay hindi nangangahulugang naaalala mo kung ano ang ginagawa ng bawat pindutan - lalo na pagkatapos mong lumayo mula dito sa loob ng ilang araw o buwan. Inaasahan kong nagdagdag ako ng ilang uri ng maliit na display sa o sa itaas ng bawat pindutan na ipinakita kung ano ang kasalukuyang pagkilos nito. Ang isang ito ay nasa tuktok ng aking listahan para sa bersyon 2.

4-Way vs 8-Way Joystick - Ang isa pang bagay na naging malinaw sa sandaling nagsimula akong gumamit ng joystick ay ang mga mas matatandang laro ay hindi nilalayon na gumamit ng 8-way na mga joystick. Kaso sa punto ay pac-man. Mula nang buuin ang tagakontrol na ito, nalaman kong may mga joystick doon na may kakayahang mailipat nang wala sa loob mula 4-way hanggang 8-way. Yep, ang isa ay nasa listahan at kung nagpaplano kang maglaro ng mga klasikong arcade game, pagkatapos ay lumaktaw lamang sa isa na maaaring baguhin. Siyempre, siguraduhin na account mo para sa mga pagbabago sa mga kable at programa batay sa joystick na iyong pinagdaanan. Narito ang ilang mga tagatustos ng mga klasikong kontrol sa arcade:

  • https://www.ultimarc.com/controls.html
  • https://groovygamegear.com/webstore/index.php?main…

Kanan at Kaliwa na "Mga Flipper" na Butones - Bersyon 2 ay tiyak na magdagdag ng isang pindutan bawat isa sa kaliwa at kanang bahagi ng gabinete. Ang isang posibleng paggamit ay para sa mga flip ng pinball.

Iba Pang Mga Kontrol - Tinitingnan ko ang posibilidad na magdagdag ng iba pang mga karaniwang kontrol tulad ng isang trackball at / o isang manunulid sa susunod na bersyon. Dahil ang EZ-Key ay may kakayahang magpadala ng mga coordinate ng mouse, hindi ito dapat maging masyadong mahirap.

On-Board Programming - Ang susunod na bersyon ay dapat magkaroon ng kakayahang magdagdag ng mga bagong pagsasaayos nang hindi binubuksan ang kaso. Nais kong idagdag ito sa bersyon 1 ngunit nangangailangan ito ng mas maraming oras at mapagkukunan kaysa sa mayroon ako.

Wireless Contest
Wireless Contest
Wireless Contest
Wireless Contest

Pangalawang Gantimpala sa Wireless Contest

Inirerekumendang: