usb 2.0 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站
点击跳转“创龙科技服务通”

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

[未解决] usb 2.0

[复制链接]

2

主题

8

帖子

38

积分

新手上路

Rank: 1

积分
38
跳转到指定楼层
楼主
发表于 2017-11-6 09:54:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
你好:1 ?1 T+ X! Y0 f, O

+ Y1 l0 n3 M, K  我们公司在OMAPL138_StarterWare_1_10_04_01的基础上( OMAPL138_StarterWare_1_10_04_01\examples\evmOMAPL138\usb_dev_msc),
3 a3 ?) J9 R# \# n- b  @2 ~& g/ p1 M
  实现了usb mass storage功能,在win7系统下面u盘功能够顺利实际,但是在电脑上接一个hub后,然后将u盘接到hub上,u盘不能正解识别。
; K9 X8 Y6 F' Q
1 n  g) M- m5 B3 w$ t% ^  目前分析代码发现经hub转接后,电脑发(SCSI_READ_10 0x28)这个命令,usb 复位。
6 B8 e' {, O& Q. n" F# m) A. ?% g' `  {
  UsbPhyOn 代码如下,外部时钟配为19.2M. device mode:- X; D! G& y+ _- y- T# g/ K
1 v& u3 o! e+ N
  请问个和我们的设备电流是否有关:
8 b$ ~) V1 p5 f5 `# p# ~/ M
- ^5 _: V* l, W! avoid UsbPhyOn(unsigned int ulIndex)
; P3 g* U, S. b" w7 A; ~2 z{
% w% C# \* v( R3 O2 t  V       
& {8 m# E0 D% H- P; J8 v! {   unsigned int  reg = 0;
' E# T) F3 Y/ [: \4 s* e5 w: _( l   BSP_KickUnlock();5 W6 {6 n9 {6 ~* t7 H( g
        reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);! \2 L0 e+ ?8 E3 n- ~
        reg &= ~(CFGCHIP2_REFFREQ);+ g5 Q2 O- z* `$ g9 ^
        reg |= CFGCHIP2_REFFREQ_19_2MHZ;) r' S: o! \% J/ O+ U5 Z$ H9 Z
        //reg |=CFGCHIP2_REFFREQ_24MHZ;
+ i- S' k- l3 z$ Q4 c. {        HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr)=reg;
4 f  r; [' G4 ?, B8 Z
1 o% [, Y. q0 P& C& g- H& B. F! S        reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
  t! o* T, n1 _  w" ], M        tprintf("\r\n clk==0x%08x:\r\n", reg &= (CFGCHIP2_REFFREQ));
6 b2 r+ ^# E- U9 ~# k  [
6 x9 y3 @% M) e2 i5 D  k# w#if debug% O& O1 Q* _8 K, D1 w. E8 q$ s: p
/***internal 2.0***/ //aux_clk
; N- y* J% `9 w" N% W# D1 Z& g+ c3 N1 p: z4 t- F* U! X
    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);% ?/ R5 o; l* j& l
    reg &= ~(CFGCHIP2_USB2PHYCLKMUX);" ?" W: [, M5 {. [8 f
    reg |= (CFGCHIP2_USB2PHYCLKMUX);$ s8 Z4 t2 t) f% |
    HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
; O( H0 Q" U( c: W
, |2 b( C7 ]1 m7 p: G6 t    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);' r/ x% L8 {) S
    tprintf("\r\n 2.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB2PHYCLKMUX));
. n7 r. `1 b' m2 G3 U# J
9 k* M5 @5 f" ~. y2 Y" f/***internal 1.0***/ ///phy out; [" F4 C& \6 Q) _: J7 S3 Y2 b4 k# r2 y

* U0 e; S4 ~/ B1 a2 _" \    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);$ D" @- K# [" U( P% s' x
    reg &= ~(CFGCHIP2_USB1PHYCLKMUX);
7 N8 c3 m' l# \% z5 W5 g( [* Z    //reg |= (CFGCHIP2_USB1PHYCLKMUX);% ~( f# b1 V; J5 T0 m' v% f
    HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;
* x/ Z4 [! z3 N& s
- k- q( X$ u0 d( E" R: ~0 F. [4 ]+ H/ F    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);& t" T8 a9 j) Z/ v  r8 B* L9 P: v
    tprintf("\r\n 1.0clk source=0x%08x:\r\n", reg &= (CFGCHIP2_USB1PHYCLKMUX));& W2 [) N6 _  H; B$ B& o% @: {/ s
9 H8 P" }) w% B* D
! G/ k- R2 y5 y# {1 |8 v* E
/***phy run***/ //phy out. Y* s# M1 h! ^4 d* u1 O" r

: C% X1 n& Z) J8 L2 Q        reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
7 C' ^5 K2 D7 `% _9 s: s  J' F        //tprintf("\r\n CFGCHIP2_PHYPWRDN=0x%08x:\r\n", reg &= (CFGCHIP2_PHYPWRDN));) s1 k6 ^1 k- [+ o5 j
; h, k4 O" A; i* S0 w; p: r
        reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr);
9 q# [& }5 u4 Z8 ^- e  J        reg &= ~(CFGCHIP2_VBDTCTEN);- |, l9 O& u8 t) R" M
        reg |= (CFGCHIP2_VBDTCTEN);
' n0 r. S: Z4 m        tprintf("\r\n phy CFGCHIP2_VBDTCTEN=0x%08x:\r\n", reg &= (CFGCHIP2_VBDTCTEN));, y1 F+ ?7 [5 h/ j
#endif
6 A3 [) Y4 n$ J/ Y5 Q* g, F  p* ~- g3 ?* z" U) e
    reg = HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr); $ a0 c3 J! P7 U! ]  c8 r( `% B
    reg &= ~(CFGCHIP2_RESET | CFGCHIP2_PHYPWRDN | CFGCHIP2_OTGPWRDN);   ; }9 X2 E. R7 a/ Z. F

0 E9 ]& W0 k; }0 f: t, @* E9 i    reg |= CFGCHIP2_PHY_PLLON;
7 `! {1 W! V  R( M
5 l1 E. n  v& j: c2 s    HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) = reg;0 P0 y5 S. T% l& a
8 Q) p# T/ E) o. F/ I
    while (!(HWREG(g_USBInstance[ulIndex].uiPHYConfigRegAddr) & CFGCHIP2_PHYCLKGD)); . `5 ~- L2 E6 Z7 `( f# x
' c# j, n5 H2 f) K/ O6 H
//#ifdef USB_MODE_FULLSPEED
5 L0 o( l' ]; U# g' c3 [. l( h    HWREGB(USB0_BASE + USB_O_POWER) &= 0xdf;
# ?, H% N7 S( Z( \  @+ c//#endif /* USB_MODE_HS_DISABLE  */
/ c- f9 e# l4 p' B8 |+ e/ _6 o, T2 I4 z7 ~
tprintf("\r\n USB0_BASE + USB_O_POWER=0x%08x:\r\n", HWREG(USB0_BASE + USB_O_POWER));( x' k) r0 i: G3 h# e9 e$ ?- }
}
( @% W3 k0 `8 |) f
( B8 I( Q: R) {5 I& ~& s2 a) m3 ?
+ I! q' N* V  L* c# z  附件有我们的电路图:
9 n6 b- O$ D0 \# P2 ?" \7 o  请问能否帮助分析,谢谢.
% D2 B6 w3 g" s) A6 t+ G1 h; J8 i7 q% @

. t$ m: ?" f: q; {' [5 H+ X
2 ?# H/ D: l1 z8 [7 w9 N: e/ w) A  i3 l+ f

1 z5 J9 j: R4 Z( Z) P
$ v$ Y! ^4 h! t2 ~1 Y! m6 i2 E
/ |" |6 D. d- m* V4 A

本帖子中包含更多资源

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

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, 2026-3-17 05:05 , Processed in 0.040126 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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