Die allgemeine Antwort auf diese Frage lautet "Ja". Der VBUS (+ 5 V vom Kabel) muss an das Gerät angeschlossen werden, auch wenn es mit Strom versorgt wird. Der Grund ist wie folgt:
Um den Verbindungsvorgang auf der Host-Seite zu starten, muss das Gerät D + (im FS / HS-Modus) oder D- (im Fall eines LS-Geräts) hochziehen.
USB-Spezifikationen schreiben jedoch zwingend vor, dass kein USB-Gerät Strom an einem Schnittstellen-Pin abgibt, es sei denn, es ist an ein Kabel angeschlossen (siehe Abschnitt 7.1.5.1).
Die Spannungsquelle am Pull-up-Widerstand muss von der Stromversorgung über das USB-Kabel abgeleitet oder gesteuert werden , sodass der Pull-up-Widerstand beim Entfernen von VBUS keinen Strom auf der Datenleitung liefert, an die er angeschlossen ist.
Wenn ein USB-Gerät nicht über diese Steuerung verfügt, ist eine der Datenleitungen eine Stromquelle. Vorzeitige Behauptung von Klimmzügen war eine Quelle von Problemen für einige ältere USB-Hosts. Aus diesem Grund wurde diese Regel eingeführt, und im USB-IF-Zertifizierungsprogramm gibt es dafür einen speziellen Test .
Daher ist der USB-VBUS ein wichtiges "Side-Band" -Signal im USB-Verbindungsprotokoll. Daher verfügen normale USB-Geräte-ICs über einen separaten Eingangspin, um das Vorhandensein eines USB-Hosts festzustellen. Einige IC-Hersteller (z. B. FT232H, MCP2221 usw.) überspringen diese Anforderung und gehen davon aus, dass ihr Chip nur in einer busgespeisten Konfiguration verwendet wird, in der die Pull-up-Steuerungsanforderung automatisch erfüllt wird. Wenn diese Chips jedoch in Designs mit eigener Stromversorgung ausgeführt werden, sind einige zusätzliche Schaltungsanstrengungen erforderlich, um die Aktivierung von Pull-ups mit dem Vorhandensein von VBUS am USB-Anschluss zu verknüpfen.
In Bezug auf das "Handshake" -Protokoll für die USB-Verbindung ist USB nicht auf den von VBUS entnommenen Strom angewiesen. Das Protokoll lautet wie folgt: Auf dem Host-Port muss VBUS aktiv sein. VBUS ist mit dem Gerät verbunden; Gerät erkennt den VBUS und zieht 1.5k an einem der D + / D- Drähte hoch; Der Host erkennt diese Verbindung und aktiviert nach einer Verzögerung von 100 ms die USB_RESET-Signalisierung (SE0 usw.).