|
你好:
, J- A9 k8 y1 z- a; j, {) n: I& t/ |1 p* m0 h( g
我们公司在OMAPL138_StarterWare_1_10_04_01的基础上( OMAPL138_StarterWare_1_10_04_01\examples\evmOMAPL138\usb_dev_msc),, U) u4 g' o! g% ^- ]/ P6 I
* e3 {+ n: S; t. L$ C' y
实现了usb mass storage功能,在win7系统下面u盘功能够顺利实际,但是在电脑上接一个hub后,然后将u盘接到hub上,u盘不能正解识别。
5 B+ F: p" f) L1 a& C
" ]1 q0 J2 g# @1 [* E1 @ 目前分析代码发现经hub转接后,电脑发(SCSI_READ_10 0x28)这个命令,usb 复位。
1 r6 u' b8 K; Q8 A# z* o; X7 H# z& n# L% ?$ B" W9 w( e1 l
UsbPhyOn 代码如下,外部时钟配为19.2M. device mode:
_ O$ u% d9 S/ v+ u h; ~
5 X' y5 ], h( e. i: u2 Y1 m 请问个和我们的设备电流是否有关:
4 c+ z: A6 l" i; f Z7 ~8 Q: t2 Q/ s. s! R9 I
void UsbPhyOn(unsigned int ulIndex)
! `$ z% \& [- @. M. m) \; v{; J6 c9 w" Z# Y
r) s; j, F2 K8 A$ R m unsigned int reg = 0;) N* N4 E$ W H/ q0 r4 Z
BSP_KickUnlock();8 M# C$ e) N1 z
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
( f' r; I% A3 w' K! \ reg &= ~(CFGCHIP2_REFFREQ);
0 J9 M# p+ ?) Y& }" U4 ] reg |= CFGCHIP2_REFFREQ_19_2MHZ;
' ^+ \% t) m1 b) d. E/ k% j; K //reg |=CFGCHIP2_REFFREQ_24MHZ;+ H$ ?9 d5 E8 p& R @9 i' t9 Q m, z
HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr)=reg;3 Y; J, t7 v2 d; E/ Q. _" _8 k2 ^: [' l
5 i2 Y& }8 C* V0 A reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);. j) i* d) `) @, b; ~7 d! G; i i* i
tprintf("\r\n clk==0x%08x:\r\n", reg &= (CFGCHIP2_REFFREQ));
: l% C8 j3 C% l g4 U
' _# |( @) J: S$ h1 j#if debug, U$ c. m1 X$ L5 m$ a1 d* x/ b
/***internal 2.0***/ //aux_clk0 i+ c5 }4 v# q" \- ]: V. I1 {
$ f* q, P# R* M4 ?! l9 x5 X
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
H( s- P: z1 R$ C reg &= ~(CFGCHIP2_USB2PHYCLKMUX);
7 u" }* q) v5 t- {$ F7 ^1 O reg |= (CFGCHIP2_USB2PHYCLKMUX);
/ k3 [' b/ d1 Z& L& ] HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
7 T y( x. w' _2 f! Q5 e
: d/ Z: P1 B3 i$ W8 T4 r0 o reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);) z+ G( b8 }( f3 i/ Z7 \% Q- k
tprintf("\r\n 2.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB2PHYCLKMUX));
0 w' H6 ~4 i$ a
* M2 x6 q( n v) L/***internal 1.0***/ ///phy out# e+ h. L: I0 V* z+ V5 O n: k# P
: z4 o4 g" z& {/ D
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);- b& |9 ` ?* U: L! Z8 X0 ^/ V: m/ C
reg &= ~(CFGCHIP2_USB1PHYCLKMUX);
$ j' N1 T5 k! v9 X //reg |= (CFGCHIP2_USB1PHYCLKMUX);' ~; Y9 o" m& f U# h
HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;9 v% L) q# L1 ?/ k4 g6 V( x
# @; d( y' }4 o
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);$ Q' Y! R6 r+ H% ~! B
tprintf("\r\n 1.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB1PHYCLKMUX));0 w& V% n6 A& C R: b% P
2 ^3 L' P! F2 f3 N3 W1 R* Q
' }% v( V7 _- p8 j6 j/***phy run***/ //phy out
7 b, D/ |7 C7 ?5 L# Q! U% J
/ ^6 D9 _0 C; u# d8 u reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
2 i3 m2 g/ u6 [+ _ //tprintf("\r\n CFGCHIP2_PHYPWRDN=0x%08x:\r\n", reg &= (CFGCHIP2_PHYPWRDN)); H9 A3 u( D5 E" D2 L: c% g1 R/ M
8 r) S' s' J. a, N+ G reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);& ^7 F: U! N" ]! H
reg &= ~(CFGCHIP2_VBDTCTEN);4 U4 b! i8 G0 r/ D1 E7 b
reg |= (CFGCHIP2_VBDTCTEN);1 w# w' ]+ V3 j6 v
tprintf("\r\n phy CFGCHIP2_VBDTCTEN=0x%08x:\r\n", reg &= (CFGCHIP2_VBDTCTEN));) x" Q7 q# [: @; a- g& }+ p- w
#endif9 C; B( Z: ?) S$ r6 I
2 r- P1 F$ M8 o+ }1 `7 F8 r. x
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr); % N8 y' ]5 X' y
reg &= ~(CFGCHIP2_RESET | CFGCHIP2_PHYPWRDN | CFGCHIP2_OTGPWRDN); 6 G9 _* i' W. ?3 U: W
* D3 H0 T* l) k& i3 }
reg |= CFGCHIP2_PHY_PLLON;
7 S5 q5 T- H8 i& W( l
7 Q9 _ @: R$ e5 \* S' U0 U HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;( p8 r5 s: j0 f4 ^+ [
+ X u& R v/ L/ Y$ h while (!(HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) & CFGCHIP2_PHYCLKGD));
, N6 U, H% A' y+ b
! }6 u6 G6 k+ d. A//#ifdef USB_MODE_FULLSPEED
! D1 W% z& V" V" l7 o HWREGB(USB0_BASE + USB_O_POWER) &= 0xdf;
( ]2 Z; a8 S8 Q//#endif /* USB_MODE_HS_DISABLE */
3 ?1 L: c, ?# m& i3 X/ Q c" p3 l4 }9 x ` P- c
tprintf("\r\n USB0_BASE + USB_O_POWER=0x%08x:\r\n", HWREG(USB0_BASE + USB_O_POWER));# \# o' A& a, o* P# t* P' w. K. D
}/ N+ m9 Y0 O) B) H$ h2 R
+ D+ K4 o* t" A% {0 C
) \/ Q; N+ V3 }9 z9 C, N6 T
附件有我们的电路图:4 x& r, @" j2 ]( q: p6 q9 D1 R
请问能否帮助分析,谢谢.( D$ K; F' C* A! D- E& e
, A; `& E2 e8 \1 f* \ a
2 h8 z5 f* j2 [* E5 v+ h
/ ?" k' I- Y. Y8 |. N% F/ Q& W% a% o( C; f
- S, P9 m, z7 k" g0 a# T
0 ?7 \! x* i) w- }
5 n8 ~8 W/ i, e% W/ z; @% z5 s' } |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|