前段时间,生产部同事反馈主板程序无法烧录,初步怀疑是eMMC问题,于是重新焊接eMMC并检查电路,但问题依旧。经过进一步排查,最终发现问题出在OTG电路——USB接口的ESD静电保护管损坏(下图所示),导致DP信号对地短路。

这个案例让我意识到USB OTG(On-The-Go)的工作原理可能是一个知识点,今天我们就来详细探讨OTG电路的工作机制,并结合实际电路分析其关键设计要点。
011
USB OTG(On-The-The-Go)是USB协议的一个扩展,允许设备动态切换Host(主机)和Device(从设备)模式。例如:
手机(通常作为Device)可以通过OTG功能读取U盘(此时手机变成Host)。
开发板可以通过OTG接口烧录程序(Device模式)或读取U盘数据(Host模式)。
在传统的Micro USB接口中,OTG功能由USB_ID引脚控制:

USB_ID悬空(高电平) → 设备作为Device(从设备)。
USB_ID接地(低电平) → 设备作为Host(主机)。
而在Type-C接口中,OTG功能可由CC1/CC2引脚实现,其逻辑类似。

021
如下原理图,OTG功能的USB接口主要有VBUS_5V,DP,DM,ID,GND五个引脚,差分线上预留共模电感,信号线上都有ESD静电管用于接口防护。

VBUS_5V0_USB20_OTG 是双向电源网络:
Host模式:输出5V(如给U盘供电)。
Device模式:输入5V(如PC给主板供电)。
我们的主芯片一般不支持5V供电,通过分压电阻,将5V分压为3.3V后,然后将该引脚连接主芯片。

VBUS_DET 用于检测电源输入,触发中断。
USB_ID/CC 引脚 决定设备工作模式。
1、PC(Host)插入主板(Device),VBUS_5V0_USB20_OTG输入5V。
2、VBUS_DET检测到上升沿,触发中断,MCU开始检测USB_ID状态。
如果USB_ID为高电平(悬空),设备进入Device模式。
3、PC检测到设备插入(DP/DM信号变化),提示用户连接成功。
U盘(Device)通过OTG线插入主板(Host)。
USB_ID被拉低,MCU检测到下降沿,切换至Host模式。
这个下降沿是怎么回事呢?
那是因为咱们的OTG线上的ID引脚内部跟GND相连,当OTG线插入设备时,ID引脚通常处于高电平状态,当检测到外部设备插入时,ID引脚会被拉低到GND,从而触发设备识别为Host模式,允许设备作为主机进行数据传输。

OTG线淘 宝上卖的也比较便宜,几块钱都能买到。

2)切换成Host模式后,主设备通常会使能一个USB接口的限流电路,然后给Device设备供电,这时候DP上可以测试到高电平脉冲。
031
1、ESD防护
USB接口易受静电损坏,必须加ESD静电管。
2、VBUS电源管理
Host模式需限流电路(如ETA6010),避免过流损坏设备。
3、Type-C的CC引脚处理
若使用Type-C接口,需通过CC引脚当做USB_ID进行Host/Device切换。
声明: