飞凌干货丨帮你避开USB VBUS上的“坑”

原创 2020-03-07 18:53:00 Am335x USB VBUS

 

最近有些客户自己绘制的板子遇到USB的使用问题,主要表现在USB设备不识别,VBUS 报错等。最后分析出的结果很多都是掉进了USB VBUS设计上的坑里。所以在这里简单地分享下USB VBUS设计注意事项。我们拿AM335x平台作为例子来说明。

▼先上一张AM335x RM里关于USB OTG引脚的说明图

 

相比其他的平台,TI的AM335x对VBUS的定义比较特殊,从上图可以看到USBx_VBUS不再是一个简单的电源输入,而是作为USB的电压检测输入,这一点很重要,一会再说。

AM335x采用的是两路USB OTG控制器。

所谓的OTG,就是USB模块可以在host模式和device模式之间切换工作。相比早期芯片里的USB HOST控制,OTG控制器不仅在内部状态机设计更加复杂,而且增加了几路外部信号以及相对应的检测,比如ID脚以及VBUS检测。但是许多客户在设计中,往往都只将关注点放到了ID脚的处理上,而简单地认为VBUS处理与USB  HOST控制器相同。其实VBUS是一个非常重要的检测信号,OTG 控制器在USB 设备识别、HOST 和device模式切换过程中,VBUS都作为一个触发开关来用,而在普通的USB HOST控制器里,VBUS仅仅只是作为供电电源使用。

USB刚一开始连接,会瞬间需要高于500mA的电流。这时如果VBUS的电流供电能力不足,就会在5V上产生跌坑。

▼下图即为我们为一客户排查问题时抓到的跌落波形

 

这个电压跌落一方面可能会引起USB 设备工作的异常,另一方面,当这个电压跌落低于4.4V时,AM335x会停止进行下一步的枚举过程,同时进入到VBUS 错误处理(或者叫VBUS过流处理)并输出相应错误信息。完成处理后重新开始HOST 或DEVICE工作模式的检测。

这个跌落的产生很有可能是本身电源电路设计问题,启动或插拔设备时5V电源供电能力不够。

■ 由于客户的产品为样机阶段,我们建议优化电源设计,同时在USB_VBUS上按照官方推荐添加120uF的电容。电容的主要目的就是为了在出现跌坑时,有及时放电的过程以保证电压的稳定。

■ 如果不修改电源设计,这个问题还有一种处理方案,刚刚上面提到了AM335x的VBUS只是电压检测而已,并不会过很大的电流,所以只需添加一个RC滤波电路把这个跌落滤除即可,经过测试此方案可行,即使外部5V跌落依然存在,但是经过RC后到达VBUS上的电压没有变化,USB设备识别正常。

其实如果使用其他的平台还有另一种方案,AM335X的VBUS阈值电压是4.4V,是不可以修改的,但是像IMX6系列或者S5P4418这些CPU的VBUS阈值是可以修改的,如果使用类似这些可以调整阈值的平台,也可以通过降低阈值来达解决这个问题,不需要改PCB就可以正常使用USB设备(当然这是下策)。

▼下图为IMX6Q RM中提到的VBUS阈值设置

 

USB VBUS的“坑”就先给大家分享到这里,希望对您的设计和排查问题有一定帮助。


相关产品 >

  • FET335xD核心板

    飞凌AM335系列核心板基于TI RM Cortex-A8 架构 AM335x 微处理器设计,AM335x核心板整板尺寸47*71mm;AM335X核心板芯片全部采用工业级用料;AM335x核心板引脚丰富,引出200pinCPU引脚,原生支持6路UART;AM335x核心板支持市面上主流的操作系统,Linux-RT、Linux3.2、Android2.3、Android4.2、Win CE7.0、Win CE6.0。更多AM335x系列概述,AM335处理器特点请联系在线客服
    了解详情
    FET335xD核心板
  • OK335xD开发板

    飞凌AM335x开发板已经推出几年,经过行业检测,稳定性得到肯定。多年行业积累,AM335x的解决方案涉及各行各业,欢迎进店咨询。飞凌AM335x开发板基于TI Cortex-A8 AM335x CPU设计开发,主频800MHz,支持Linux、RTLinux、Wince、安卓系统。AM335x开发板工业级宽温,配合丰富的外设接口,适用于各种恶劣环境应用。 了解详情
    OK335xD开发板
  • FET62xx-C核心板

    FET6254-C核心板基于TI Sitara™ AM62x系列工业级处理器设计。采用Arm Cortex A53架构,并集成了广泛的接口,如2路支持TSN的千兆以太网、USB 2.0CAN-FD,AM6254核心板兼容AM62x全系列处理器,提供单核、双核、四核可选,功能引脚完全兼容,飞凌嵌入式已经适配AM6254 AM6231 AM6232三款芯片为您带来灵活的成本组合方案,AM62x可应用于广泛的工业环境,如人机界面(HMI)、工业计算机、边缘计算、零售自动化、充电桩控制单元(TCU)、医疗设备等。

    了解详情
    FET62xx-C核心板
  • OK62xx-C开发板

    AM62x 开发板是围绕飞凌AM62x核心板设计的独立测试和开发平台。AM62x处理器由四核64位Arm -Cortex -A53微处理器 和Cortex-M4F组成。AM62x开发板整板工业级设计,并在开发过程中进行严苛的环境温度测试、压力测试、长期稳定性运行测试,使AM62x可在各种严苛环境稳定运行 了解详情
    OK62xx-C开发板

推荐阅读 换一批 换一批