You are on page 1of 18

GIAO TIP USB

USB (Univeral Serial Bus) l hnh thc giao tip hu dng vi tnh nng lug and la!
"a #$i t% n& '(()* l +t ,u- c.a s/ h0p t1c c.a 2 c3ng t! hng #4u th gii5 6o&pa,* 7igital 8,uip&ent 6orporation*
9B:* 9ntel* :icroso;t* <86* v <orthern =eleco&>
USB tao c? h@i cho c1c thit AB giao tip tCc #@ cao5 digital ca&era* &ulti&edia device* telephone device* USB dis+* D
:c tiEu c.a giao tip USB
7F sG dng5
lug and la!5 tnh nng cho phHp ngI$i sG dng +h3ng c4n tJt &1! #K ci #Lt cMu hnh nhI interrupt* dipsNitch* D
B@ #iOu +hiKn USB t/ ph1t hiPn v nhQn Ait +hi thit AB #I0c +t nCi hoLc ngJt +t nCi>
RS tr0 tru!On d liPu th$i gian th/c5
Tng dng n! cho phHp giao tip vi c1c thit AB &ulti&edia #K tru!On tn hiPu U& thanh hoLc hnh -nh
:V r@ng ort5
USB cung cMp ' gi-i ph1p &V r@ng port cho phHp tCi #a 'W2 thit AB +t nCi cXng lYc vi ' 6
Zi tCc #@ +t nCi &V r@ng lEn #n 'W:Aps* nhIng &c tiEu c.a USB l dnh cho c1c thit AB tCc #@ thMp v trung Anh
nhI5 +e!Aoard* &ice* &ode&* scanner*D
Cc chun giao tip
USB '>[
USB '>'
USB W>[
ort +t nCi USB
6\ W lo]i th3ng dng5 lo]i ^ v lo]i B
_o]i ^5 thI$ng dXng +t nCi upstrea& (trEn 6)
_o]i B5 thI$ng dXng +t nCi doNnstrea& (trEn thit AB)
ort +t nCi USB (tt)
=n hiPu logic trEn USB5 sG dng &` <"a9
_ogic b'c5
7d eW>fZ
7g h[>iZ
_ogic b[c5
7d h[>iZ
7g eW>fZ
=rV +h1ng #I$ng dU!5 ([
=Cc #@ +t nCi USB
jK A1o tCc #@ sk +t nCi thit AB USB ph-i c\ #iPn trV '>l+ +Ho lEn ngumn V ngn 7d hoLc 7g
jiPn trV +Ho lEn n! cong dXng #K host Ait s/ hiPn hu c.a thit AB
jK chpn tCc #@ qull speed ('W:Bitrs)* #iPn trV '>l+ #I0c +Ho lEn i>iZ V ngn 7d

=Cc #@ +t nCi USB
jK chpn tCc #@ _oN speed ('>l:Aitrs)* #iPn trV '>l+ #I0c +Ho lEn i>iZ V ngn 7g
:@t sC thit AB c\ #iPn trV #I0c sU! d/ng &]ch A1n dtn* c\ thK #iOu +hiKn Aung ;ir&Nare
<gumn #iPn cung cMp
:@t l0i #iK& ,uan trpng c.a thit AB USB l +h3ng c4n ngumn cMp #iPn AEn ngoi & #I0c cMp t% host
=hit AB USB c\ i ch #@ ngumn5
_oN poNer5 dvng cung cMp '[[&^* #iPn 1p trong +ho-ng w>wZ g l>WlZ
Righ poNer5 dvng cung cMp tCi #a l[[&^* #iPn 1p Aus t% w>2lZgl>WlZ
Sel; poNer5 thit AB #I0c cMp ngumn t% AEn ngoi
Cc kiu truyn
6\ w +iKu tru!On USB5
Control tran!"r#
tru!On W hIng
hS tr0 ci #Lt* tru!On th3ng tin gia host v ;unction
xm& i giai #o]n5 setup* data* status
:c #ch tru!On th3ng tin +hi thit AB AJt #4u +t nCi vi host
Iochronou tran!"r#
tru!On ' hIng hoLc W hIng
&c #ch tru!On d liPu vi tCc #@ cC #Bnh* Ay ,ua lSi
Z d5 tru!On voice ,ua USB
Int"rrupt tran!"r#
6hz tru!On ' hIng #i vo host
:c #ch tru!On d liPu nhy* +h3ng liEn tc
Z d5 thit AB sG dng interrupt nhI +e!Aoard* &ouse
Bulk tran!"r#
tru!On ' hIng hoLc W hIng
&c #ch tru!On d liPu ln* chnh s1c* +h3ng +hJc +he vO th$i gian
Z d5 scanner* printer* USB dis+
Cc lo$i g%i &' li(u )pack"t*
ZiPc tru!On d liPu c{ng USB lu3n #I0c +hVi #@ng t% host
7 liPu tru!On #i gm& l lo]i g\i (pac+et)5
=o+en pac+et5 A1o &ode tru!On
Start o; qra&e pac+et5 chz thB AJt #4u ' +hung &i
7ata pac+et5 cha d liPu #I0c tru!On #i
Randsha+e pac+et5 dXng #K s1c nhQn d liPu v A1o lSi
Special pac+et5 dXng #K A1o tCc #@ & host &uCn tru!On
TO+,- pack"t
S|<65 A!te #mng A@ tn hiPu cloc+* thI$ng chpn ['h
97 (ac+et identi;ier)5 cho Ait lo]i pac+et
=}~8< pac+et
975 c\ w Ait V vB tr nGa A!te cao* w cvn l]i l AX c.a w Ait 97 dXng #K +iK& tra
^77"5 s1c #Bnh #Ba chz c.a thit AB
8<75 s1c #Bnh +Enh vo c.a thit AB
6"6 (6!clic "edundanc! 6hec+)5 gm& l Ait +iK& tra
.ata pack"t
7^=^5 c\ W lo]i 7^=^[* 7^=^'* c\ thK c\ chiOu di t% [ #n '[Wi A!te
Start o! /ra0" Pack"t
S}q pac+et #I0c tru!On AVi host sau &Si '&s
1an&hak" pack"t
6\ i lo]i Randsha+e pac+et #I0c s1c #Bnh AVi 975
^6~5 s1c nhQn g\i #` nhQn thnh c3ng
<^~5 A1o c1o thit AB +h3ng thK nhQn hoLc gGi g\i d liPu
S=^__5 !Eu c4u s/ can thiPp t% host
Special pac+et
6\ w lo]i Special pac+et #I0c s1c #Bnh AVi 975
"85 !Eu c4u &ode tru!On tCc #@ thMp
8""5 A1o lSi
lit5 chia d liPu tru!On
ing5 dXng #K +iK& tra #I$ng tru!On
Control tran!"r )truyn 2iu khin*
ZiPc tru!On #iOu +hiKn gm& i AIc5
Setup stage
7ata stage
Status stage
Setup stage5 gm& i g\i pac+et
=o+en5 tru!On #Ba chz v end point
7ata5 lu3n tru!On d liPu 7ata[ ci #Lt +ch thIc d liPu
Randsha+e5 #K A1o nhQn thnh c3ng hoLc A1o lSi
7ata stage5 gm& i g\i pac+et
=o+en5 A1o hIng tru!On 9< hoLc }U=
7ata5 c1c A!te d liPu #I0c tru!On
Randsha+e5 s1c nhQn thnh c3ng hoLc A1o lSi tru!On
Status stage5 A1o tr]ng th1i tru!On
c\ W trI$ng h0p s-! ra
9<5 +hi host nhQn d liPu
}U=5 +hi host gGi d liPu
Setup stage
7ata stage
Status stage
Iochronou tran!"r
~hi host tru!On ' g\i 9< to+en* thit AB sk tru!On d liPu ti host
<u host tru!On }U= to+en* thit AB sk chLn data ti host nga! sau #\
~h3ng c\ ,u1 trnh handsha+e trong 9sochronous trans;er
Bulk tran!"r
=ru!On tI?ng t/ nhI 9sochronous trans;er ngo]i tr% c\ thE& chu + Randsha+e sau chu + d liPu #K A-o #-& d liPu
chnh s1c
6\ i tn hiPu AJt ta!
^6~5 nu d liPu nhQn #I0c +h3ng c\ lSi
<^~5 A1o rung thit AB +h3ng thK th/c hiPn #I0c !Eu c4u t% host
S=^__5 A1o rung c\ lSi trEn thit AB v !Eu c4u can thiPp ph4n &O& t% host
Int"rrupt tran!"r
=I?ng t/ nhI viPc tru!On +iKu Bul+ trans;er ngo]i tr% chz c\ 9< to+en
~hi nhQn #I0c 9< to+en* thit AB tru!On d liPu vO host
<u thit AB +h3ng c\ d liPu ngJt tr- vO th A1o <^~
<u thit AB AB tr ho`n hoLc !Eu c4u can thiPp ph4n &O& t% host th A1o S=^__
Cc 345c kt n6i thit 37 8ua c9ng USB
~hi &@t thit AB USB #I0c +t nCi vo Aus* host sk th/c hiPn ' tin trnh #K s1c nhQn v ,u-n l thit AB* tin trnh n! l
#Lc tnh lug and la! c.a USB
=in trnh n! gm& c1c AIc sau5
^ttached5 ~hi c\ +t nCi thit AB ch. sk nhQn Ait nh$ s/ tha! #{i tn hiPu 7d v 7g
oNered5 host gGi lPnh port enaAle and reset* #mng th$i cMp dvng '[[&^ cho thit AB* lYc n! thit AB #I0c +hVi #@ng
7e;ault5 sau +hi reset* thit AB V tr]ng th1i &Lc #Bnh (de;ault) vi #Ba chz [ v endpoint [
^ddress5 host g1n ' #Ba chz cho thit AB #K ,u-n l
6on;igured5 host gGi lPnh x8= 78S6"9=}" #n thit AB #K !Eu c4u #Bnh cMu hnh thit AB* sau #\ host g1n c1c gi1 trB
cMu hnh thit AB ,ua setup pac+et> _Yc n! thit AB #` sn sng #K sG dng
Giao th:c USB
=rong lnh v/c lQp trnh hP thCng nhYng* &@t trong nhng c3ng viPc ,uan trpng nhMt vi chYng ta #\
chnh l lQp trnh ghHp nCi* #iOu +hiKn c1c &odule* c1c thit AB ngo]i vi ghHp nCi vi hP trung tU&> jK c\
thK l& #I0c viPc n!* ngoi c1c + nng lQp trnh chYng ta cvn c4n ph-i thnh th]o vO c1c giao thc
ghHp nCi ph{ Ain nhI "SWiW* S9* 9W6 v #Lc AiPt hiPn na! nhu c4u tMt !u chYng ta ph-i t& hiKu vO
chun USB v #U! c\ thK n\i l &@t trong c1c chun ph{ Ain nhMt hiPn na!> =& hiKu chun USB sk giYp
cho chYng ta c\ +in thc #K c\ thK l& #I0c rMt nhiOu c3ng viPc nhI5
=hit +* ch t]o thit AB ho]t #@ng theo chun USB
Zit driver cho thit AB giao tip theo chun USB
_Qp trnh ghHp nCi vi c1c thit AB l& viPc theo chun USB
=rong ph]& vi Ai vit n!* t1c gi- &uCn gii thiPu vi c1c A]n nhng th3ng tin ,uan trpng nhMt* c4n
thit cho c1c A]n c\ thK nJ& vng vO chun USB #K c\ thK tip tc #\n se& c1c Ai vit hMp dtn tip
theo vO thit k thit 37 th"o chun USB v l;p tr<nh USB .ri="r tr>n ?inu@>
AB Chun tCn hi(u
6hun USB sG dng w #I$ng tn hiPu trong #\ c\ W #I$ng cMp ngumn 76 (ZBUSglZ v x<7)> W #I$ng
cvn l]i l &@t cLp tn hiPu vi sai (7d v 7g) cho phHp tru!On d liPu> 6Lp dU! tn hiPu n! #I0c nCi soJn
V AEn trong nEn c\ +h- nng chCng nhiFu tCt>
?4u D# c{ng USB trEn &1! tnh cho phHp cMp ngumn nu3i ra AEn ngoi vi dvng lEn ti l[[&^> <hI vQ!*
c1c thit AB sG dng t #iPn nng nhI chu@t* th nh USB>>> #Ou c\ thK lM! tr/c tip ngumn t% c{ng USB
c.a &1! tnh & +h3ng c4n dXng thE& ngumn ngoi>
EB FG h<nh 0$ng
61c thit AB ho]t #@ng theo chun USB #I0c +t nCi vi nhau theo #m hnh &]ng hnh sao phUn cMp>
=rung tU& c.a &Si hnh sao n! l c1c RuA> =rong #m hnh nhI vQ!* c1c thit AB USB #I0c chia l& i
lo]i chnh5
USB 1ot# thit AB #\ng vai trv #iOu +hiKn ton A@ &]ng USB (c\ thK lEn ti tCi #a 'W) thit AB)>
Z d nhI trEn &1! tnh* USB Rost #I0c gJn trEn &ainAoard> jK giao tip v #iOu +hiKn c1c USB
device* USB Rost controller c4n #I0c thit + tch h0p vi USB "ootRuA (RuA &c cao nhMt)>
Zai trv c.a thit AB USB Rost5
=rao #{i d liPu vi c1c USB 7evice
jiOu +hiKn USB Bus5
o u-n l c1c thit AB cJ& vo ha! rYt ra +hyi Bus USB ,ua ,u1 trnh #iK& danh (8nu&eration)
o hUn sG* ,u-n l lumng d liPu trEn Bus* #-& A-o c1c thit AB #Ou c\ c? h@i trao #{i d liPu tX!
thu@c vo cMu hnh c.a &Si thit AB>
USB ."=ic"# l c1c thit AB #\ng vai trv nhI c1c slave giao tip vi USB Rost> in lIu &@t
#iOu ht sc ,uan trpng #\ l c1c thit AB n! hon ton #\ng vai trv AB #@ng* +h3ng Aao gi$ #I0c
t/ gGi g\i tin lEn USB Rost ha! gGi g\i tin gia c1c USB 7evice vi nhau* tMt c- #Ou ph-i th3ng
,ua ,u1 trnh #iOu phCi c.a USB Rost> 61c A]n sk hiKu c? ch n! rn h?n trong ph4n tru!On th3ng
c.a chun USB> 6hc nng c.a thit AB USB 7evice5
o =rao #{i d liPu vi USB Rost
o h1t hiPn g\i tin ha! !Eu c4u t% USB Rost theo giao thc USB>
USB 1u3# #\ng vai trv nhI c1c RuA trong &]ng 8thernet c.a chYng ta> 6Mp ngumn cho c1c thit
AB USB
HB +7ch 3In ho$t 2Jng
u1 trnh ho]t #@ng c.a chun USB c\ thK #I0c chia l& hai giai #o]n chnh
Ku tr<nh 2i0 &anh# l ,u1 trnh USB Rost ph1t hiPn c1c thit AB cJ& vo v rYt ra +hyi #I$ng
USB Bus> :Si +hi &@t thit AB tha& gia vo Bus USB* USB Rost sk tin hnh #pc c1c th3ng tin &3
t- (7escription) c.a USB 7evice* t% #\ thit lQp #Ba chz (<ode97) v ch #@ ho]t #@ng tI?ng ng
cho thit AB USB 7evice> 61c #Ba chz sk #I0c #1nh t% 'ge'W) nEn vO l thu!t* chun USB cho phHp
+t nCi 'W) thit AB vo #I$ng Bus> ~hi thit AB rYt ra +hyi #I$ng Bus* #Ba chz n! sk #I0c thu hmi>
Ku tr<nh truyn &' li(u# #K hiKu ,u1 trnh tru!On d liPu n!* chYng ta ph-i hiKu #I0c hai +h1i
niP& c\ thK n\i l +h\ v ,uan trpng nhMt trong chun USB* #\ l +h1i niP& Int"r!ac" v ,n&point
(in lIu l chz thit AB USB device &i c\ 8ndpoint* USB Rost +h3ng c\ 8ndpoint)> :@t thit AB
USB sk c\ thK c\ nhiOu 9nter;ace* &@t 9nter;ace c\ thK sG dng nhiOu 8ndpoint> =3i sin lM! &@t v d
sau #K c1c A]n thM!5
=h nh USB chz sG dng ' 9nter;ace theo chun USB :ass storage* inter;ace n! sG dng i
8ndpoint>
B@ USB ix sG dng c1c 9nter;ace +h1c nhau nhI5 67 "oo&* :ass storage v 6o&&unication* &Si
inter;ace l]i sG dng nhiOu 8ndpoint +h1c nhau>
<hI vQ!* #ng V g\c #@ &c hP thCng* c1c 9nter;ace chnh l c1c dBch v +h1c nhau & thit AB #\ cung
cMp cvn c1c 8ndpoint chnh l c1c c{ng c4n thit cho &Si dBch v> =I?ng ng vi +h1i niP& trong +in
trYc =6r9* v d giao thc q= l giao thc sG dng #K tru!On ;ile sk sG dng hai c{ng W[*W'> =rong +hi
#\ giao thc R== l]i sG dng port f[* giao thc =elnet sG dng port Wi>
=h/c t c1c 8ndpoint cong nhI c1c ort trong chun =6r9 #\ng vai trv nhI c1c A@ #P& tru!OnrnhQn d
liPu> <h$ viPc sG dng nhiOu A@ #P& & c1c ,u1 trnh tru!On th3ng #I0c tin hnh song song v cho tCc
#@ cao h?n* AEn c]nh #\ giYp cho viPc phUn t1ch c1c dBch v +h1c nhau> Zi chun USB* c1c thit AB
#I0c thit + vi tCi #a l ') 8nppoint> 61c 8ndpoint #I0c phUn lo]i theo hIng tru!On d liPu nhn t%
pha USB Rost> 6 thK
61c 8ndpoint tru!On d liPu t% USB 7evice ti USB Rost l endpoint 9<
61c 8ndoint tru!On d liPu t% USB Rost ti USB 7evice l endpoint }U=
Rnh AEn tr1i l +t ,u- chYng ta se& c1c th3ng tin cMu hnh c.a &@t thit AB USB ho]t #@ng vi '
9nter;ace* 9nter;ace n! sG dng hai 8ndpoint ([s[' v [sfW)* ' 8ndpoint 9n v &@t 8ndpoint }ut* c- hai
8ndpoint ho]t #@ng V ch #@ Bul+ =rans;er (6hi tit chYng ta sk se& V ph4n ch #@ tru!On nga! sau #U!)>
=rEn _inus* c1c A]n c\ thK dXng lPnh lsusA #K se& c1c th3ng tin n! vi AMt c thit AB USB no cJ& vo
Bus>
jO tru!On #I0c d liPu theo chun USB* c1c thit AB USB 7evice ph-i #I0c +t nCi vi USB Rost th3ng
,ua c1c ipe (#I$ng Cng)> :Si ipe sk nCi &@t 8ndpoint c.a USB 7evice vi USB Rost>
LB Ch 2J truyn
6hun USB cung cMp cho chYng ta t{ng c@ng l w ch #@ tru!On* #1p ng nhiOu &c #ch +h1c nhau tX!
thu@c vo c? ch tru!On cong nhI tCc #@ & ngI$i thit + &ong &uCn>
Truyn 2iu khin )Control tran!"r*# l ch #@ tru!On #I0c tMt c- c1c thit AB USB hS tr0 #K
tru!On c1c th3ng tin #iOu +hiKn vi tCc #@ tI?ng #Ci chQ&>
Truyn ngMt )Int"rrupt tran!"r*# sG dng cho c1c thit AB c4n tru!On &@t lI0ng d liPu nhy*
tu4n hon theo th$i gian v d nhI chu@t* An ph&> ~hi #\* v d c '[s &@t l4n USB Rost sk
gGi re,uest suCng v USB 7evice sk tr- d liPu vO cho USB Rost (vi trI$ng h0p 9nterrupt 9n
8ndpoint)>
Truyn th"o kh6i )Bulk tran!"r*# sG dng cho c1c thit AB c4n tru!On &@t lI0ng d liPu ln*
!Eu c4u #@ chnh s1c tu!Pt #Ci* +h3ng c\ rng Au@c ,u1 chLt chk vO th$i gian th/c v d nhI th
nh USB* &1! in> 61i n! tI?ng t/ nhI giao thc =6 trong &]ng 8thernet
Truyn 2Nng thOi )Iochrono tran!"r*# sG dng cho c1c thit AB c4n tru!On &@t lI0ng d liPu
ln vi tCc #@ rMt nhanh* #-& A-o rng Au@c vO th$i gian th/c tu! nhiEn chMp nhQn h! sinh #@
chnh s1c V &@t &c nhMt #Bnh nhI c1c thit AB nghe nh]c* se& phi& +t nCi theo chun USB>
6hun n! tI?ng t/ giao thc U7 trong &]ng 8thernet>
=rEn #U! l Ai gii thiPu vO chun USB> =h/c s/ #K dXng chun USB th +h3ng ,u1 +h\ nhIng #K hiKu
cLn +k chun USB th th/c s/ chYng ta c4n #4u tI nhiOu th$i gian v c3ng sc> R! vpng Ai vit ngJn n!
sk giYp c1c A]n trong ,u1 trnh hpc tQp v l& viPc> 6hi tit c1c A]n c\ thK tha& +h-o s1ch USB
6o&plete tu! nhiEn theo +inh nghiP& c1 nhUn t1c gi-* c1c A]n nEn +t h0p gia #pc s1ch v t/ &nh lQp
trnh cho c1c thit AB chun USB* +hi #\ c1c A]n &i nJ& vng #I0c> =X! vo chu!En &3n c.a c1c A]n*
c\ rMt nhiOu Ai to1n c\ thK giYp c1c A]n nJ& vng h?n vO chun USB* t1c gi- sin #Ia ra &@t sC v d #K
c1c A]n tha& +h-o theo c1c &c #@ t% dF ti +h\>
'> _Qp trnh giao tip vi &@t thit AB USB vi &1! tnh5 USB o!stic+
W> =]o ra &@t thit AB l& viPc theo chun USB5 c\ thK sG dng c1c 96 trEn thB trI$ng nhI 96wll[*
^=('S^:Wl)>>>
i> _Qp trnh giao tip vi c1c thit AB USB chu!En dng sG dng thI viPn inUSB c.a :icroso;t
w> =]o driver cho chun USB trEn _inus* lQp trnh +t nCi vi thit AB>
USB v giao thc tru!On tin
=rIc #U!* #K th/c hiPn giao tip gia &1! tnh v c1c thit AB ngo]i vi chYng ta thI$ng tin hnh th3ng
,ua c{ng song song (_=)* hoLc c{ng nCi tip ("SWiW* 6}:)> =u! nhiEn do h]n ch vO tCc #@ v rI$&
r trong c1ch AC tr (+ch thIc c{ng +h1 ln)* +h- nng &V r@ng +H& (&Si &1! tnh chz c\ &@t c{ng
_= v nhiOu nhMt l w c{ng 6}:) nEn trong c1c &1! tnh #$i &i #Lc AiPt l trong &1! tnh s1ch ta!*
ngI$i ta c\ su hIng tha! d4n c1c c{ng giao tip tru!On thCng trEn Aung c{ng USB> 61c thit AB ngo]i vi
#$i &i hiPn na! cong c\ su hIng l& theo theo chun giao tip &i n! tha! th d4n c1c chun giao
tip tru!On thCng>
Rnh wg'5USB _ogo
=rong c1c thit AB #o lI$ng tin hpc tru!On thCng c\ th/c hiPn +t nCi vi &1! tnh ch. !u vtn th/c hiPn
,ua giao tip "SWiW> Z th/c t trong phiEn A-n trIc c.a ph4n &O& x:9 n!* #` tin hnh giao tip vi
&1! tnh th3ng ,ua c{ng nCi tip WiW> =u! nhiEn vi nhiOu thit AB #vi hyi ph-i c\ nhiOu &1! tnh hoLc
&@t &1! tnh nhIng ph-i c\ c1c thit AB chu!Kn #{i t% c1c chun giao tip +h1c sang chun "SWiW (nhI
usA to WiW* 69 to WiW*D) gU! tCn +H&> Zi viPc ng dng USB vo thit AB #o lI$ng l4n n! e& &ong
&uCn chun n! sk tip tc ng dng cho c1c thit AB #o lI$ng tin hpc sau n!* #iOu n! cong l su th
tMt !u c.a c1c thit AB ngo]i vi hiPn #]i>
Universal Serial Bus (USB) l giao tip c\ tCc #@ cao v thuQn tiPn cho viPc ghHp nCi c1c ngo]i vi vi
&1! tnh> chI?ng n! e& sk gii thiPu c1c +h1i niP& chung nhMt vO USB v lp giao diPn ngI$i dXng
Ru&an 9nter;ace 7evice l lp thit AB & e& sG dng cho hP thCng>
+hi ni(0 = USB
USB (Universal Serial Bus) l Aus nCi tip #a nng cho phHp c1c thit AB #4u cuCi giao tip vi &1! tnh
ch. (Rost 6o&puter)>
Cc 0Pc ti>u h45ng t5i khi Q &Png USB
7F dng &V r@ng c1c thit AB #4u cuCi c.a 6>
6ung cMp gi-i ph1p chi ph thMp song vtn hS tr0 tru!On dtn vi tCc #@ lEn #n wf[:Ars>
RS tr0 ng dng th$i gian th/c nhI voice* audio* video*>>>
xiao thc linh ho]t cho c1c ch #@ hSn h0p5 isochronous data trans;ers v as!nchronous &essaging>
=ch h0p c3ng nghP thit AB tiPn nghi>
jI0c indoNs v c1c hP #iOu hnh +h1c hS tr0 do #\ c\ thK +h3ng c4n driver &c thMp cho c1c
thit AB USB>
ja nng do #\ nhiOu thit AB c\ thK ghHp nCi vi 6 th3ng ,ua chun USB>
j@ tin cQ! cao>
FG tI h( th6ng USB
:@t hP thCng USB #I0c &3 t- AVi Aa #Bnh ngha5 ~t nCi USB* c1c thit AB USB v USB host>
~t nCi USB #I0c hiKu l +iKu +t nCi & trong #\ c1c thit AB USB #I0c +t nCi v giao tip vi &1!
tnh ch.> ~t nCi USB Aao gm& c1c vMn #O sau5
~in trYc Bus5 :3 hnh +t nCi gia c1c thit AB USB v Rost>
<hng &Ci ,uan hP 9ntergla!er 5 7Ii d]ng &@t tQp +h- nng* c1c t1c v USB #I0c th/c hiPn t]i
&Si lp trong hP thCng>
61c &3 hnh lumng d liPu5 _ hnh thc & trong #\ d liPu di chu!Kn trong hP thCng ,ua USB>
_Qp trnh USB5 USB cung cMp &@t s/ +t nCi dXng chung> ZiPc tru! cQp ti +t nCi #I0c lQp trnh theo
th t/ #K hS tr0 tru!On d liPu #ng th$i v +hG s/ phUn sG Aan #4u>
+in trRc Bu
Bus tu4n t/ #a nng nCi c1c thit AB USB vi Rost USB> ZO &Lt +t nCi vQt l USB l &@t +in trYc t4ng
sao> :@t RuA V t]i trung tU& c.a &Si sao* &Si #o]n dU! l &@t +t nCi t% #iK& ti #iK& gia Rost v
&@t RuA hoLc &@t chc nng no #\* hoLc &@t RuA nCi ti RuA +h1c hoLc chc nng +h1c> Zi 2Ait #Ba
chz* ngoi &1! ch. USB ra n\ c\ thK ,u-n l tCi #a 'W2 thit AB ngo]i vi> Rnh w>' sk &inh ho] +in trYc
c.a USB>
Rnh wgW5 :3 hnh Aus USB
Fy chS USB )USB 1ot*
6hz c\ du! nhMt &@t Rost trong &@t hP thCng USB AMt +> xiao diPn USB ti hP thCng &1! ch. #I0c
se& nhI A@ #iOu +hiKn Rost> B@ #iOu +hiKn Rost c\ thK #I0c th/c hiPn trong &@t +t h0p gm& ph4n
cng* chI?ng trnh cho vi #iOu +hiKn (;ir&Nare) hoLc ph4n &O&> :@t RuA gCc (root huA) #I0c tch h0p
chz trong hP thCng Rost #K cung cMp &@t hoLc nhiOu #iK& lJp thE&>
Cc thit 37 USB
=hit AB USB c\ thK l &@t trong c1c thit AB sau5
RuA5 cung cMp #iK& lJp thE& vo USB>
61c chc nng5 6ung cMp c1c +h- nng cho hP thCng nhI &@t +t nCi 9S7<* digital o!stic+* hoLc
spea+ers>
=hit AB hiKu #I0c giao thc USB
Cp USB
USB tru!On tn hiPu v ngumn ,ua &@t c1p w s0i hnh w>W5
oZAus5 jiPn 1p cung cMp cho thit AB>
o=n hiPu 7d>
o=n hiPu 7g>
o7U! #Mt x<7>
6\ i tCc #@ tru!On d liPu5
oUSB tCc #@ cao (USB highgspeed)5 wf[:Ars>
oUSB ton tCc (USB ;ullgspeed)5 'W:Ars>
oUSB tCc #@ thMp (USB loNgspeed)5 '>W:Ars>
Rnh wgi5 6aAle USB
61p USB Aao gm& w dU!* 7d v 7g #I0c dXng #K tru!On tn hiPu* ZAus v x<7 #K cMp ngumn cho thit
AB (=hI$ng th ZAus lZ cvn x<7[Z t]i ngumn)> USB cho phHp chiOu di c1c #o]n c1p c\ thK tha! #{i
lEn ti vi &Ht>
pha &1! ch. Rost th 7d v 7g #I0c nCi #Mt ,ua c1c #iPn trV "pd cvn vO pha thit AB ngo]i vi* c1c
#4u dU! 7d* 7g #I0c A-o vP AVi #iPn trV cuCi (#\ chnh l c1c #iPn trV "pu> =hit AB tCc #@ cao hoLc ton
tCc c4n c\ #iPn trV nCi di>i Z cho #4u 7d* thit AB tCc #@ thMp c4n c\ #iPn trV nCi lEn i>i Z cho #4u 7g>
<hng #iPn trV n! t]o nEn c1c &c #iPn th +h1c nhau gia 7d v 7g giYp cho &1! ch. ph1t hiPn #I0c
viPc cJ& vo ha! rYt ra c.a thit AB cong nhI tCc #@ tru!On d liPu c.a thit AB>
Cc l5p thit 37 USB
Cc thTnh phUn cSa 0Jt 2Vc tI l5p thit 37
:@t #Lc t- lp thit AB #Bnh ngha sC lI0ng v lo]i c1c #iK& cuCi AJt Au@c cong nhI tu chpn & c1c thit
AB trong lp #\ c\ thK c\> :@t #Lc t- lp cong c\ thK #Bnh ngha hoLc #Lt tEn c1c #Bnh d]ng d liPu #I0c
tru!On trEn Aus> :@t vi #Lc t- lp #Bnh ngha c1c ng dng c.a d liPu #ang #I0c tru!On* #iOu n! cho
phHp Rost Ait c1ch sG dng d liPu & n\ nhQn #I0c> :@t vi lp thit AB sG dng USB #K tru!On d
liPu trong &@t #Bnh d]ng #I0c #Bnh ngha AVi &@t giao diPn +h1c (v d c1c lPnh c.a giao diPn S6S9
#I0c sG dng AVi c1c thit AB lIu tr th cMp g&assgstorage device)> :@t #Lc t- lp cong c\ thK #Bnh
ngha c1c gi1 trB cho c1c &c trong c1c A@ &3 t- chun>
Cc l5p thit 37 24Wc 27nh nghXa
61c lp thit AB #I0c #Bnh ngha cho giao tip USB5
=hit AB U& thanh (^udio)5 _p thit AB U& thanh chnh l lp c1c thit AB gGi v nhQn d liPu U&
thanh> 7 liPu U& thanh c\ thK l ting n\i #I0c &` ho1* nh]c ha! AMt + &@t lo]i U& thanh no
+h1c> 61c thit AB thu@c lp thit AB U& thanh c\ thK sG dng +iKu tru!On #ng th$i cho lumng U&
thanh hoLc +iKu tru!On +hCi cho d liPu #` #I0c &` ho1 Aung giao thc :979 (:usical 9nstru&ent
7igital 9nter;ace)
=hit AB giao diPn th th3ng &inh5 =h th3ng &inh l c1c lo]i th ,uen thu@c #I0c sG dng cho viPc
gpi #iPn tho]i* th ra vo* tr- cIc c4u #I$ng* A-o hiK& ! t* gi-i &` cho c1c A@ thu tru!On hnh vP
tinh v nhiOu c1c ng dng +h1c* nhng ng dng n! !Eu c4u &@t +hCi lI0ng th3ng tin nhy hoLc
trung Anh vi s/ tru! cQp d liPu lIu trong th &@t c1ch dF dng> :Si th l &@t &odule Aao gm& A@
nh v thI$ng thE& &@t 6U> <hiOu th cho phHp cQp nhQt n@i dung c.a chYng #K tha! #{i &@t sC
th3ng tin v d nhI gi1 trB tiOn trong th tn dng ha! &` c.a th> jK tru! cQp &@t th th3ng &inh*
A]n +t nCi n\ vi thit AB giao diPn th th3ng &inh (6697g6hip 6ard 9nter;ace 7evice) thI$ng Aung
c1ch nhHt th vo +he #pc hoLc soi n\ trIc c1c A@ #pc #Ci vi lo]i th +h3ng c4n tip sYc> USB #Bnh
ngha lp thit AB giao diPn th th3ng &inh v c\ &@t sC thit AB giao diPn th th3ng &inh (6697) sG
dng giao diPn USB #K giao tip vi &1! tnh>
_p c1c thit AB tru!On th3ng5 _p c1c thit AB tru!On th3ng Aao gm& hai lo]i thit AB chnh l5 thit
AB tho]i v c1c thit AB &]ng tCc #@ trung Anh> =hit AB tho]i Aao gm& #iPn tho]i tI?ng t/* &ode&
tI?ng t/* 61c A@ thch nghi #4u cuCi 9S7< v #iPn tho]i sC> 61c thit AB &]ng Aao gm& &ode&
^7S_* &ode& #iPn tn* '[B^S8g= 8thernet adapter v huA
_p thit AB A-o &Qt5 _p thit AB A-o &Qt #Bnh ngha c1ch thc giYp ta #iOu +hiKn s/ tru! cQp ti
c1c ;ile* U& nh]c* hnh -nh hoLc c1c d liPu +h1c #I0c tru!On trEn Aus (v d &uCn cop! &@t ;ile no
#\ lEn thit AB hoLc #pc n@i dung #I0c lIu trong thit AB th ph-i c\ passNord)>
_p thit AB cho phHp cQp nhQt ;ir&Nare t% Rost5 _p thit AB cQp nhQt ;ir&Nare #Bnh ngha &@t
giao thc cho phHp &1! ch. gGi ;ir&Nare tng cI$ng hoLc sGa lSi cho &@t thit AB> Sau +hi nhQn s/
nUng cMp ;ir&Nare th thit AB sk #I0c thit lQp l]i #K sG dng ;ir&Nare &i c.a n\> _p thit AB n!
#I0c Ait #n +hi chYng ta sG dng chc nng Aootloader cho vi #iOu +hiKn>
_p thit AB giao diPn ngI$i sG dng Aao gm& c1c lo]i An ph&* thit AB con try v c1c A@ #iOu
+hiKn dXng #K ch?i ga&e> jCi vi nhng thit AB n!* &1! ch. #pc th3ng A1o t% thit AB v g4n nhI
lQp tc th/c hiPn theo c1c !Eu c4u c.a ngI$i sG dng (c1c !Eu c4u n! &ang tnh giao tip tr/c tip
gia ngI$i sG dng v &1!) nhI s/ Mn ph&* s/ di chu!Kn c.a con chu@t> :1! ch. ph-i #1p ng #.
nhanh sao cho ngI$i sG dng +h3ng nhQn thM! #@ trF rMt nhy gia !Eu c4u c.a hp v c1c #1p ng c.a
&1!>
64u liEn +t d liPu hmng ngo]i (9n;rared 7ata ^ssociation Bridge)5 _p thit AB c4u liEn +t d liPu
hmng ngo]i #Bnh ngha nhng !Eu c4u vO ph4n cng v c1c giao thc cho phHp viPc tru!On t-i d liPu
V +ho-ng c1ch ngJn th3ng ,ua nng lI0ng hmng ngo]i> =hit AB c4u liEn +t d liPu hmng ngo]i sk
#I0c nCi vi &1! ch. ,ua c{ng USB cho phHp &1! ch. sG dng giao diPn USB #K gi1& s1t* #iOu
+hiKn v tru!On d liPu ,ua &@t giao diPn hmng ngo]i>
_p thit AB lIu tr th cMp5 _p thit AB lIu tr th cMp chnh l c1c thit AB c\ thK tru!On d liPu
theo c- hai hIng (t% &1! ch. ti thit AB hoLc t% thit AB vO &1! ch.)> jiKn hnh cho lp thit AB n!
c\ thK +K #n c1c { #a &O&* { #a cng* { 67* { 7Z7 v { nh ;lash> 61c lo]i ca&era cong c\ thK
sG dng lp lIu tr th cMp cho phHp viPc tru! cQp c1c ;ile hnh -nh trong A@ nh c.a ca&era> =rong
c1c &1! tnh sG dng hP #iOu hnh indoNs* c1c thit AB thu@c lp lIu tr th cMp sk suMt hiPn nhI
c1c { #a trong cGa s{ :! 6o&puter v hP #iOu hnh cho phHp ngI$i sG dng sao chHp* di chu!Kn v
so1 c1c d liPu trong c1c thit AB #\>
_p c1c thit AB in Mn5 _p c1c thit AB in Mn #I0c #Bnh ngha cho c1c thit AB chu!Kn d liPu nhQn
#I0c t% &1! ch. thnh #Bnh d]ng ch ha! hnh -nh trEn giM! ha! vQt liPu no #\>
_p thit AB lIu gi -nh tnh5 _p thit AB n! Aao gm& c1c lo]i &1! -nh v &1! ,uHt> 63ng viPc
ch. !u c.a lp thit AB n! l tru!On d liPu hnh -nh t% thit AB lEn &1! tnh ch.> <goi ra &@t vi
thit AB cvn c\ thK nhQn d liPu t% &1! tnh> <u tMt c- nhng g ta c4n l tru!On c1c ;ile hnh -nh t%
&@t &1! -nh lEn &1! tnh ch. th ta c\ thK #Ia &@t &1! -nh vo lp thit AB lIu tr th cMp>
_p c1c thit AB #o lI$ng v +iK& tra5 _p c1c thit AB #o lI$ng v +iK& tra l #K dnh cho c1c thit
AB #o #]c nhI c1c A@ ^76* 7^6* c-& Ain v c1c A@ chu!Kn #{i (chu!Kn #{i #?n vB vQt l chng
h]n)> 61c thit AB n! c\ thK l &@t +hCi riEng rk hoLc l &@t c]c trong &@t &1! tnh ln>
_p c1c thit AB -nh #@ng5 _p c1c thit AB -nh #@ng hS tr0 c1c thit AB ghi hnh sC s1ch ta!*
NeAca&* v &@t sC thit AB c\ chc nng gGi* nhQn ha! can chznh -nh #@ng> _p thit AB n! cong hS
tr0 viPc tru!On c1c -nh tnh t% c1c thit AB -nh #@ng>
=h/c hiPn c1c chc nng +h3ng tiEu chun5 :@t vi thit AB +h3ng c\ s/ phX h0p rn rPt vi &@t lp
thit AB #I0c #Bnh ngha> Z d nhI c1c thit AB #iOu +hiKn #@ng c?* r? le* ha! c1c c? cMu chMp hnh
+h1c> :@t v d +h1c l c1c thit AB +t nCi gia hai &1! vi tnh (64u sG dng USB)> <u &@t thit AB
#4u cuCi & +h3ng phX h0p #K g1n vo &@t lp #I0c #Bnh ngha th ngI$i thit + sk ph-i vit driver
cho thit AB #K cung cMp cho &1! ch. c1c th3ng tin giYp n\ giao tip #I0c vi thit AB #\>
?5p thit 37 giao &i(n ng4Oi Q &Png )1I.Y1u0an Int"r!ac" ."=ic"*
_p thit AB giao diPn ngI$i sG dng l &@t trong nhng lp #4u tiEn #I0c hP #iOu hnh NindoNs hS tr0>
=rEn nhng chic &1! tnh c1 nhUn sG dng indoNs (f hoLc c1c phiEn A-n &u@n h?n th nhng ng
dng c\ thK giao tip vi c1c thit AB giao diPn ngI$i sG dng Aung c1ch sG dng c1c A@ #iOu +hiKn
(driver) #I0c sU! d/ng sn trong hP #iOu hnh> 6ong chnh v l do trEn & nhiOu nh cung cMp thit AB
#4u cuCi USB sG dng lp thit AB giao diPn ngI$i sG dng cho s-n ph& c.a hp> 6hI?ng n! sk trnh
A! vO lp R97 vi &c #ch giYp ngI$i #pc nhQn #Bnh se& &@t thit AB no #\ c\ phX h0p #K g1n vo
lp R97 ha! +h3ng> 6hz ra c1c !Eu c4u #Ci vi vi chI?ng trnh (;ir&Nare) #K #Bnh ngha &@t thit AB
thu@c lp R97 v cho phHp n\ trao #{i d liPu vi &1! tnh ch.>
+hi ni(0 = 1I.
=% giao diPn ngI$i sG dng trong tEn gpi c.a lp R97 #K chz ra s/ tI?ng t1c tr/c tip gia con ngI$i
vi thit AB thu@c lp n!> Z d &@t con chu@t c\ thK ph1t hiPn viPc chYng ta di chu!Kn ha! nhMn chu@t
#K gGi th3ng tin lEn &1! ch. v &1! ch. sG dng th3ng tin n! #K #e& l]i c1c #1p ng & ngI$i sG dng
#ang &ong #0i trong &@t ng dng c thK no #\> BEn c]nh c1c thit AB ph{ Ain c.a lp R97 nhI An
ph&* con chu@t* c4n #iOu +hiKn (o!stic+) th lp R97 cvn Aao gm& &@t sC thit AB +h1c nhI c1c nY&
#iOu chznh* c1c chu!Kn &]ch* nYt nhMn* thanh trI0t* #iOu +hiKn t% sa* An ph& #iPn tho]i* c1c thit AB
#iOu +hiKn dXng cho ga&e nhI Aao ta!* A1nh l1i>
=u! nhiEn &@t thit AB thu@c lp R97 +h3ng nhMt thit ph-i c\ &@t giao diPn ngI$i sG dng> :@t thit AB
c\ thK g1n vo lp R97 +hi c1c chc nng c.a n\ nu& gpn trong c1c gii h]n c.a #Lc t- lp R97> 7Ii
#U! l c1c gii h]n v +h- nng ch. c.a c1c thit AB thu@c lp R975
=Mt c- d liPu #I0c trao #{i dIi cXng &@t d]ng cMu trYc #I0c gpi l A1o c1o (report)> :1! ch. gGi
v nhQn d liPu Aung c1ch gGi c1c A1o c1o v !Eu c4u c1c A1o c1o trong c1c phI?ng thc tru!On #iOu
+hiKn hoLc tru!On ngJt> jBnh d]ng A1o c1o l +h1 linh ho]t v n\ c\ thK 1p dng cho rMt nhiOu d]ng
c.a d liPu song #Ci vi &Si &@t A1o c1o #` #I0c #Bnh ngha th +ch c c.a n\ l s1c #Bnh>
:@t giao diPn R97 ph-i c\ &@t #iK& cuCi ngJt vo (interrupt 9< enpoint) #K gGi d liPu lEn &1!
ch.>
:@t giao diPn R97 c\ thK c\ tCi #a &@t #iK& cuCi ngJt vo v &@t #iK& cuCi ngJt ra (interrupt
}U= enpoint)> <u ta c4n nhiOu #iK& cuCi ngJt h?n na th ta c\ thK t]o &@t thit AB #a chc nng
gm& nhiOu thit AB R97 V trong n\> :@t ng dng ph-i #-& A-o s/ #iOu +hiKn riEng AiPt ti t%ng R97
trong thit AB #a chc nng>
jiK& cuCi ngJt vo cho phHp R97 gGi th3ng tin lEn &1! ch. V nhng th$i #iK& & +h3ng hO Ait
trIc> Z d +h3ng thK c\ c1ch no giYp &1! tnh Ait trIc +hi no ngI$i sG dng Mn &@t ph& no
#\ trEn An ph& do #\ A@ #iOu +hiKn &1! ch. sG dng giao t1c ngJt #K th& dv c\ #Bnh + nhu& thu
lI0& d liPu &i>
=Cc #@ trao #{i d liPu l h]n ch* #Lc AiPt l +hi tru!On V tCc #@ thMp hoLc ton tCc> jiK& cuCi
ngJt tCc #@ thMp +h3ng thK vI0t ,u1 f[[ A!tesrsec* vi c1c #iK& cuCi ton tCc th tCc #@ tCi #a l )w
~Brs cvn #iK& cuCi ngJt tCc #@ cao th tCc #@ tCi #a vo +ho-ng Ww :Brs >
Zi A-n indoNs (f xold th n\ chz hS tr0 USB '>[ tc l +h3ng hS tr0 #iK& cuCi ngJt ra do #\ tMt
c- d liPu tru!On t% &1! ch. suCng thit AB ph-i sG dng tru!On #iOu +hiKn>
_Iu l giao diPn R97 c\ thK chz l &@t trong nhiOu +iKu giao diPn #I0c hS tr0 AVi &@t thit AB> Z
d &@t loa USB c\ thK sG dng phI?ng thc tru!On #ng th$i cho U& thanh #mng th$i cong c\ thK c\
&@t giao diPn R97 cho viPc #iOu +hiKn #@ to nhy* cUn Aung* treAle v Aass c\ ngha l vi cXng &@t
giao tip USB trEn &@t thit AB nhIng ta c\ thK sG dng hai lp giao tip +h1c nhau>
Cc y>u cUu = phUn c:ng
61c #iK& cuCi
=Mt c- c1c +iKu tru!On c.a R97 sG dng hoLc #iK& cuCi #iOu +hiKn hoLc #iK& cuCi ngJt> =Mt c- c1c R97
ph-i c\ &@t #iK& cuCi ngJt vo #K gGi d liPu ti &1! ch.> :@t #iK& cuCi ngJt ra l tu chpn>
61c lo]i A1o c1o ("eport)
|Eu c4u #Ci vi &@t #iK& cuCi ngJt vo cho thM! &pi R97 ph-i c\ tCi thiKu l &@t report #4u vo #I0c
#Bnh ngha trong A@ &3 t- report c.a R97> 61c report #4u ra v report #Lc AiPt l tu chpn>
61c !Eu c4u c\ thK gGi t% Rost ti thit AB trong +iKu tru!On #iOu +hiKn
jLc t- R97 #Bnh ngha ) !Eu c4u c thK & Rost c\ thK gGi ti thit AB> Rai trong sC #\ l Set"eport v
xet"eport* #e& l]i c1ch #K Rost v thit AB trao #{i report th3ng ,ua +iKu tru!On #iOu +hiKn> Rost sG
dng Set"eport #K gGi report v xet"eport #K nhQn th3ng A1o> BCn !Eu c4u cvn l]i liEn ,uan ti viPc
cMu hnh thit AB> 61c !Eu c4u Set9dle v xet9dle dXng #K thit lQp v #pc tCc #@ rSi* c1i cho Ait c\ ha!
+h3ng viPc &@t thit AB gGi l]i d liPu +h3ng hO tha! #{i +K t% l4n th& dv cuCi> 61c !Eu c4u
Setrotocol v xetrotocol thit lQp v #pc gi1 trB giao thc> xi1 trB giao thc sk cho Ait &@t thit AB
c\ thK #I0c sG dng ha! +h3ng nga! c- +hi A@ #iOu +hiKn #4! #. c.a n\ chIa #I0c t-i trEn Rost (v d
con chu@t v An ph& c\ thK th/c hiPn chc nng c.a n\ nga! trong giai #o]n +hVi #@ng g +hi & A@
#iOu +hiKn chnh thc c.a n\ chIa #I0c t-i V trEn Rost)> 61c lo]i !Eu c4u v%a nEu sk #I0c trnh A! chi
tit h?n V #o]n sau>
~iKu tru!On ngJt
61c #iK& cuCi ngJt #e& l]i s/ luUn phiEn trong viPc trao #{i d liPu* #Lc AiPt +hi pha thu ph-i c\ #I0c
d liPu &@t c1ch nhanh ch\ng hoLc #Bnh +> =ru!On #iOu +hiKn c\ thK AB trF nu Aus ,u1 AQn trong +hi
Ang th3ng cho tru!On ngJt l]i #I0c #-& A-o>
~h- nng th/c hiPn tru!On ngJt ra (}U=) #I0c A{ sung V phiEn A-n '>' c.a chun USB> indoNs (f S8
l phiEn A-n indoNs #4u tiEn hS tr0 USB '>' v R97 '>'>
Cc y>u cUu = =i ch4Zng tr<nh )/ir0[ar"*
Zi chI?ng trnh ph-i phX h0p vi c1c !Eu c4u c.a lp thit AB> 61c A@ &3 t- c.a thit AB ph-i Aao gm&
&@t A@ &3 t- giao diPn #K #Bnh ngha thit AB thu@c lp R97* &@t A@ &3 t- R97 v &@t A@ &3 t- #iK&
cuCi ngJt vo (9<)> B@ &3 t- #iK& cuCi ngJt ra (}U=) l tu chpn> Zi chI?ng trnh cong ph-i cha &@t
A@ &3 t- report>
:@t R97 c\ thK hS tr0 &@t ha! nhiOu report> B@ &3 t- report chz ra +ch thIc v n@i dung c.a d liPu
cha trong report cong nhI c1ch & pha thu sk sG dng d liPu nhQn #I0c> 61c gi1 trB trong A@ &3 t- sk
chz ra &Si report l &@t report #4u vo* #4u ra ha! l &@t report #Lc AiPt> :1! ch. nhQn d liPu cha
trong report #4u vo v gGi d liPu cha trong report #4u ra> :@t report #Lc AiPt c\ thK #I0c tru!On theo
c- hai hIng> :pi thit AB ph-i hS tr0 tCi thiKu &@t report #4u vo #K &1! ch. c\ thK thu nhQn d liPu
th3ng ,ua tru!On ngJt hoLc tru!On #iOu +hiKn> 61c report #4u ra l tu chpn> jK tI?ng thch vi indoNs
(f xold th c1c thit AB sG dng c1c report #4u ra nEn hS tr0 viPc gGi report th3ng ,ua tru!On #iOu +hiKn>
SG dng tru!On ngJt cho c1c th3ng A1o #4u ra l tu chpn> 6vn c1c th3ng A1o #Lc AiPt cong l tu chpn
v nu #I0c sG dng th n\ lu3n #I0c tru!On th3ng ,ua tru!On #iOu +hiKn>
Cch th:c 2 ch\ ra 0Jt thit 37 thuJc l5p 1I.
Zi AMt + thit AB USB no thu@c lp R97 th c1c A@ &3 t- c.a n\ chz cho &1! ch. th3ng tin &1! ch.
c4n Ait #K giao tip vi thit AB> :1! ch. t& hiKu vO giao diPn R97 trong suCt ,u1 trnh thit lQp Aung
c1ch gGi &@t !Eu c4u xet7escriptor> 61c A@ &3 t- c.a &@t thit AB thu@c lp R97 Aao gm&5 B@ &3 t-
thit AB (7evice 7escriptor)* A@ &3 t- cMu hnh (6on;iguration 7escriptor)* A@ &3 t- giao diPn (9nter;ace
7escriptor)* A@ &3 t- R97 (R97 7escriptor)* A@ &3 t- #iK& cuCi ngJt vo (9< interrupt 8npoint
7escriptor)* A@ &3 t- #iK& cuCi ngJt ra (}U= 9nterrupt 8ndpoint 7escriptor) v A@ &3 t- #iK& cuCi ngJt
#Lc AiPt (qeature 9nterrupt 8ndpoint 7escriptor)> Rai A@ &3 t- sau cXng l tu chpn (tc c\ thK c\ hoLc
+h3ng)> <goi c1c A@ &3 t- v%a liPt +E V trEn thit AB thu@c lp R97 cvn ph-i c\ &@t A@ &3 t- na #\ l
A@ &3 t- "eport (A@ &3 t- "eport sk #I0c n\i c thK sau)>
BJ 0G tI 3o co )]"port ."criptor*
:@t A@ &3 t- th3ng A1o #Bnh ngha +hu3n d]ng v c3ng dng c.a d liPu cha trong c1c report> Z d
nu thit AB l &@t con chu@t th d liPu trong report sk th3ng A1o cho &1! ch. Ait s/ di chu!Kn c.a con
chu@t v c1c s/ +iPn clic+ chu@t* nu thit AB l &@t A@ #iOu +hiKn r?le th d liPu trong A1o c1o sk cho
Ait r?le no &V v r?le no #\ng>
B@ &3 t- report c4n ph-i #. linh ho]t #K #iOu +hiKn thit AB vi c1c &c #ch +h1c nhau> 7 liPu lIu
trong report c4n #I0c tCi Iu ho1 vO +ch thIc #K tr1nh l`ng ph +h3ng gian lIu tr v rYt ngJn th$i gian
+hi tru!On trEn Aus>
Cc y>u cUu 0T hot c% th gQi t5i 0Jt thit 37 thuJc l5p 1I.
<hI #` trnh A! V trEn* #Lc t- R97 #Bnh ngha ) !Eu c4u & Rost c\ thK gGi ti &@t thit AB thu@c lp
R97> =Mt c- c1c R97 ph-i hS tr0 xet"eport* cvn #Ci vi c1c thit AB hS tr0 giao thc +hVi #@ng th ph-i
#1p ng #I0c c1c !Eu c4u xetrotocol v Setrotocol> 61c !Eu c4u cvn l]i gm& Set"eport* xet9dle
v Set9dle l tu chpn* tr% trI$ng h0p #Ci vi &@t +e!Aoard sG dng giao thc +hVi #@ng ph-i hS tr0
Set9dle> <u &@t R97 +h3ng c\ &@t #iK& cuCi ngJt ra (}U=) hoLc nu R97 #ang giao tip vi &@t
&1! ch. chz hS tr0 USB '>[ nhI indoNs (f xold chng h]n th R97 #\ nu &uCn nhQn report t% host
n\ ph-i hS tr0 Set"eport> 61c !Eu c4u V trEn sk #I0c Rost gGi ti thit AB trong giai #o]n setup c.a
tru!On #iOu +hiKn> xiai #o]n setup c.a tru!On #iOu +hiKn diFn ra nhI sau5 Aan #4u host ph1t ra g\i th3ng
A1o setup* theo sau #\ l g\i d liPu dnh cho giao t1c setup c\ +ch thIc c.a ph4n d liPu l f A!te*
cuCi cXng host ch$ g\i AJt ta! ^6~ #K Ait rung giao t1c setup c\ thnh c3ng ha! +h3ng> 61c !Eu c4u c.a
host #I0c cha trong f A!te d liPu c.a g\i d liPu theo sau g\i th3ng A1o setup* n\ c\ +hu3n d]ng nhI
sau5
Rnh wgw5 ~hu3n d]ng d liPu c.a giai #o]n setup trong +iKu tru!On 6ontrol
6\ &@t sC Ait trong g\i trEn c\ gi1 trB giCng nhau #Ci vi c- ) !Eu c4u #\ l5
l Ait 7estination t!pe [[[[[B #K chz ra #ch #n c.a !Eu c4u l &@t thit AB> ([[[['B5 #ch l &@t
giao diPn c thK* [[['[B5 #ch l &@t #iK& cuCi trEn thit AB* [[[''B5 #ch l &@t trong c1c thnh
ph4n +h1c trong thit AB)>
W Ait "e,uest =!pe [' #K chz ra lo]i !Eu c4u n! l #K dnh cho &@t lp thit AB c thK> ([[5 tc
re,uest l &@t trong c1c re,uest chun (c\ '' lo]i re,uest chun)* '[5 re,uest #I0c #Bnh ngha AVi
nh cung cMp thit AB)>
xet"eport
Rost gGi !Eu c4u n! +hi n\ &uCn nhQn &@t 9nput report hoLc qeature report t% R97 sG dng tru!On #iOu
+hiKn>
Bit 7irection ' #K chz ra rung c\ &@t giai #o]n d liPu sau giai #o]n setup v hIng tru!On c.a
d liPu l t% thit AB vO host>
A"e,uest ['h cho Ait !Eu c4u & host gGi ti thit AB l xet"eport>
NZalue5 B!te cao cha th3ng tin cho Ait host &uCn nhQn lo]i report no t% thit AB ('9nput*
iqeature)* A!te thMp cha report 97>
N9ndes5 cha sC lI0ng giao diPn & !Eu c4u #I0c hIng ti>
Nlength5 cha chiOu di tCi #a cho phHp c.a report trong giai #o]n d liPu tnh theo A!te>
_Iu 5 tMt c- c1c R97 nEn hS tr0 !Eu c4u xet"eport>
xet9dle
Rost gGi !Eu c4u n! #K #pc tCc #@ rSi t% thit AB>
Bit 7irection '>
A"e,uest [Wh>
NZalue5 B!te cao [[h* A!te thMp chz ra report 97 c.a report & !Eu c4u t1c #@ng ti> <u A!te
[[h th c\ ngha l !Eu c4u sk t1c #@ng ti tMt c- c1c 9nput report c.a R97>
N9ndes cha sC lI0ng giao diPn hS tr0 !Eu c4u n!>
Nlength '> ' A!te trI$ng d liPu c.a g\i d liPu trong giai #o]n d liPu sk cha tCc #@ rSi tnh
theo sC ngu!En l4n c.a w &s>
61c R97 +h3ng Au@c ph-i hS tr0 !Eu c4u xet9dle>
xetrotocol
:c #ch c.a !Eu c4u n! l #K host Ait #I0c R97 c\ hS tr0 giao thc +hVi #@ng ha! +h3ng>
Bit 7irection '>
A"e,uest [ih>
NZalue [[[[h>
N9ndes cha sC lI0ng giao diPn hS tr0 !Eu c4u n!>
N_ength '> <u ' A!te trI$ng d liPu c.a g\i d liPu [ tc c\ hS tr0 giao thc +hVi #@ng cvn
nu [ tc l +h3ng hS tr0 giao thc +hVi #@ng> 61c thit AB c\ hS tr0 giao thc +hVi #@ng th ph-i
#1p ng !Eu c4u n!>
Set"eport
Rost gGi !Eu c4u n! #K th3ng A1o rung n\ &uCn gGi &@t }utput hoLc qeature report ti thit AB Aung
c1ch sG dng tru!On #iOu +hiKn>
Bit 7irection [ #K chz ra rung hIng c.a report trong giai #o]n d liPu l t% host ti thit AB>
A"e,uest [(h>
NZalue5 B!te cao cha th3ng tin vO lo]i report sk #I0c gGi trong giai #o]n d liPu (W5 }utput
report* i5 qeature report)> B!te thMp cha report 97>
N9ndes cha sC lI0ng giao diPn & !Eu c4u n! #I0c hIng ti>
N_ength5 cho Ait chnh s1c +ch thIc c.a report tnh theo A!te sk #I0c gGi trong giai #o]n d
liPu>
61c R97 c\ thK hS tr0 hoLc +h3ng hS tr0 !Eu c4u Set"eport> <u &@t R97 +h3ng c\ #iK& cuCi ngJt ra
(}U=) hoLc R97 #ang l& viPc vi &@t &1! ch. chz hS tr0 phiEn A-n USB '>[ & l]i &uCn nhQn d liPu
t% Rost th viPc #1p ng l]i !Eu c4u Set"eport l c1ch du! nhMt #K c\ thK nhQn d liPu t% host>
Set9dle
Rost gGi !Eu c4u n! l #K tit +iP& Ang th3ng th3ng ,ua viPc gii h]n t4n sC gGi A1o c1o c.a &@t #iK&
cuCi ngJt vo (9<) +hi d liPu cha trong A1o c1o +h3ng c\ s/ tha! #{i so vi A1o c1o g4n nhMt>
Bit 7irection [ #K chz ra hIng c.a d liPu trong giai #o]n d liPu nu c\ th sk l t% host ti thit
AB>
A"e,uest [^h>
NZalue5 B!te cao thit lQp +ho-ng th$i gian tCi thiKu ph-i tr3i ,ua gia hai 9nput report c\ d liPu
giCng nhau & l]i #I0c gGi + tip nhau* A!te thMp cha report 97 c.a report & !Eu c4u n! t1c
#@ng ti> <u A!te thMp l [[h th c\ ngha l !Eu c4u n! t1c #@ng ti tMt c- c1c 9nput report c.a
R97>
N9ndes cha sC lI0ng giao diPn hS tr0 !Eu c4u n!>
N_ength [[[[h5 6ho thM! +h3ng c\ giai #o]n d liPu theo sau giai #o]n setup>
6hY thch5 ~ho-ng th$i gian gia hai 9nput report l &@t sC ngu!En l4n c.a w &s* nhI vQ! vi ' A!te cao
c.a NZalue th +ho-ng th$i gian n! sk nu& trong ph]& vi t% w ti '[W[ &s> <u A!te cao c.a NZalue
[[h th c\ ngha l R97 chz #I0c gGi 9nput report +hi d liPu c.a report #` c\ tha! #{i so vi l4n gGi
nga! trIc #\> <u d liPu c.a report c\ tha! #{i so vi l4n gGi nga! trIc #\ th n\ c\ thK #I0c gGi
nga! +hi c\ &@t th3ng A1o 9< AMt +K gi1 trB A!te cao c.a NZalue l Aao nhiEu> =rong trI$ng h0p d liPu
c.a report +h3ng hO c\ tha! #{i g so vi l4n gGi nga! trIc #\ &Lt +h1c +ho-ng th$i gian #I0c g1n
trong A!te cao c.a NZalue chIa tr3i ,ua +K t% l4n gGi report nga! trIc & l]i c\ &@t th3ng A1o 9< t%
host th R97 sk gGi g\i AJt ta! <^~> 6vn nu +ho-ng th$i gian #I0c g1n trong A!te cao c.a NZalue #`
tr3i ,ua +K t% l4n gGi report nga! trIc th R97 sk gGi ti host report &Lc dX d liPu c.a report +h3ng hO
c\ tha! #{i so vi l4n gGi nga! trIc> <u R97 tr- l$i !Eu c4u Set9dle c.a host Aung g\i AJt ta! S=^__
th n\ c\ thK gGi report AMt c +hi no c\ th3ng A1o 9< t% host +K c- +hi d liPu c.a report +h3ng hO c\ s/
tha! #{i> 61c R97 +h3ng AB AJt Au@c ph-i hS tr0 !Eu c4u Set9dle c.a host ngo]i tr% +e!Aoard c\ sG dng
giao thc +hVi #@ng>
Setrotocol
Rost gGi !Eu c4u n! #K chz #Bnh R97 c\ nEn sG dng giao thc +hVi #@ng ha! +h3ng>
Bit 7irection [ #K chz ra hIng c.a d liPu trong giai #o]n d liPu nu c\ th sk l t% Rost ti
thit AB>
A"e,uest [Bh>
NZalue [[[[h5 nEn sG dng giao thc +hVi #@ng NZalue [[[[h5 +h3ng nEn sG dng giao thc
+hVi #@ng>
N9ndes cha sC lI0ng giao diPn hS tr0 !Eu c4u n!>
N_ength [[[[h5 6ho thM! +h3ng c\ giai #o]n d liPu theo sau giai #o]n setup>
=hit AB &uCn th/c hiPn chc nng trong ,u1 trnh +hVi #@ng ph-i hS tr0 !Eu c4u Setrotocol>

You might also like