RK3288 UBOOT OTG调试分析

调试OTG的时候发现无法识别USB,开始定位问题。

先来看看硬件部分:

1.供电部分

RK3288 UBOOT OTG调试分析_第1张图片

2.USB插入检测(USB插入时候VCC_OTG_5V有5V电压,然后OTG_DET 3.3V)

RK3288 UBOOT OTG调试分析_第2张图片

3.USB座子

RK3288 UBOOT OTG调试分析_第3张图片

再来看软件流程:

1.UBOOT启动,检测RECORVER按键是否为低电平,如果为低,则进入do_rockusb.根据串口判断已经进入了升级模式,问题应该出现在DO_ROCKUSB函数里面


2.do_rockusb里面有个循环,等待USB连接后查询USB的状态,发送USB初始化的数据帧。调试的时候发现一只USB枚举超时了,超时等待可以在DO_ROCKUSB参数修改为0,这样就不会超时后RECOVERY模式了,问题应该就在USB通讯上面。

RK3288 UBOOT OTG调试分析_第4张图片

根据上面现象从几个方面入手:

1.查询数据手册发现RTC时钟对USB很关键,本来没有焊上RTC电路,便把它焊上


2.USB座子有可能焊接不良,加焊了一下。

3.DM DP阻抗匹配,串了一个70R电阻。

做完这三件事后发现,能够识别到OTG了,结束加班。

你可能感兴趣的:(嵌入式软件,嵌入式硬件)