Forum: Mikrocontroller und Digitale Elektronik USB und SPI über Pin-Header?


von DasLedProjekt (Gast)


Lesenswert?

Guten Morgen!


Ich arbeite zusammen mit kollegen gerade an einem Projekt wo wir USB und 
SPI benötigen. Aus Platzgründen gibt es eine Hauplatine an welcher um 
90° abgewinkelt eine zweite Platine über 2.54" Pinheader (90° 
Winkelstück) verbunden werden soll.

Nun muss leider das USB-Signal sowie die SPI-Verbindung für die SD-Karte 
über diese Pinheader auf die zweite Platine, so das man dann von aussen 
an die Ports kommt.


Mit USB und SPI haben wir eigentlich überhautp keine erfahrung. Die 
beiden Signale enden auf einem USB-RS232 (USB) und auf dem STM32F401 
(SPI2).

Uns ist bekannt das USB und SPI und ähnliche Signale immer 
matched-lenght und matched-pair sein müssen.

Prinzipell sind die Pin-Header ja auch gleich lang und im gleichen 
Abstand, aber wir sind uns nicht sicher.

Kann uns jemand sagen ob das mit den Pin-Headern zu Problemen führen 
kann?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

In PCs gibt es viele interne USB-Anschlüsse, die auf Pinheader im 
0.1"-Raster geführt werden und mit sogenannten "Dupont"-Steckverbindern 
dann z.B. auf Slotbleche geführt werden.

Zumindest für USB2.0 (mit 480 MBit/sec) funktioniert das problemlos 
(bzw. die Probleme, die auftreten, sind Stromversorgungsprobleme, die 
sich durch angepasste Leitungsquerschnitte und -Längen in den Griff 
bekommen lassen).

Wie kritisch SPI ist, hängt vom Takt ab; sofern Du keine Taktraten im 
zweistelligen MHz-Bereich (oder mehr) verwendest, ist das deutlich 
unkritischer als USB.

von M. K. (kichi)


Lesenswert?

Rufus Τ. F. schrieb:
> Wie kritisch SPI ist, hängt vom Takt ab; sofern Du keine Taktraten im
> zweistelligen MHz-Bereich (oder mehr) verwendest, ist das deutlich
> unkritischer als USB.

Die Terminierung sollte jedoch nicht vergessen werden. Sonst kann es 
unter Umständen ab 10MHz auch schon interessant werden.

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

DasLedProjekt schrieb:
> Kann uns jemand sagen ob das mit den Pin-Headern zu Problemen führen
> kann?

 Normalerweise nicht - das funktioniert bei PC mit Harddisks und
 DVD ohne Probleme, auch RAM und Video Karten mit viel schnelleren
 Signalen werden eingesteckt.


Michael K. schrieb:
> Die Terminierung sollte jedoch nicht vergessen werden. Sonst kann es
> unter Umständen ab 10MHz auch schon interessant werden.

 Die Terminierung sollte man sowieso auf der ersten Platine machen,
 unabhängig davon, ob da eine zweite Platine dranhängt oder nicht.

von Arduinoquäler (Gast)


Lesenswert?

Michael K. schrieb:
> Die Terminierung sollte jedoch nicht vergessen werden.

Ja.

Michael K. schrieb:
> Sonst kann es
> unter Umständen ab 10MHz auch schon interessant werden.

Nein. Nicht ab 10MHz, sondern prinzipiell. Eine Schaltflanke
ist bei langen Leitungen immer gefährdet und kann deformiert
werden - unabhängig von der verwendeten Taktfrequenz.

von DasLedProjekt (Gast)


Lesenswert?

Mit Terminierung sind die 27Ohm Widerstände in der USB-Leitung gemeint 
oder?


Bezüglich der Signale, die USB-Verbindug geht auf einen RS232 Wandler, 
welcher dann mit der Baudrate 115200 arbeitet, das ist für USB glaube 
ich noch relativ langsam oder?

Die SPI Verbindungsgeschwindigkeit ist mir leider unbekannt.

von M. K. (kichi)


Lesenswert?

Arduinoquäler schrieb:
> Nein. Nicht ab 10MHz, sondern prinzipiell. Eine Schaltflanke
> ist bei langen Leitungen immer gefährdet und kann deformiert
> werden - unabhängig von der verwendeten Taktfrequenz.
Das ist natürlich richtig. Entscheidend sind die Schaltflanken.

Marc V. schrieb:
> Die Terminierung sollte man sowieso auf der ersten Platine machen,
>  unabhängig davon, ob da eine zweite Platine dranhängt oder nicht.
Naja, kommt noch drauf an ob man sich für Serien- oder 
Parallelterminierung entscheidet.

DasLedProjekt schrieb:
> Bezüglich der Signale, die USB-Verbindug geht auf einen RS232 Wandler,
> welcher dann mit der Baudrate 115200 arbeitet, das ist für USB glaube
> ich noch relativ langsam oder?
Die Baudrate nach dem RS232-Wandler hat mit der USB-Baudrate aber nichts 
zu tun.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

DasLedProjekt schrieb:
> Bezüglich der Signale, die USB-Verbindug geht auf einen RS232 Wandler,
> welcher dann mit der Baudrate 115200 arbeitet, das ist für USB glaube
> ich noch relativ langsam oder?

Das ist nicht relevant; die USB-Verbindung arbeitet mit 
USB-Geschwindigkeit, und das sind bei den üblichen USB-UARTs 12 
MBit/sec.

Wenn Du einen FT232H o.ä. verwendest, können das auch 480 MBit/sec sein. 
Das ist kritisch.

Wichtiger als die Steckverbindung ist die Leitungslänge. Wenn Du das 
USB-Signal über den Pinheader führst, aber dann nur noch ein paar cm 
Platine/Leitung daran hängen, bis es zur USB-UART geht, ist das 'ne 
komplett andere Angelegenheit als wenn da ein Meter oder mehr 
dazwischenhängt.


Und das ist auch bei SPI relevant - wie lang ist die gesamte Leitung 
vom µC bis zum letzten Ende?

von Wolfgang (Gast)


Lesenswert?

Marc V. schrieb:
> Die Terminierung sollte man sowieso auf der ersten Platine machen,
>  unabhängig davon, ob da eine zweite Platine dranhängt oder nicht.

Und die Reflektionen von der zweiten Platine sollen dann wild durch die 
Gegend geistern?

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Wolfgang schrieb:
> Und die Reflektionen von der zweiten Platine sollen dann wild durch die
> Gegend geistern?

 Na, na, nicht gleich übertreiben.

 Wenn sich alles auf der anderen Platine befindet, handelt es sich um
 ein paar Zentimeter, nicht um Meter. Und wenn vor der Pinheaderleiste
 terminiert wird, ist es ungefähr die Mitte und somit optimal.

 Wenn es nicht so wäre, würde der TO das mit Kabeln verbinden und nicht
 mit Steckverbindern, oder ?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Meinst Du, die Dinger an den Enden von Kabeln wären keine 
Steckverbinder?

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Rufus Τ. F. schrieb:
> Meinst Du, die Dinger an den Enden von Kabeln wären keine
> Steckverbinder?

DasLedProjekt schrieb:
> Aus Platzgründen gibt es eine Hauplatine an welcher um
> 90° abgewinkelt eine zweite Platine über 2.54" Pinheader (90°
> Winkelstück) verbunden werden soll.

 Von der zweiten Platine mögen vielleicht Kabel ausgehen, aber so,
 wie es der TO geschrieben hat, gibt es zwischen beiden Platinen
 keine Kabeln.
 Zumindest verstehe ich das so...

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.