Harkitsen joidenkin mukautettujen gizmos-ohjelmien muodostamista yhdistettäväksi retro-harrastustietokoneeni peliporttiin (SNES-ohjainsovitin, makro- / turboboksi jne.) mutta en ole löytänyt paljon tietoa yksityiskohdista, kuten sallituista nykyisistä rajoista.

(Vain tämä mainitsematon maininta DSLReports-foorumeista , joka väittää, että ”MIDI / peliportin vakiokäyttöjännite on 5 volttia ± 5% ja virtalähtö 40mA, kun se on aktiivinen, ja 22mA, kun se on valmiustilassa.”)

Ottaen huomioon joidenkin digitaalisten fanien joystickit, jotka eivät vaadi ulkoisia virtalähteitä, tiedän, että jonkinlainen mielikuvituksellinen kuormitus voidaan ripustaa pois peliportin 5 V: n linjoilta, mutta en halua pelata, että SoundBlaster 16 Olen huolellisesti hankkinut eBayn muutama vuosi sitten, on vähintään yhtä vankka kuin mikä tahansa vielä tuotannossa olevan USB-Gameport-sovittimen ja Raspberry Pi -yhdistelmän riski, että riskin kehitystestaukselle.

Suojelun puolella isäntätietokone, toivon fi ja vankka lähde yksityiskohtia varten, kuten:

  • Suurin turvallinen huippuvirta
  • Suurin turvallinen kestävä virta
  • Digitaalisten ohjaussauvojen DO ja DON ”Ts jumissa, kun pinoutit, kuten tämä yksi , luetellaan useita 5 V: n syöttöjohtoja ja määritetään, että kukin GND-linja on tarkoitettu tietylle painikkeelle.

Onko kenelläkään mikro-ohjaimen suojauksen puolella mitään tietoja suurimmasta havaitusta virrasta, kun painikkeita painetaan tai X- ja Y-akselilinjat ovat alueen 0Ω lopussa?

(Jos se on asiaankuuluvaa, toivon voivani käyttää niitä alle 1 dollarin arvoisia kiinalaisia STM8S-levyjä, joissa on Sduino , jos numerot lähtevät. 16 MHz: n pitäisi olla tarpeeksi bittiräjähdyksille ja et voi ”lyödä” niitä koon tai hinnan vuoksi.)

Viittaus, jolla on myös samanlaisia tietoja PC- ja PS / 2-näppäimistöporteissa, olisi arvostettu, koska olen ”Harkitsen myös Dynapoint GameStarin kopion rakentamista.

Vastaus

IBM: n alkuperäisen Game Control Adapter -sovelluksen -dokumentaatiossa on joitain yksityiskohtia, jotka ovat hyödyllisiä. Vaikka käytät sen sijaan SoundBlaster-korttia, sen pitäisi silti olla yhteensopiva IBM: n alkuperäisen kanssa.

Vaikka dokumentaatiossa ei määritetä enimmäisvirroja nastoille, siinä on looginen kaavio:

IBM Game Control Adapter -piirikaavio

Voi olla nähdään, että alkuperäisessä peliportissa painikkeen tulot syötetään 74LS244-puskuriin (1Kohmisten vetovastusten ja 51pF-kondensaattoreiden kautta). 74LS244 ”-taulukko määrittelee matalan tason lähtövirran enimmäismääräksi 24 mA / nasta ja korkean tason lähtövirraksi -15 mA.

Potentiometrin (akselien) tulot syötetään NE558-neliajastimen ajastustuloihin (linjaisten 2,2 kohmivastusten ja .01uF-kondensaattoreiden kautta). Sen -taulukossa ei ole luetteloa näiden tuloliittimien nykyisen kuormituksen yksityiskohdat; niitä käytetään uudelleen RC-ajoitusarvoina.

IBM-kaavio näyttää kaikki yhteiset liitännät (ja 5 V: n lähteet). Epäilen, että peliportin 5 V: n nastat on kytketty suoraan ISA-korttipaikan 5 V: n syöttöön; tämä voidaan vahvistaa kortillesi jatkuvuustestillä yleismittarilla. Tässä tapauksessa ISA-kortin suurin sallittu virranotto voi antaa lisäohjeita.

Vastaa

takaisin (x386) päivää käytin GAME-porttia ADC: ksi kotitekoiseen skanneriin ja muuhun itse rakennettavaan HW: hen. Kuten kehityksen aikana on tavallista, satunnaisia vikoja, kuten oikosulku jne. Käytetyt GAME-portit olivat aina GoldStar-sirulla toimivia IDE / portteja ISA-kortteja (ne olivat hyvin yleisiä) ja analogisten nastojen oikosulku palaa aina + 5 V: n virtajohto piirilevyssä (mikään siru ei vahingoittunut. Tiedän, että polttaneen johdon ohittaminen toimi kaikki uudelleen), joten käytettyjen piirilevyjohtimien virtatiheyttä ei ole mitään muuta.

johdot takaisin päivällä voisivat turvallisesti siirtää 0,5 A: n (ne alkavat yleensä palaa yli 1 A: n), mutta en tehnyt kuormitusta suuremmaksi kuin 100 mA.

Kun tarkastelin NE558-tietolomaketta (linkki on Kaz ”s vastaus) pinout-virheen lisäksi tässä on yhden ajastimen vastaava piiri:

NE558

ajoitusväli on:

t = R.C 

missä C = 0.1 uF ja R >= 2K2. Ottaen huomioon Vcc = 5V ja kohdan

Transistorin perusteet transistorin pudotusjänniteVce = ~0.2V, silloin absoluuttinen ”turvallinen” maksimivirta ajoituslähdölle (analoginen GAMEPORT-tappi) on:

I = (Vcc-Vce) / R = (5-0.2)/2200 = 2.18 mA tmin = R.C = 2200*0.1/1000000 = 220 us 

joka kuulostaa kohtuulliselta, kun otetaan huomioon sen vertailijan tulovirta.Tällaisen analyysin jälkeen muistamani oikosulkuvirrat ovat mahdottomia, joten GAMEPORTilla oli joko erilaiset piirit tai virrat eri nastojen kautta (ehkä VCC / GND).

Peliportin analogisilla nastoilla on 2.18 mA virtaraja.

Varo, että kuorman tulee olla passiivinen, kun tappi tyhjenee virta yksinään, joten joko potentiometri tai NPN-transistori (kerääjä-> Vcc, emitteri-> GAMEPORT_analog_pin) tekee samaa työtä.

SB16- tai USB-sovittimilla voi kuitenkin olla erilainen piiri (varsinkin jos niihin sisältyy MIDI-liitäntä), mutta 2mA on yleinen arvo vertailijoille ja vahvistimille.

Varokaa pienemmät virrat tarkoittavat suurempia muuntamisaikoja, joten sinun on löydettävä kompromissi, jotta äänestyslukukoodisi ei odota liian kauan ja sillä on tarpeeksi tarkkuutta. . esimerkiksi 1 ms:

t = (Rl+R)*C Rl = (t/C)-R Rl = (0.001/0.1)*1000000-2200 = 7800 ohm 

joten jos näen sen oikein, jos kuormasi on 0 .. 7K8 sitten th Muunnos päättyy 1 ms yläosiin.

Vanhan Rockfire-joystickin mittaamisessa x-akselilla on 160K oikeassa asennossa nolla vasemmalla ja 68K keskellä (haven ”t käytti sitä ikäisinä, joten keskiasento saattaa siirtyä), mikä johtaa enimmäismuutosaikaan t = 16.22 ms

Kommentit

  • 100mA on tarkoitettu NE558-ulostulolle, ei ajoitustulolle, mihin joystick-portin analogiset tulot on kytketty.
  • @Justme You ’ olet oikeassa ( +1) Kaipaan lukea sitä. Joitakin perusteellisempia tutkimuksia löysin luotettavamman rajan. Olet muokannut vastausta.
  • En ’ ymmärrä, miksi oletat, että Vce on 0,6 V, mikä aiheuttaa vähemmän virtaa. Olisi parempi olettaa, että purkutransistorin Vce on nolla näillä virtatasoilla ja siten pahemmassa tapauksessa virtaa. Ero ei kuitenkaan ole suuri, kun otetaan huomioon kaikki toleranssit, sen tulisi silti olla alle 2,5 mA analogista tuloa kohden.
  • Toivon todella, että voisin antaa kaksi ” hyväksyttyä vastausta ” -valintamerkit, koska päivitetty vastauksesi ja Kaz ’ -vastauksesi tuntuvat todella kahdelta puoliskolta ihanteellisen vastauksen. Minun oli annettava se Kazille, koska se oli sekä yhdistetyn vastauksen alku että se, joka löysi alkuperäisen IBM-sovittimen logiikkakaavion.
  • @Spektre Vbe -lasku olisi noin 0,6 V sisään transistorit. Mutta tämä on Vce drop. Jos purkutransistori on samanlainen kuin lähtötransistori, NE558-tietolomakkeen mukaan, Vce-pudotus olisi tyypillisesti 0,1 V 10 mA: n virralla, ja koska käytettävissä oleva virta ajoitustapissa on alle 3 mA, myös jännite olisi selvästi alle 0,1 V.

vastaus

Peliportin nykyiselle rajoitukselle ei ole virallisia tietoja. Joissakin adaptereissa voi olla vastuksia, ferriittihelmiä tai sulakkeita virran rajoittamiseksi, mutta yleensä oikosulku silti paistaa jotain (lukuun ottamatta polyfuusiota). Sanon, että 100mA on joka tapauksessa turvallinen raja. Alkuperäisessä sovittimessa on 1k vetopainikkeita painikkeissa, joten kaikkien samanaikaisesti painettujen neljän painikkeen kohdalla se lisää jopa 20mA virtaa napin johtimista maadoitusjohtoon. Analogiatuloissa on 2,2 k sarjassa, joten kaikki analogisen tulon potentiaalit 0R ääriasennossa lisäävät noin 9mA virtaa 5 V: n johdosta analogisiin tulojohtoihin.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *