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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

[未解决] usb 2.0

[复制链接]

2

主题

8

帖子

38

积分

新手上路

Rank: 1

积分
38
跳转到指定楼层
楼主
发表于 2017-11-6 09:54:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
你好:
8 g0 Y7 Z' y- r3 x# R. G
. s; @2 H8 K5 o0 V  我们公司在OMAPL138_StarterWare_1_10_04_01的基础上( OMAPL138_StarterWare_1_10_04_01\examples\evmOMAPL138\usb_dev_msc),
; z  M+ M4 h( P" [% r. C) A/ j( O- |! x
  实现了usb mass storage功能,在win7系统下面u盘功能够顺利实际,但是在电脑上接一个hub后,然后将u盘接到hub上,u盘不能正解识别。" ?/ [" |0 |1 @4 S/ J' F

3 `6 {! b( I5 E4 E2 y  目前分析代码发现经hub转接后,电脑发(SCSI_READ_10 0x28)这个命令,usb 复位。  C# |! Z& k' I
% d: v3 P; a5 t+ c# m
  UsbPhyOn 代码如下,外部时钟配为19.2M. device mode:' p$ Y. r4 l% ~1 u% h; p

0 O1 k  i4 w3 F1 E  请问个和我们的设备电流是否有关:, ?* z8 K6 V) S' B" q

1 |$ r, T4 n  vvoid UsbPhyOn(unsigned int ulIndex)2 r: G; Q; F' ~, M- H& Z
{
+ o+ i) N" I5 o  W# {2 v& L) y       
& ]8 a  i% N8 P8 }9 l6 T/ [   unsigned int  reg = 0;
- Q7 [; H  H2 R' J0 v  S   BSP_KickUnlock();
' k8 ?5 z$ }" C2 ?( B        reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);1 j7 |" A' g' C5 k: l. U
        reg &= ~(CFGCHIP2_REFFREQ);6 @3 w3 W  ]& ]$ Z6 m
        reg |= CFGCHIP2_REFFREQ_19_2MHZ;5 U1 }+ a6 u9 s% |6 k1 o  e; P
        //reg |=CFGCHIP2_REFFREQ_24MHZ;
* q$ f+ ?/ B6 I% E3 y' z, [7 w        HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr)=reg;3 @5 J; P- M5 B5 t
9 M( ~' Q( v3 k* g8 _& m( _
        reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);* l$ o) A  m, i  ]5 V- J, [: ~" s% ]' @
        tprintf("\r\n clk==0x%08x:\r\n", reg &= (CFGCHIP2_REFFREQ));& x6 u7 ~  b! M. j8 _- x' \' N: u
. a- T! `3 `$ @
#if debug
' J) G0 ~* j0 m$ e; Q8 g% s/***internal 2.0***/ //aux_clk7 D/ I( P3 X# t& E$ \* _
7 T9 n, f4 p/ w" u' F) M4 q
    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
. L* o) I  u6 L, l; \8 M9 J    reg &= ~(CFGCHIP2_USB2PHYCLKMUX);
+ ?( F' Q1 `; I    reg |= (CFGCHIP2_USB2PHYCLKMUX);1 u' U' M6 r5 U! J: t4 ^% [4 N
    HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
5 D% m# A2 c# {0 J. T# \; L& w5 [$ o4 r# f
    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);4 M2 q+ F: h  P1 p2 l
    tprintf("\r\n 2.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB2PHYCLKMUX));
  I) C) t; S( t& {! p3 {7 H- U3 ]4 a8 u' j
/***internal 1.0***/ ///phy out
' r  A1 t' x$ m' i) _. \( z
$ P, H7 b6 ^% P( O    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
$ V* u! V3 c" X2 ]    reg &= ~(CFGCHIP2_USB1PHYCLKMUX);
3 d9 w! c! c0 l" g+ Y    //reg |= (CFGCHIP2_USB1PHYCLKMUX);% E/ z; G3 |+ o! ?5 K# d1 S
    HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
9 }, Y% k* z7 W( Y3 A- u; }% N4 v1 x1 K) ]# O
    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
( L/ }2 D( X# K. {) p# g    tprintf("\r\n 1.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB1PHYCLKMUX));
8 F; }% n$ F7 Q8 X: p. y; Q! C5 e" D4 T4 S

7 W4 b+ }$ n, p' G: i$ {- f5 U; f/***phy run***/ //phy out
; U* g# p0 g2 Z- }9 e5 x# G- u" U
        reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);1 P" f  F9 r) |/ Q6 J+ t
        //tprintf("\r\n CFGCHIP2_PHYPWRDN=0x%08x:\r\n", reg &= (CFGCHIP2_PHYPWRDN));, V! r4 k( ~( _- Y* D

( c% S; U3 V' {. ~        reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
+ M2 [  f7 ?' C; Q        reg &= ~(CFGCHIP2_VBDTCTEN);$ M" Y5 I5 b- A  f8 E- Q3 B
        reg |= (CFGCHIP2_VBDTCTEN);4 t  |, B- O; q/ o# Y! h
        tprintf("\r\n phy CFGCHIP2_VBDTCTEN=0x%08x:\r\n", reg &= (CFGCHIP2_VBDTCTEN));: b, o7 c: M% Y6 N. ?& x
#endif
! X; W/ c+ u( p9 }* M- V. ~& m5 H& \/ P0 C
    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr); * d5 K- p" o. B8 U
    reg &= ~(CFGCHIP2_RESET | CFGCHIP2_PHYPWRDN | CFGCHIP2_OTGPWRDN);   ; W. X- _0 ^- w8 `
* D& Q) @( R2 c, \  ~
    reg |= CFGCHIP2_PHY_PLLON;
/ W8 T  n, F' X# d- A/ ^: ?3 c7 i+ E7 u/ |
    HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
. r3 @: ?" ]0 c6 t& {3 ^; ?% }5 v1 [# S) W( q, c  x' d$ \, @
    while (!(HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) & CFGCHIP2_PHYCLKGD)); & j% n( N1 ^! `* }) t$ S2 L
- \6 ~, z4 F6 Y# o& @+ C0 B! W
//#ifdef USB_MODE_FULLSPEED
; I. L. [, `) W+ G& E5 Z$ z    HWREGB(USB0_BASE + USB_O_POWER) &= 0xdf;
) j  k% h; {/ l) Z1 h- e; W2 v  T//#endif /* USB_MODE_HS_DISABLE  *// Y* {7 k& A6 S2 h/ A5 R7 a8 D" ]8 `
  t/ \) E2 V  }
tprintf("\r\n USB0_BASE + USB_O_POWER=0x%08x:\r\n", HWREG(USB0_BASE + USB_O_POWER));
3 t# ^% |0 Z1 E! r6 r& S6 ?}
: s3 a; M0 `- R& K* t: e- }! |
( n; X, `$ v! U$ s+ }8 J: S1 ~9 l# [0 Z1 {( l7 x
  附件有我们的电路图:1 c1 w# u1 Q# z- b1 {$ a
  请问能否帮助分析,谢谢.. `6 a5 p+ X" A$ ]
( T( S6 \7 Q- {- Q
7 {8 @) c0 F# K9 J1 A$ C( a
  I; J5 Q4 a- D

# ~- N: n4 e3 k7 \4 l5 H) a( ?/ v
, u# |# L# F6 o$ e
2 ~8 I  }( B* y2 g! [! k" u- H3 j1 B4 Y% z

本帖子中包含更多资源

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

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, 2025-12-14 17:36 , Processed in 0.036985 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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