usb 2.0 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3639|回复: 1
打印 上一主题 下一主题

[未解决] usb 2.0

[复制链接]

2

主题

8

帖子

38

积分

新手上路

Rank: 1

积分
38
跳转到指定楼层
楼主
发表于 2017-11-6 09:54:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
你好:# Q/ w0 A  P; e9 w
4 A  k' U9 \' s; u- z7 G& A
  我们公司在OMAPL138_StarterWare_1_10_04_01的基础上( OMAPL138_StarterWare_1_10_04_01\examples\evmOMAPL138\usb_dev_msc),
$ [8 y+ j% A* `, f* Y* k2 H* {# z3 f7 N$ r) M
  实现了usb mass storage功能,在win7系统下面u盘功能够顺利实际,但是在电脑上接一个hub后,然后将u盘接到hub上,u盘不能正解识别。' b" g3 T* _$ h6 ^
& ?6 `, Z  w* \# _* B& x
  目前分析代码发现经hub转接后,电脑发(SCSI_READ_10 0x28)这个命令,usb 复位。, F+ U) x" p% H
6 y8 s# y5 n" ~" F4 J6 a
  UsbPhyOn 代码如下,外部时钟配为19.2M. device mode:0 G, |1 P& f8 O( w2 w
4 O( [5 p+ I2 v% C3 F7 q! S
  请问个和我们的设备电流是否有关:' N, _$ F" c0 Y7 H
* }2 i8 N9 Q- }7 V/ X
void UsbPhyOn(unsigned int ulIndex)) A+ B. e6 D: h+ C! R! m; S
{
* w4 y, V$ ?3 e       
) X; x% w7 B% H" W8 n   unsigned int  reg = 0;7 F  P7 I' b* l
   BSP_KickUnlock();
8 V+ N0 w: Z7 {1 w! s8 u        reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);  {2 u, h  c5 i: Q8 B
        reg &= ~(CFGCHIP2_REFFREQ);5 J8 @4 l" [" E: K! U* X) P
        reg |= CFGCHIP2_REFFREQ_19_2MHZ;4 B/ ?5 a2 `( s* V2 d9 J9 N
        //reg |=CFGCHIP2_REFFREQ_24MHZ;" O# W& @. m/ |# q" v$ J1 K
        HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr)=reg;1 X* l1 ~5 ^  ?0 K* h& n3 r

* l+ {8 i6 g8 F! L% U/ Y8 f! |        reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
4 d( H! l- R+ ], s        tprintf("\r\n clk==0x%08x:\r\n", reg &= (CFGCHIP2_REFFREQ));0 ?  e1 K# `0 A" @3 D2 s: z
+ d1 W: z4 V" n2 a( [, J
#if debug/ c4 E7 x! j2 b* z, A& X2 {0 n
/***internal 2.0***/ //aux_clk: O7 x! G, W: @  r1 e

/ N6 `5 C% h$ r9 o    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);. e( C) |# l: h% m( x9 r; F
    reg &= ~(CFGCHIP2_USB2PHYCLKMUX);
  B% j, r4 A( z! \& J! n$ ^    reg |= (CFGCHIP2_USB2PHYCLKMUX);" ]% j7 ?( h. U1 G6 s" Q1 t
    HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;8 Z7 ?6 Y, A3 _: V
% K- Q5 T4 p- r  |
    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
  ]0 w: p$ m! v6 [1 D! o    tprintf("\r\n 2.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB2PHYCLKMUX));. D. l3 w# x6 A4 h
7 L! g8 |7 v, K- j3 v# J- d/ ?* P
/***internal 1.0***/ ///phy out
  X$ B5 ?  B: f' d  x
; ]- [% c; F7 @) Q    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);: T+ w6 K. k5 ?
    reg &= ~(CFGCHIP2_USB1PHYCLKMUX);$ w+ D9 H( K& c8 U: V& R
    //reg |= (CFGCHIP2_USB1PHYCLKMUX);$ n9 k1 _4 Y6 ~6 f1 w
    HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
6 ~1 E) ]0 [( s- l& x
) A! H4 {" e; x' Z" |; M    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);8 ?( T+ J0 V+ E3 c7 L1 p2 H
    tprintf("\r\n 1.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB1PHYCLKMUX));
. l& d$ ?2 d9 h* {. p4 `5 p. A6 R

# q; s$ `7 g* P1 j9 K! T, K( v/***phy run***/ //phy out1 n7 Q3 i9 j7 q7 \6 x' Z9 ^% j

. U, `! o0 t. V4 M! j! H1 R        reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);+ s1 L7 k/ S8 i  u! M8 C) @% t
        //tprintf("\r\n CFGCHIP2_PHYPWRDN=0x%08x:\r\n", reg &= (CFGCHIP2_PHYPWRDN));4 Q, F7 K" d8 }( @4 Q
, s7 M, ?: @8 L& l5 i% G
        reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);9 w" x4 S) X' W7 D2 _/ n' `, I
        reg &= ~(CFGCHIP2_VBDTCTEN);- {" s8 T! b2 L- N' v7 W
        reg |= (CFGCHIP2_VBDTCTEN);
5 p4 U5 f. r% y1 Z        tprintf("\r\n phy CFGCHIP2_VBDTCTEN=0x%08x:\r\n", reg &= (CFGCHIP2_VBDTCTEN));
8 l3 H% u2 d1 N+ t; u! Y$ A9 Q#endif
4 e6 `; @; T. q8 D0 A: b8 `% H1 @$ r# z2 |& m" S
    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr); 6 Y: _( D+ T* g# s' c: ~
    reg &= ~(CFGCHIP2_RESET | CFGCHIP2_PHYPWRDN | CFGCHIP2_OTGPWRDN);   ! k, b' x3 d8 s# W/ `) c
1 s+ t: F/ g8 z7 W2 H2 n' ^" n
    reg |= CFGCHIP2_PHY_PLLON;, Q- N4 M% d' o. r4 G, X

3 x! t+ M- f5 L: Q; \# b! O    HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;, r0 w6 k3 v: i" c8 Y
' |+ c& ]' C6 F1 p* k/ ^
    while (!(HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) & CFGCHIP2_PHYCLKGD));
* H+ u! R* r8 i" T8 q! p
7 B0 j" c! V. R) X//#ifdef USB_MODE_FULLSPEED- S3 p0 L4 m; X! ]& R% O; w# S3 N
    HWREGB(USB0_BASE + USB_O_POWER) &= 0xdf;
+ i0 F- h$ [5 T2 I//#endif /* USB_MODE_HS_DISABLE  */
, K! J5 \( Q1 E" M
5 H  E/ r% N# g, v5 P' _5 {* dtprintf("\r\n USB0_BASE + USB_O_POWER=0x%08x:\r\n", HWREG(USB0_BASE + USB_O_POWER));9 ?0 Y2 I4 {* c6 y4 O7 e
}
, @; `) R1 T; a- e' U8 J+ y8 p. p6 \
: N8 Q9 C2 @# M  x' a
  附件有我们的电路图:
- d$ x: R% B0 _0 g& O. x, U  请问能否帮助分析,谢谢.
; A- t9 V2 k- v6 `5 A' R4 c
8 ~/ w( R! q5 d0 c& t0 N( T- R+ ^8 `3 J9 T- h
0 L5 ]4 i% D0 s" {( P$ P. B

- [' f5 D: K7 l2 Y$ }1 S# z; d7 i% u. E5 q% I

: B# K& U' a5 b2 L- u: r/ i: j' N9 ?
$ @5 s, p' ?; j" N# H/ _8 _+ V: `

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

2

主题

8

帖子

38

积分

新手上路

Rank: 1

积分
38
沙发
 楼主| 发表于 2017-11-6 09:56:04 | 只看该作者
telephone num 13437388251
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-5-16 14:20 , Processed in 0.037068 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表