Kysymys:
GPIO: n käyttö tietokoneessa
Andrey Pesoshin
2012-10-18 18:00:26 UTC
view on stackexchange narkive permalink

Minulla on yksinkertainen projekti isäntälaitteella, jonka pitäisi ajaa 2 nastaa korkealla logiikkatasolla (jännite 3,3 V, 5 V tai 12 V - ei väliä) ja odottaa, että oheislaite ajaa 2 muuta nastaa .

Voinko ottaa tällaisen isäntälaitteen käyttöön tavallisella tietokoneella ja mitä laitteita (sisäänrakennettuja tai ylimääräisiä) minun pitäisi käyttää?

Etsitkö jotain sellaista kuin http://www.mccdaq.com/?
Olen kiinnostunut, ehkä PC: llä on jo sisäänrakennettu toiminto (ohjain, nastat) tarkoituksiini? Ja jos ei - etsi ratkaisu ostettavaksi (BTW, kiitos linkistä!)
Mahdollinen ratkaisu, joka on sekä yksinkertainen että taloudellinen, olisi käyttää jotain sellaista kuin MSP430 Launchpad, joka on kytketty tietokoneeseen USB: n kautta ja joka on ohjelmoitu Arduinon kaltaisessa ohjelmistoympäristössä, nimeltään Energia, kaikki hintaan 4,30 dollaria, mukaan lukien S / H (Fedex 2 päivä, maailmanlaajuisesti), tai jopa halvempi DIY-levy, joka käyttää AVR: ää (kuten attiny85 bitbanged USB: llä), joka on ohjelmoitu PC-puolelle Arduinossa (jos haluat tai haluat).
Kolme vastused:
Chris Stratton
2012-10-18 19:13:51 UTC
view on stackexchange narkive permalink

Jos löydät silti sellaisen, on syytä mainita, että todellinen rinnakkaisportti on suunnilleen yhtä lähellä GPIO: ta kuin hyllyssä olevasta tietokoneesta. Perinteisistä toteutuksista puuttuu joustavuus, koska monilla nastoilla on kiinteä suunta ja toiset ovat päinvastaiset, mutta ihmiset ovat työskennelleet sen ympärillä jo vuosia.

Suurempi rajoitus on, että tällaiset portit ovat sukupuuttoon. Abstraktisemmat korvaukset, kuten USB-rinnakkaismuuntimet, ovat tyypillisesti käyttökelpoisia vain varsinaisten tulostimien ohjaamiseen, ja niiltä puuttuu rekistereitä, joita voit lukea / kirjoittaa suoraan asettaa tai seurata nastatilaa. On huhuttu, että muutamilla on tämä ominaisuus, mutta niitä voi olla vaikea löytää ja ne vaativat tarkkaa huomiota ohjaimille.

Siinä vaiheessa on yleensä käytännöllisempää käyttää USB- liitetty I / O-laite. Usein tämä on mikro-ohjain, joka käyttää yksinkertaista laiteohjelmistoa, joko valmistajalta tai mukautetulta.

Yksi mukautetun toteutuksen merkittävä etu on mahdollisuus siirtää I / O-manipuloinnin alimman tason, toistuvimmat ja / tai ajoitetut kriittiset osat laitteen prosessorille sen sijaan, että yrität tehdä sen PC: ltä, jossa USB-pakettien latenssi, usean väylän läpikäynti ja moniajo-käyttöjärjestelmät tekevät bittikohtaisista toiminnoista tuskallisen hitaita.

Jos et ole vielä selvittänyt tarkalleen, missä muodossa ratkaisusi on Yksi mahdollisuus on tarttua Arduinon tapaan, joka on pakattu sekä laitteisto- että työkaluketjuun käytön helpottamiseksi ja joka voi toimia joko erillisenä ratkaisuna tai I / O-apuna alhaisen tason tehtävien suorittamiseen komento liitetyltä tietokoneelta.

Jos OP valitsee rinnakkaisporttireitin, on syytä huomata, että NT-pohjainen käyttöjärjestelmä (eli mikä tahansa viime vuosikymmenen aikana julkaistu Windows-käyttöjärjestelmä) vaatii erityisen ytintilan ohjaimen, jotta pääsy rinnakkaisporttiin. Jos käytät Windows-versiota, jossa on Kernel Mode Code Signing Policy (esim.Vista / W7 x64, ehkä jopa W7 x86), tämä ohjain on myös allekirjoitettava digitaalisesti.
hyvä vastaus, äänestäisin, jos voisin :-)
@ajs410 - tällaiset koodin allekirjoitusvaatimukset koskevat todennäköisesti myös muiden käyttöliittymien, kuten USB, ohjaimia. Yksi mahdollinen loppuajo voi olla käyttää jotain, jolle käyttöjärjestelmä jo tarjoaa ohjainkoodin, ja tarvitsee vain kokoonpano- / informaatiotiedoston, esimerkiksi virtuaalisen com-portin. Se ei ole GPIO, mutta sitä voidaan käyttää komento- / tilakanavana puhuakseen auttaja-mikrolle, jolla on GPIO: ita.
David Perek
2012-10-19 00:53:48 UTC
view on stackexchange narkive permalink

Suosittelen FTDI FT232RL: n käyttöä erityisellä ohjaimella, joka mahdollistaa sen bitbang-tilan. Tämä menetelmä toimii käytännöllisesti katsoen kaikilla tietokoneilla ja mahdollistaa kohtuullisen viiveen pääsyn yksinkertaiselle GPIO: lle.
Siellä on monia FTDI-sirulevyjä, mutta käytän henkilökohtaisesti tätä.

kiitos neuvosta, se kuulostaa enemmän hakkeroinnilta, mutta sen pitäisi toimia. Löysin samanlaisen ratkaisun [8 CHANNEL USB GPIO MODULE] (http://www.numato.com/productdoc/usbgpio8/USBGPIPO8V2.pdf)
Olin Lathrop
2012-10-18 18:35:05 UTC
view on stackexchange narkive permalink

Ei ole selvää, mitä haluat tietokoneen tekevän ja mitä laitteen pitäisi tehdä ("isäntälaitteella" ei ole mitään järkeä), mutta näyttää siltä, ​​että haluat digitaalisen I / O: n tietokoneelta.

PC: itä ei todellakaan ole suunniteltu suoraan digitaalisiin I / O-ulostuloihin ulkoisiin laitteisiin. Voit kuitenkin ostaa digitaalisia I / O-moduuleja, jotka yhdistetään tietokoneeseen USB: n kautta, joiden avulla voit lukea ja kirjoittaa yksittäisiä digitaalisia signaaleja. Voit tehdä tämän itse helpoimmin antamalla mikrokontrollerin kommunikoida tietokoneen kanssa COM-portin kautta.

Jos tämä on oikeastaan ​​vain yksinkertainen ohjausongelma, miksi tarvitset tietokonetta ollenkaan? Pyydä pientä mikro-ohjainta tekemään koko tehtävä itse. Juuri mikrorullat ovat tarkoitettu. Ne ovat pieniä tietokoneita, joissa on digitaalisia ja muita I / O-linjoja, jotka on tarkoitettu liitettäväksi suoraan ulkoiseen laitteistoon.

Meillä ei ole täydellistä kuvausta halutusta toiminnallisuudesta, mutta luulen, että hän tarvitsee kaksois-SR-kiikun. Minkä * voit * jäljitellä miljardin transistorin suorittimella :-).
Kiitos vastauksestasi. Ymmärrän, että ratkaisuja on valtava määrä suorittaa, mutta halusin kysyä varmasti ulkoisen laitteen suorasta kytkemisestä tietokoneeseen. Nyt näen, että en voi tehdä sitä suoraan, mutta ylimääräisellä ohjaimella tai I / O-kortilla.
-1


Tämä Q & A käännettiin automaattisesti englanniksi.Alkuperäinen sisältö on saatavilla stackexchange-palvelussa, jota kiitämme cc by-sa 3.0-lisenssistä, jolla sitä jaetaan.
Loading...