Pitanje:
Volio bih naučiti kako napraviti vlastite USB uređaje
Tim Post
2009-11-07 20:01:21 UTC
view on stackexchange narkive permalink

Već neko vrijeme pišem upravljačke programe uređaja s Linuxom za tuđe stvari. Volio bih pronaći novi hobi i pomisao na izradu vlastitih USB uređaja čini mi se zaista urednom.

Bio bih oduševljen što mogu upravljati nekim LED-ima, servo-uređajima i koračnim motorima. Zaista uživam samostalno učiti nove stvari i uzbuđenje kad nešto napokon uspije. Nisam radio ozbiljno MC programiranje, ali znam kako se snalazim.

Može li netko preporučiti neke komplete koji bi bili korisni kompletnom noob-u? U idealnom slučaju, oni su:

  • Linux prilagođeni
  • Sposobni za međunarodnu isporuku (trenutno živim u Aziji)
  • Nudite pakete za nadmetanje

Ako imate vremena i naklonosti, veze s projektima na tuđim stranicama koje uključuju sheme i popise dijelova bile bi vrlo zahvalne. Želim proučavati na primjerima, ali dobrim primjerima, zato i pitam ovdje.

Moj konačni cilj je napraviti vlastite sakupljače podataka - sve od kiše do prosjeka decibela do razine svjetlosti. Žao mi je ako sam to već pitao, pretraživao sam (i pretraživao oznake).

Jedanaest odgovori:
#1
+27
Clinton Blackmore
2009-11-07 20:25:52 UTC
view on stackexchange narkive permalink

Arduino stvarno je popularan i radi se o hardveru otvorenog koda, tako da postoje varijacije, uključujući Freeduinos nezavisne tvrtke Bare Bones Board, Really Bare Bones Board i Boarduino, koji su vrlo zgodni za upotrebu s pločama. Standardni Arduino prilagođen je pomoću stvari nazvanih Shields. Možete izraditi vlastiti štit za pločice ili kupiti nešto poput ovog ProtoShield Kit.

Arduino koristi FTDI USB- RS232 čip ili kabel. [Ugrađeni su u standardni Arduino, dok većina ploča za kruh koristi poseban kabel u kojem je čip i štedi vam novac.] Ugrađen je upravljački program za Linux i Mac OS X i Windows korisnici mogu preuzeti upravljački program. To zapravo znači da Arduino djeluje kao uređaj koji komunicira na serijskom priključku, pa je vrlo lako komunicirati s njim.

Da biste ga koristili, također preuzimate softver. Dolazi s IDE-om, AVR-GCC alatnim lancem, stvarno lijepom knjižnicom i softverom za prijenos vašeg programa na čip. Skriva većinu detalja od vas i ima sjajnu zajednicu. Programiran je na jeziku koji se naziva "Ožičenje", ali zapravo je C ++.

Napokon, budući da je hardver otvorenog koda, vani postoje sheme. Zapravo, čini mi se da se sjećam da sam čitao da je bilo prilično lako izgraditi raniji model. Traženje "Arduino shema" u vašoj omiljenoj tražilici dat će vam dobre rezultate.

Što se tiče kompleta, Maker Shed nudi puno predmeta povezanih s Arduinom na lageru. Čini se da se isporučuju širom svijeta. Neki od njih uključuju:

The Shoppe at Wulfden (SAD) ima lijepe komplete za eksperimentatore i čini se da se isporučuju na međunarodnoj razini.

Solarbotics (Kanada) ima ARDX Arduino Experimenter's Kit, Freeduino Starter Bundle - Ultimate i Arduino Starter Bundle - Basic (i Ultimate) i čini se da se isporučuje na međunarodnoj razini.

Na glavnoj Arduinovoj stranici "kupnje" nalaze se dobavljači Arduina u svim dijelovima svijeta.

Druga mjesta koja bih provjerio uključuju Adafruit Industries i Sparkfun Electronics (oboje u SAD-u).

Vau. Hvala vam na vremenu koje ste uložili u tako informativan odgovor!
Drago mi je to čuti. Nakon što sam napisao odgovor, pomislio sam u sebi: "Ne mogu vjerovati da sam upravo proveo četrdeset minuta odgovarajući na pitanje na internetu!"
Sjajan post, ali treba napomenuti da ne koriste svi Arduinosi FTDI čip. Na primjer, koristim svoj Arduino Uno R3 pod OS X bez instaliranog upravljačkog programa. (Taj koristi Atmega 16U2 za USB komunikaciju.)
#2
+14
bpijls
2009-11-08 00:41:13 UTC
view on stackexchange narkive permalink

Arduino je izvrstan alat za početak kada želite izraditi elektroničke uređaje i mogao bi vas odvesti do vašeg konačnog cilja izgradnje dnevnika podataka. Međutim, nije prikladan za pravi razvoj USB-a jer oponaša staromodni serijski priključak. Ne dopušta vam da se pretvorite u bilo što drugo (poput uređaja za ljudsko sučelje (miš / tipkovnica) ili uređaja za masovnu pohranu (čitač kartica / prijenosni pogon)).

Ako želite učiniti "stvarnim" USB uređaji provjerite web mjesto Jana Axelsona. Piše knjige o početnicima o USB-u. Razvoj gadgeta koji koriste USB na ovoj razini možda neće biti prikladan za početnike, tako da će vas Arduino iskustvo sigurno pokrenuti.

Zahvaljujem na poveznici. Sigurno ću to provjeriti kad se skinu 'kotačići za trening' :)
To nije sasvim točno ... Arduino Leonardo i sve ploče temeljene na Atmega32u4 mogu vam omogućiti izradu HID-a i bilo kojih drugih prilagođenih uređaja
#3
+8
qartis
2009-11-08 11:12:54 UTC
view on stackexchange narkive permalink

toplo preporučujem tutorial za prezentaciju prezentacija slajdova Tuxgraphics AVR. Koristi Atmel AVR mikrokontroler koji ima veliku zajednicu hobista (avrfreaks itd.) i softver otvorenog koda usb1.1 stog s obdev.org. Ne može se jako povećati (na primjer, masovna pohrana), ali konačni proizvod je mala USB HID tipkovnica s dvije tipke koje se mogu dodijeliti. Bilo bi ga trivijalno koristiti kao zapisnik podataka, a nekoliko primjera na obdev.org upravo je to (www.obdev.at/products/vusb/projects.html). Napisan je čistim c, a popis dijelova iznosi najviše nekoliko dolara.

Istodobno, preporučujem izgradnju ili kupnju programera tuxgraphics avrusb500. Radost mi je koristiti i jedan od najpouzdanijih dijelova opreme koje posjedujem. (Nisam povezan - samo vrlo zadovoljan kupac!)

#4
+8
Clinton Blackmore
2009-11-09 23:59:27 UTC
view on stackexchange narkive permalink

Još jedan uređaj koji sam želio razmotriti je AT90USBKey. Prošlo je već neko vrijeme otkako sam ga proučio i nisam siguran možete li ga programirati bez sustava Windows, ali on će djelovati kao USB uređaj (poput tipkovnice ili uređaja za masovnu pohranu) ili kao USB domaćin u koje priključite druge uređaje. Dostupni su uzorci programa i čini se s njima prilično lako raditi, pod uvjetom da znate malo o elektronici i ako možete kodirati na C.

Googleovo pretraživanje za AT90USBKey i Linux pogodilo je obećavajuće rezultate.

Znam da ga možete dobiti na DigiKey.ca. Potražio sam digikey ekvivalent za Aziju; dio možete dobiti kod Farnella.

Prema povezanom web mjestu, čini se da se ploča može programirati putem Jtaga.
#5
+6
tuupola
2009-11-09 00:48:34 UTC
view on stackexchange narkive permalink

Možda biste željeli provjeriti i Teensy.

#6
+6
follower
2009-11-17 10:00:36 UTC
view on stackexchange narkive permalink

Ako na kraju koristite Arduino, prenio sam knjižnicu V-USB (ranije AVR-USB) da bih se na njoj izvodio. Također je omotan klasom kako bi se olakšala interakcija.

Pomoću nje možete stvoriti USB HID uređaje, npr. tipkovnica, miš ili navigacijska tipka. Također možete stvoriti generički uređaj koji koristi libusb na hostu za upravljanje - od Pythona, C, Processinga itd.

Moja web lokacija ima PCB štit koji možete napraviti koji koristi USB utičnicu i nekoliko otpornici itd .:

http://code.rancidbacon.com/ProjectLogArduinoUSB

Možete napisati Arduino kôd za slanje pritiska tipki najlakše kao:

  UsbKeyboard.sendKeyStroke (KEY_ENTER);  

ili pomoću "pokretačkog programa" libusb možete slati podatke poput:

  UsbStream. napišite (0xff)  

ili pročitajte podatke pomoću:

  UsbStream.read ()  

--Philip;

#7
+5
Laen
2009-11-13 01:27:49 UTC
view on stackexchange narkive permalink

Sada postoji niz razvojnih ploča temeljenih na AVR-USB-u.

Osobno sam koristio prethodno spomenute Teensy i Bumble-B i mislim da su oboje sjajno.

Teensy je lijep, jer se jako dobro integrira s Arduino okruženjem. To znači da možete raditi stvari poput "Mouse.init; Mouse.move (x, y)" umjesto da se sami bavite USB kodom niske razine. Oboje će pokrenuti LUFA ako to želite.

#8
+5
Leon Heller
2009-11-20 05:14:32 UTC
view on stackexchange narkive permalink

Evo mog jednostavnog PIC USB projekta:

http://www.leonheller.com/usb

Dostupne su PCB ploče.

#9
+4
avra
2010-09-14 16:26:17 UTC
view on stackexchange narkive permalink

Razvoj objekata izradio je knjižnicu za AVR mikrokontrolere koja vam omogućuje da sami napravite vrlo jeftine USB uređaje (počevši od samo 2-3 dolara). GCC za AVR prilagođen je linuxu. Postoje gomile već napravljenih uređaja. Pogledajte ovdje: http://www.obdev.at/products/vusb/projects.html

#10
  0
varesa
2012-03-08 00:24:37 UTC
view on stackexchange narkive permalink

Ovisi o tome koju vrstu USB uređaja želite izraditi i o tome koliko napredna razina. Spominjete trepćuće diode. Ta se vrsta kontrole može lako postići bilo kojim mikrokontrolerom s uartom i ftdi čipom (arduino je prilično popularan i jednostavan za pokretanje). Ftdi čip se serijski povezuje na uC i djeluje poput serijskog pretvarača <-> USB. Također se prikazuje kao virtualni COM-port na vašem računalu.

Ako želite koristiti naprednije USB protokole, upravljačke programe i značajke, mogli biste dobiti UC s matičnim USB sposobnostima. Microchip ima mnogo slika (njihovih mikrokontrolera) koje to mogu učiniti, na primjer. Microchip također ima mnogo razvojnih ploča posvećenih učenju korištenja USB-a. Atleast Microchips 32-bitni uC podrška također podržava i otg -režime, tako da možete izraditi datalogger koji sprema podatke na uobičajeni usb memorijski stick, koji možete priključiti na svoje računalo za čitanje podataka. (Siguran sam da i mnogi drugi proizvođači imaju slične IC-ove i programe, ali Microchip je jedini koji sam koristio)

Microchip-ova početna stranica / USB

#11
  0
martinm
2013-09-08 11:16:31 UTC
view on stackexchange narkive permalink

Imajte na umu da ne morate započeti s tako niskom elektroničkom razinom i rezervirati više vremena za razvoj samog "gizma". Mnoge tvrtke prodaju USB uređaje za tržište "uradi sam", na primjer:

http://www.yoctopuce.com

http: // www.phidgets.com



Ova pitanja su automatski prevedena s engleskog jezika.Izvorni sadržaj dostupan je na stackexchange-u, što zahvaljujemo na cc by-sa 2.0 licenci pod kojom se distribuira.
Loading...