Forum: Mikrocontroller und Digitale Elektronik USB Impedanz 90Ohm


von Martin Kerner (Gast)


Lesenswert?

Guten Morgen,

ich möchte auf einer Platine eine Mini-USB-Buchse (USB 2.0 High speed)
mit einem Mikrocontroller verbinden. In den Application Notes steht,
daß beide Datenleitungen von USB (D+ und D-)auf der Platine genau
gleich lang sein sollen und daß man beide Leitungen auf dem selben
Layer ohne Durchkontaktierungen verlegen soll (wegen der Einhaltung
Impedanz 90 Ohm).

Jetzt habe ich folgendes Problem. Die Anschlüsse der Buchse und des
uControllers liegen "über Kreuz", ich kann also nicht direkt
verbinden. Jetzt gibt es die zwei Möglichkeiten: entweder ich führe
eine Datenleitung um die andere herum, dann ist sie aber ca. 5mm länger
als die andere Leitung. Oder ich mache eine Durchkontaktierung und gehe
mit einer Leitung unter der anderen durch.

Welche Lösung ist besser?

Gruß, Martin.

von Thorsten (Gast)


Lesenswert?

Ich würde keine Durchkontaktierung nehmen. Eine um 5mm längere
Leiterbahn stellt i. d. R. kein Problem da, ansonsten kannst du die
kürzere Leiterbahn kurz vor der Buchse z. B. mit einer "Schleife"
künstlich verlängern. Darf man fragen, um welchen Microcontroller es
sich handelt?

von Martin Kerner (Gast)


Lesenswert?

Hallo Thorsten,

es handelt sich um den Cypress Cy7C68013. Da es eine echte High-Speed
(480MBit/s) Verbindung ist, ist der Anschluß sehr kritisch. Bei einer
Platine hatte ich die Leiterbahnbreite von D+ und D- falsch berechnet,
was zu einer differentiellen Impedanz von ca. 110Ohm geführt hat. Das
führte schon zu zahlreichen CRC-Fehlern.

Gruß, Martin.

von Thorsten (Gast)


Lesenswert?

Oh interessant. Ich hatte mal was mit dem CY7C68300 (USB-ATA-Bridge)
gemacht, bei mir war eine Leiterbahn auch etwas länger. Ich hatte den
Eindruck, daß alles problemlos funktioniert. Wie bekommt man eigentlich
Infos über die aufgetretenen CRC-Fehler?

von Benedikt (Gast)


Lesenswert?

Kann man die CRC Fehler irgendwie auch bei normalen USB Geräten erkennen
?

Ich habe mir die USB Anschlüsse im PC in die Frontblenden eingebaut.
Dazu habe ich die Anschlüsse auf dem Mainboard einfach mit normalem
Flachbandkabel mit den USB Buchsen in den Frontblenden verbunden.

Ich hatte eigentlich noch nie Probleme damit. Drucker, Memorystick,
Digitalkmamera usw. funktionieren alle problemlos.

von Martin Kerner (Gast)


Lesenswert?

Hallo,

der CY7C68013 hat einen Zähler für die Anzahl der auftretenden
USB-Fehler (USBERRIRQ-Register). Ich habe den uController so
programmiert, daß er das Register ausliest und an den PC sendet. So
kann ich über die Windows-Software die Anzahl der Fehler und damit die
Qualität der USB-Verbindung ablesen.

Bei normalen USB-Geräten kann man die CRC-Fehler vermutlich nur dann
erkennen, wenn der Entwickler des Geräts dafür eine Testsoftware
geschrieben hat und veröffentlicht. Ob es in Windows eine
geräteunabhängige Testmöglichkeit gibt, kann ich nicht sagen.

Gruß, Kerner.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.