PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : USB Benutzung



Killer
06.07.2007, 23:41
Hallo zusammen,
Ich habe mich mal ein bischen über die USB Technik schlau gemacht und unter anderen folgendes gefunden: https://www.roboternetz.de/wissen/index.php/USB
Bei USB-B gibt es ja 4 Leitungen
1=Vcc
2=D-
3=D+
4=GND

Jetzt zur Frage: Was hat es genau mit dem Plus und Minus der Datenleitungen auf sich? Kann man bei D- (z.B.) nur 0 "hin und zurück" Senden und bei D+ nur 1? Dann wär das ja eine 1Bit breite Übertragung, richtig?

MfG Killer

fluchtpunkt
06.07.2007, 23:54
Stichwort Symmetrische Signalübertragung (http://de.wikipedia.org/wiki/Symmetrische_Signal%C3%BCbertragung)

Das Signal wird zu diesem Zweck parallel durch zwei Signaladern, einmal spannungsrichtig ("Hot") und einmal spannungsinvertiert ("Cold"), übertragen. An der Empfangsseite wird nur die Potentialdifferenz, also die Spannung zwischen den Leitern, ausgewertet. Eine Störeinstrahlung wird auf beiden Leitern spannungsgleich induziert und kommt somit kaum mehr zum Tragen. Voraussetzung ist dafür, dass die Signaladern direkt nebeneinander verlaufen, damit sich die Störung möglichst identisch auf beide Leiter auswirkt. Häufig werden sie auch verdrillt wie etwa die Doppelader.

Killer
07.07.2007, 12:58
Das hatte ich auch schon gefunden. Aber wie sähe denn eine konkrete Übertragung einmal hin und zurück genau aus? Ich kann mie das nicht ganz vorstellen...

MfG Killer

fluchtpunkt
07.07.2007, 13:47
ich weiss jetzt nicht ganz was du genau meinst, aber wenn man stark vereinfacht kann man sich die Kombination aus D+ und D- auch als eine einzelne Leitung D denken.
Und dann funktioniert die Uebertragung halt wie bei anderen Eindrahtsystemen. Entweder alle senden einfach los wenn sie moechten und gucken dann ob noch jemand gleichzeitig mitsendet und brechen ihre Message dann ab wenn jemand mit hoeherer Prioritaet sendet.
Oder das ganze laeuft irgendwie wie ein Frage-Antwort Spiel wobei der Master die Fragen stellt.

Killer
07.07.2007, 16:08
Aber die beiden Leitungen muss man doch in gewisser Weise deaktivieren können wenn man Daten zum Computer senden will. Es könnte doch sonst schlimmstenfalls zu einem Kurzschluss kommen! Oder ist eine Leitung speziel für den Eingang?

MfG Killer

fluchtpunkt
07.07.2007, 19:29
Es sind zwar zwei Leitungen, die aber beide dasselbe uebertragen. Nur das die eine Leitung ihren Highlevel bei sagen wir 5V hat und die andere Leitung ihren Highlevel bei -5V. Beide haben ihren Low-Level bei 0V.
D+ und D- haengen zusammen. Man kann D+ nicht aendern ohne D- zu aendern. Das wird nur fuer die Uebertragungssicherheit genutzt.
Irgendwo im USB-Chip wird aus einem "normalen" Signal einer einzigen Datenleitung ein differentielles Signal erzeugt. Und auf der anderen Seite wird in einem anderen USB-Chip aus dem differentiellen Signal wieder ein "normales" Signal erzeugt.
Wenn man theoretisch das Signal vor dem Umwandler abgreift, auf eine Leitung gibt, und hinter dem 2ten Umwandler wieder einspeist, dann wuerde das ganze auch funktionieren. Nur eben viel stoeranfaelliger.


Und damit es nicht zu einem "Kurzschluss" kommt gibt es erstens Widerstaende und zweitens versetzen die Transceiver die mit dem Senden fertig sind ihren Sendeausgang in einem hochohmigen Zustand. Das kann man vergleichen mit dem Pin eines AVRs der auf Eingang gestellt wird. Der Ausgang aendert dann nichts mehr an der Datenleitung und diese faellt in ihren Idle-Zustand zurueck (durch Pullup oder Pulldown).

Killer
07.07.2007, 19:42
Also kann man immer nur 1Bit übertragen in dem man zum Beispiel +5V und -5V "sendet". Dana kann man das ja als 1 auslesen...
Aber für den Eingang zum Computer müssen doch beide Datenleutung auf -5V geschaltet werden, bevor man von einer anderen "Quelle" zum Computer sendet, um Kurzschlüsse zu vermeiden oder?

MfG Killer

Yossarian
07.07.2007, 20:38
Hallo
Die Pegel an den Datenleitungen betragen 3,3V und 0V.Die Daten werden differentiell übertragen, d.h. wenn eine Leitung high ist, ist die andere low.

Mit freundlichen Grüßen
Benno

Killer
07.07.2007, 22:10
Aber wie müssen die Datenleitungen geschaltet sein, wenn sie die Spannung "abfragen"?????

Yossarian
07.07.2007, 23:06
Hallo

Mit freundlichen Grüßen
Benno

Killer
07.07.2007, 23:25
Okay, wenn ich das jetzt richtig verstanden habe: Wenn die eine "Quelle" empfängt, setzt er beide Leitungen auf 0 wodurch die über hohe Wiederstände automatisch mit GND verbunden werden. Ab dem Zeitpunkt kann eine andere "Quelle" senden, soweit richtig?

MfG Killer

Yossarian
08.07.2007, 00:09
Hallo
Wenn beide Leitungen low sind, heißt das, daß kein Gerät angeschlossen ist, End-of-Packet oder Busreset.
Meine Zeichnung ist nicht ganz richtig. Die pulldown Widerstände sind nur auf der Hub Seite, das angeschlossene Gerät enthält keine pulldowns.

Mit freundlichen Grüßen
Benno