|
你好:
Z, }+ }) p* \! N8 o+ V2 w/ s; N: Z) a* }+ k
我们公司在OMAPL138_StarterWare_1_10_04_01的基础上( OMAPL138_StarterWare_1_10_04_01\examples\evmOMAPL138\usb_dev_msc),
4 q9 x1 g M4 b' W" F: R/ f" @/ N& M! M& A# o) }
实现了usb mass storage功能,在win7系统下面u盘功能够顺利实际,但是在电脑上接一个hub后,然后将u盘接到hub上,u盘不能正解识别。
8 v3 e; I* q/ x, U# Y ]& c( Q9 H/ i. s7 U" \. O
目前分析代码发现经hub转接后,电脑发(SCSI_READ_10 0x28)这个命令,usb 复位。
/ t0 j; K- q; c( Q0 i6 X0 O- Q+ ?; ?5 A
UsbPhyOn 代码如下,外部时钟配为19.2M. device mode:
- ?6 H# k9 q( n O: Q# ?# C3 s5 H0 H7 ^
请问个和我们的设备电流是否有关:
# P8 X; n( E8 I1 K. i8 Y0 @: a' s
; y7 w5 b, p# p$ j+ H/ ivoid UsbPhyOn(unsigned int ulIndex)
. l- q: Q2 Q7 K: S0 u$ u5 @" M' l{
- c) s3 b+ y: d& K% k% s! M * W0 R2 A# L0 P F
unsigned int reg = 0;* q1 Y6 M5 `5 ?0 Y: W: O5 g i
BSP_KickUnlock();8 S: K& \) S& T- F& F0 m( h
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
5 B* S. Y; Q% g7 I/ K reg &= ~(CFGCHIP2_REFFREQ);+ i" ?3 Q0 B8 b2 N, B
reg |= CFGCHIP2_REFFREQ_19_2MHZ;6 x; h" O& v3 a( j3 o* G; i/ A
//reg |=CFGCHIP2_REFFREQ_24MHZ;
! Z' f% J$ Z& f" M4 w HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr)=reg;8 V6 J7 G2 q3 e( r6 P! z2 p) Y
, c5 f1 @- z, J }" g# ~ reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);( I, h. n1 ]3 C2 N: U: R
tprintf("\r\n clk==0x%08x:\r\n", reg &= (CFGCHIP2_REFFREQ)); l. P1 [8 k! c( X/ N
$ g7 Q! d8 U; b: D
#if debug7 d2 A$ B( f- w# {
/***internal 2.0***/ //aux_clk: g" G) i! G! L4 W& d
1 N. ]" @3 H3 g6 B5 g, U
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);/ W/ ?) f. h, R6 s
reg &= ~(CFGCHIP2_USB2PHYCLKMUX);2 w' u( y# U; G! H( F
reg |= (CFGCHIP2_USB2PHYCLKMUX);
6 A% O& N0 K% I& C$ t* x1 J5 s8 e3 X$ Z HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
, c4 R, E6 T4 i4 \2 Z$ n [: B; N; [6 l% @
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
" Z* y3 B# _! j& P! w5 H' b tprintf("\r\n 2.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB2PHYCLKMUX));& q& {- H8 E4 R
# e) [6 r; A( t5 N# x4 l
/***internal 1.0***/ ///phy out- |2 Z- [" O* I. D
/ B6 z: Z! c" M3 H
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
" K: X4 B1 {) p% ~1 Y% ? reg &= ~(CFGCHIP2_USB1PHYCLKMUX);
! P9 l+ ?( B) A4 F# m9 G; ~ //reg |= (CFGCHIP2_USB1PHYCLKMUX);
4 C' E* o7 s5 V- r; x) r HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;( j( K0 W8 S. a, L! Y* s
0 y' {: ?# S) j- w; l
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
3 p8 m* M- K, c( R; r. ]/ p, K tprintf("\r\n 1.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB1PHYCLKMUX));. r9 C6 S3 V: G9 p1 j( P1 C; b
0 q2 t+ ~9 A9 c- q
( n+ M6 f; q$ a I
/***phy run***/ //phy out! U* U6 R5 N A1 e. A5 `/ g
" H4 c7 }: Y* Q3 B8 W reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);' k# X# `7 p8 z( _* L6 c
//tprintf("\r\n CFGCHIP2_PHYPWRDN=0x%08x:\r\n", reg &= (CFGCHIP2_PHYPWRDN));, Q4 l5 q( H, Z& D. Y0 Q
( a4 c/ V9 p/ B* Z! O* Z
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);: E, R% z' i' i9 K
reg &= ~(CFGCHIP2_VBDTCTEN);: G1 Y' ]& w' Q. a) z) a
reg |= (CFGCHIP2_VBDTCTEN);
$ H; w* N o; d6 \* ` tprintf("\r\n phy CFGCHIP2_VBDTCTEN=0x%08x:\r\n", reg &= (CFGCHIP2_VBDTCTEN));" [' c- _- r. r Z _
#endif
! [ O e1 q( b" ]+ u$ d1 _" S( i2 Z8 s, B8 e
reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr); : o. ^+ X4 A! J; p
reg &= ~(CFGCHIP2_RESET | CFGCHIP2_PHYPWRDN | CFGCHIP2_OTGPWRDN);
- h$ L7 u3 `1 N# W, H1 q* z+ z) j/ o/ o8 ~$ H' B9 M) A1 i1 Y
reg |= CFGCHIP2_PHY_PLLON;5 |# i. a0 u/ ]9 T: A4 ?, q
6 x' @! p7 z T- P
HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
- _! _' g# X/ r* m% B; J9 R: @" L# p+ C+ j c8 S+ a/ n0 ]$ |
while (!(HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) & CFGCHIP2_PHYCLKGD));
6 @ L& B0 o) V( G/ T
9 t8 b' I) h8 _//#ifdef USB_MODE_FULLSPEED
% x1 q& ]9 u& q, z# y6 W4 B HWREGB(USB0_BASE + USB_O_POWER) &= 0xdf;- I4 ]3 m, z+ c8 Y
//#endif /* USB_MODE_HS_DISABLE */+ s! Z( ` P8 ^5 s. R
) r, q- A- v1 N0 w3 d$ Btprintf("\r\n USB0_BASE + USB_O_POWER=0x%08x:\r\n", HWREG(USB0_BASE + USB_O_POWER));& R; I* d9 j; P2 A$ H
}. s, [# @) H- @" p7 S# w
' l: h5 e4 V+ Q$ m$ b# Z# ]) F5 Q% u# {+ I; U2 \& ~
附件有我们的电路图:
% O/ ~7 l4 F+ D: ^3 g' R5 f: c 请问能否帮助分析,谢谢.
" T& E S9 r! R# q+ ~
0 |3 {, K. `1 v0 N* H* [' Z8 D. R' r! B9 B9 A9 I
( \# c( K. ]# c3 X* B( b3 T2 `8 W7 U( J/ h! a8 w3 T* [
& F6 c% D+ g, o1 `! U$ a# q. t- {
5 p& U4 i, ]5 [9 S& O" u% f
4 m$ g' m8 y# T8 F |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|