自供电 USB 设备是否必须从主机端口连接到 VCC?

电器工程 USB USB设备
2022-01-05 23:15:48

自供电的 USB 外围设备提供自己的电源,那么可以只将 D+、D- 和 GND 连接到主机端口,还是总是必须连接 +5V,然后等待设备的协商阶段告诉主机它是自供电的,因此不需要任何电源,非常感谢?

我正在查看的特定外围设备基于 FTDI FT4232H USB 到串行适配器,但我真的希望能得到一个通用的答案。

4个回答

对于自供电设备,请勿将其 5V 连接到主机的 5V,您可能会烧毁任一电源。GND并且D+D-会做得很好。

请注意,最高等级为 +3.6V,D+D-不是您预期的 5V!

这个问题的一般答案是肯定的,即使它是自供电的,也必须将 VBUS(来自电缆的 +5V)连接到设备。原因如下:

要在主机端启动连接过程,设备必须上拉 D+(在 FS/HS 模式的情况下)或 D-(在 LS 设备的情况下)。

但是,USB 规范有一个强制性要求,即除非连接到电缆,否则任何 USB 设备都不应在任何接口引脚上提供任何电流,请参阅第 7.1.5.1 节,其中写道:

上拉电阻上的电压源必须来自USB 电缆上的电源或受其控制,这样当 VBUS 被移除时,上拉电阻不会在其所连接的数据线上提供电流。

如果 USB 设备没有此控件,则其中一条数据线将成为电流源。过早断言上拉是一些传统 USB 主机问题的根源。这就是制定此规则的原因,并且在 USB-IF 认证计划中对此进行了特殊测试。

因此,USB VBUS 是 USB 连接协议中一个重要的“边带”信号。因此,普通的 USB 设备 IC 确实有一个单独的输入引脚来检测 USB 主机的存在。一些 IC 制造商(例如 FT232H、MCP2221 等)跳过此要求,假设他们的芯片将仅用于总线供电配置,自动满足上拉控制要求。然而,在将这些芯片设计为自供电设计时,需要一些额外的电路工作来将上拉的启用与 USB 端口上存在的 VBUS 联系起来。

关于 USB 连接“握手”协议,USB 不依赖于从 VBUS 汲取的电流。协议是这样的:主机端口必须激活 VBUS;VBUS 连接到设备;设备看到 VBUS 并在其中一根 D+/D- 线上上拉 1.5k;主机看到此连接,并在 100 毫秒延迟后断言 USB_RESET 信号(SE0 等)。

正如@GustavoLitovsky 所观察到的,除了过流情况外,主机不需要监控 VBUS 电流。因此,下游的自供电设备只需通过以下两种方式之一将其本地 +5V 连接到其 VBUS:直接,并切断电缆中的 VBUS 线;或者,连接或本地 5V + 主机 VBUS,最好使用理想二极管,如 LTC4357*,调节 NFET,如调节 25mV 压降的 FDB3632。

* https://www.analog.com/media/en/technical-documentation/data-sheets/4357fd.pdf

最初的问题是关于 FTDI 设备。

Ale..chenski 在标准中提到需要“或由 USB 电缆上提供的电源控制”

FTDI 文档讨论了使用电缆中的 VBUS 5v 使用 VBUS 和 GND 之间的分压器来设置 FTDI RST# 引脚的值。因此,当连接电缆时,RST#=2.5v,即逻辑 1。但当电缆断开时,RST#=0,设备复位,驱动各种 USB 线进入高阻抗状态。

所以是的,USB 5v 应该与 FTDI 设备一起使用。