[elektro] USB-PIC

potyo potyo.ada at gmail.com
Sat Jan 29 14:16:36 CET 2011


 <toth.peter at tilonasec.hu> írta (2011. január 29. 13:38):

> Egyébként, hogy van ez az USB? Ha veszek egy USB-s PIC-et és rádugom a
> PC-re, akkor mit csinál?

Semmit, még csak annyit sem ír ki, hogy nem tudja felismerni az eszközt.

> Az eszköznek kell indítania a kapcsolódást, vagy a a PC kezdi, mert
> észrevette?

Az eszköz felhúzza az egyik adatvezetéket 1k5-el (hogy melyiket, az
attól függ, hogy low speed vagy full speed-es a cucc), ebből a PC
észreveszi, hogy van ott valami (mert a PC meg 15k-val húzza le
mindkettőt), és megpróbál felé kapcsolatot felépíteni. De ahhoz, hogy
a PIC felhúzza 1k5-el, ahhoz a PIC-ben ezt a felhúzást a firmware-nek
be kell kapcsolnia, tehát üres PIC-re nem fog a gép semmit sem
észrevenni. Ezt a felismerési folyamatot hívják enumerációnak az usb
terminológiában. Valamennyire érdemes azért átlátni, de nem szükséges
tökéletesen ismerni. Alapvetően minden kommunikációt a PC kezdeményez,
a PC kérdezi meg azt is, hogy van-e valami küldenivalója a PIC-nek, a
PIC nem tud olyat csinálni, hogy küld valamit anélkül, hogy a PC azt
kérné. Itt némi félreértésre ad okot az úgynevezett interrupt
transfer, ami nem azt jelenti, hogy a PIC tudna megszakítást intézni a
PC felé. Pontosan már nem emlékszem, hogy mi, mert régen foglalkoztam
én is USB-vel, de az alábbi linken utána lehet olvasni.

Vannak bőségesen gyári példakódok mind PC, mint PIC oldalra. PIC
oldalra C-ben, PC oldalra C++ meg C#-ban, meg lehet, hogy van Visual
Basic meg hasonló is, de alapvetően az előző kettő a túlnyomó többség.
Asm-ben lehet ugyan USB-t hegeszteni, de túl macerás, nem látja át az
ember, alig találni példakódot, stb. A C-s példakódokkal is ismerkedni
kell egy ideig, az sem azonnali, de szinte mindenki C-ben csinálja.

Kezdésnek az USB működéséről javaslom ezt elolvasni, ennyit elég tudni
ahhoz, hogy az ember használni tudja:
http://www.beyondlogic.org/usbnutshell/usb1.shtml

Mellesleg ha FTDI-t használsz, a táp akkor is ott van, használhatod nyugodtan.



More information about the Elektro mailing list