Hi, ich möchte nochmal sicherhaltshalber nachfragen. Ich möchte einen SPI-Bus von einer Platine auf eine andere bringe und das Ganze über Stiftleiste. Jetzt habe ich oftmals gelesen, dass man wenn die Daten per Flachbandkabel übertragen werden jeweils zwischen den Datenleitungen eine GND-Leitung mitgeführt werden sollte. Gilt das bei Übertragung per Stiftleisten auch? Wird ja insbesondere dann schwierig wenn zweireihige Stiftleisten verwendet werden. Danke
@ Rike (Gast) >Stiftleiste. Jetzt habe ich oftmals gelesen, dass man wenn die Daten per >Flachbandkabel übertragen werden jeweils zwischen den Datenleitungen >eine GND-Leitung mitgeführt werden sollte. Das ist der Idealfall. Praktisch reichen auch weniger. > Gilt das bei Übertragung per >Stiftleisten auch? Ja. > Wird ja insbesondere dann schwierig wenn zweireihige >Stiftleisten verwendet werden. Warum? Hast du nicht genügend Pins? Für SPI reicht es, wenn man 1-2 Masseleitungen mitführt. Wenn es nur 1 ist, sollte die direkt neben der Taktleitung sitzen, denn das ist die kritischste.
Rike schrieb: > Wird ja insbesondere dann schwierig wenn zweireihige > Stiftleisten verwendet werden. Wieso das denn ? Es gibt sogar zahlreiche solche Verbindungen, bei denen alle Pins einer Reihe an GND liegen, einfacher gehts nicht.Beispiele: parallele Druckerschnittstellen, SCSI. Georg
Falk B. schrieb: > Warum? Hast du nicht genügend Pins? Ich bekommen maximal 10 Pins/Reihe und maximal 2 Reihen auf die Platine. Zudem wird auch noch 3,3V mit übertragen. Mit 5 Signalleitung und jeweils GND dazwischen + 3,3V wird es also einreihig schonmal schwierig. Um zweireihig den selben Effekt zu bekommen stell ich mir vor, dass jeweils zwei Pins aus den beiden Reihen verbunden werden müssen. Dann bräuchte ich also 2 Reihen à 10 Pins wie im Bild 1 gezeigt. Richtig? Alternativ mit weniger Pins könnte ich mir noch eine gekreuzte Variante wie im Bild 2 Vorstellen. Wäre allerdings layouttechnisch ungünstiger. Danke
Es sollten halt auf dem Flachbandkabel immer ein Signalpin gefolgt von einem Massepin sein (Die Litzen die nebeneinander liegen). Von was für eine Taktfrequenz reden wir denn?
Falls es um "normale" Stiftleisten im 2,54mm-Raster geht, reicht es völlig aus, jeden zweiten Pin auf ein Versorgungspotential zu legen. Bei Deinem Bild 1 wäre nur jeder vierte Pins ein Signalpin. Bild 2 ist hingegen absoluter Murks, denn dann hast Du auf Deinem Flachbandkabel direkt benachbarte Signalleitungen, d.h. auf einer wesentlich längeren Strecke als auf der kurzen Stiftleiste und zudem noch mit deutlich geringerem Abstand. Bei SCSI konnte man Leitungslängen von durchaus 5m mit einem einfachen Flachbandkabel überbrücken. Auf jeden Fall solltest Du am jeweiligen Treiberausgang einen kleinen Serienwiderstand von ca. 22 Ohm vorsehen, um die Flankensteilheit etwas zu begrenzen und Reflektionen zu absorbieren. Falls Du wirklich die allerbeste Signalintegrität haben willst, musst Du Steckverbinder mit einem Masseblech zwischen den Stiftleisten verwenden, und alles imedanzkontrolliert führen. Dafür ist SPI aber nicht ausgelegt. In der Tat ist SPI aber ziemlich empfindlich bezüglich "Klingelns" auf der Taktleitung.
Nimm eine mit 2*6 Pins oder 2*8 Pins. In einer Reihe 5 Masse, in der andern Reihe die Signale und an einer Stirnseite zweimal VCC_3V3. Auch ein GND weniger und ein VCC mehr sind OK. Und wenn du wirklich was Gutes tun willst, dann nimm zwei Reihen mehr und spendiere rechts und links vom SCK auch GND, so z.B.: GND GND GND MISO GND MOSI GND GND GND/Code SCK 3V3 GND 3V3 !CS 3V3 !DRDY Eventuell noch 'ne Codierung, falls man das auch verkehrt stecken könnte, sonst auch GND.
Andreas S. schrieb: > Falls es um "normale" Stiftleisten im 2,54mm-Raster geht Ja genau. Andreas S. schrieb: > Bild 2 ist hingegen absoluter Murks, denn dann hast Du auf Deinem > Flachbandkabel direkt benachbarte Signalleitungen, d.h. auf einer > wesentlich längeren Strecke als auf der kurzen Stiftleiste und zudem > noch mit deutlich geringerem Abstand. Ich habe doch kein Flachbandkabel. Aber okay. Ist Murks. Versuch war es Wert :) Andreas S. schrieb: > Auf jeden Fall solltest Du am jeweiligen Treiberausgang einen kleinen > Serienwiderstand von ca. 22 Ohm vorsehen, um die Flankensteilheit etwas > zu begrenzen und Reflektionen zu absorbieren. Dachte bei so kurzen Danteleitungen wäre das nicht notwendig HildeK schrieb: > Nimm eine mit 2*6 Pins oder 2*8 Pins. > In einer Reihe 5 Masse, in der andern Reihe die Signale und an einer > Stirnseite zweimal VCC_3V3. Auch ein GND weniger und ein VCC mehr sind > OK. > Und wenn du wirklich was Gutes tun willst, dann nimm zwei Reihen mehr > und spendiere rechts und links vom SCK auch GND, so z.B.: > > GND GND > GND MISO > GND MOSI > GND GND > GND/Code SCK > 3V3 GND > 3V3 !CS > 3V3 !DRDY > > Eventuell noch 'ne Codierung, falls man das auch verkehrt stecken > könnte, sonst auch GND. Danke das sieht mir plausibel aus. Wie setzt man so 'ne Codierung um? Da nur eine Buchsenleiste auf eine Stiftleiste gesteckt wird könnte die durchaus falsch aufgesteckt werden. Lars schrieb: > Von was für eine Taktfrequenz reden wir denn? <100 kHz
@Rike (Gast) >> Von was für eine Taktfrequenz reden wir denn? ><100 kHz Die Frequenz ist zweitrangig, wichtig ist die minimale Anstiegszeit, siehe Wellenwiderstand.
Rike schrieb: > dass man wenn die Daten per > Flachbandkabel übertragen werden jeweils zwischen den Datenleitungen > eine GND-Leitung mitgeführt werden sollte Rike schrieb: > Ich habe doch kein Flachbandkabel. Da erübrigt sich wohl jeder Kommentar. Georg
Rike schrieb: > Wie setzt man so 'ne Codierung um? In die Buchse wird ein kleiner Plastikpin gesteckt (gibt es zu kaufen, den genauen Namen weiß ich nicht) und der dazugehörende Pin auf der andern Leiste wird abgezwickt.
@ georg (Gast) >> Ich habe doch kein Flachbandkabel. >Da erübrigt sich wohl jeder Kommentar. Nein. Denn auch auf einer kurzen Steckerleiste sollte man eine sinnvolle Signalbelegung und ausreichend GND-Verbindungen vorsehen. Vor Ewigkeiten hatte ich mal mit einem Produkt zu tun, wo über einen 40pol. Steckverbinder ein 28 Bit Videobus bei ca. 40 MHz mit sage und schreibe EINER Masseverbindung drüber ging! Die Signalqualität war grausam, trotzdem lief es irgendwie. Aber solide ist was anderes.
Rike schrieb: > Dachte bei so kurzen Danteleitungen wäre das nicht notwendig Bei den Daten ist es das auch nicht, beim Takt rate ich dir auch dazu. Aber nicht nur wegen der Steckverbindung, sondern grundsätzlich. Ich nehme da immer etwas mehr als 22Ω, so 27Ω, 33Ω oder bei starken Treibern auch mal 39Ω. Hängt auch vom realisierten Wellenwiderstand ab, ist aber im Wert trotzdem nicht kritisch. Netter Verschreiber: Dante-Leitung. Die gibt es auch :-). DANTE = Digital Audio Network Through Ethernet
Falk B. schrieb: > Nein. Denn auch auf einer kurzen Steckerleiste sollte man eine sinnvolle > Signalbelegung und ausreichend GND-Verbindungen vorsehen. Volle Zustimmung! > Vor Ewigkeiten > hatte ich mal mit einem Produkt zu tun, wo über einen 40pol. > Steckverbinder ein 28 Bit Videobus bei ca. 40 MHz mit sage und schreibe > EINER Masseverbindung drüber ging! Die Signalqualität war grausam, > trotzdem lief es irgendwie. Aber solide ist was anderes. Solch einen Kunden hatte ich auch schon. Der Hardwerker fand es besonders schlau, den 50MHz-Oszillator für einen Ethernet-MAC auf eine separate Leiterplatte zu packen und auch nur eine Masseverbindung zu spendieren, trotz zahlreicher anderer hochfrequenter Signale. Das ganze funktionierte so einigermaßen, d.h. mit ziemlich vielen defekten Ethernetpaketen, aber in der EMV-Kabine schrillten dann die Alarmglocken. Dann wurde lieber mit irgendwelchen Folien und Aufklappferriten herumgepfuscht, statt die Ursache des Problems zu lösen.
Da hattet ihr mehr Glück. Wir haben mal eine solche Huckepack-Konstruktion mit 'nem FPGA drauf von englischen Kollegen bekommen. Die funktionierte nicht und wir sollten herausfinden, was da los ist. Naja, zwei, drei GND-Pins unter rund hundert Verbindungen ... An jedem Eck mal ein Stück Lotsauglitze als GND-Verbindung angebracht und schon sah es fürs Erste anders aus.
HildeK schrieb: > An jedem Eck mal ein Stück Lotsauglitze als GND-Verbindung angebracht > und schon sah es fürs Erste anders aus. Bei vielen Leiterplatten mit äußerer Massefläche kratze ich etwas Lack herunter und löte mir erst einmal eine ordentliche Öse aus Entlötlitze darauf. Das hat sich bisher immer sehr bewährt. Für sehr steilflankige Signale ist dann ggf. noch ein separater Masseanschluss in der unmittelbaren Nähe des abgegriffenen Signals nötig, aber für die meisten Messungen reicht die Masseöse völlig aus.
Danke für die vielen Antworten! HildeK schrieb: > Netter Verschreiber: Oops. Ja hab ich sogar selbst schonmal in Studioumgebung mit zu tun gehabt. Um Fehler zu vermeiden hole ich mir ja Tips ein. Niemand kann alles wissen und jede/r macht Fehler. Die dann zu finden ist natürlich immer lästig :) Mein ADC der über die Steckverbindung läuft hat bereits Widerstände in der Referenzschaltung im Datenblatt vorgesehen. Die sind auch im Layout vorhanden. Allerdings sind die mit 100R 'ne ganze Größenordnung höher. Wie kommt das? Sollten auf der Gegenseite am Mikrocontroller auch Widerstände an den ankommenende Leitungen vorgesehen werden? Also an DOUT und !DRDY. Lässt such vermutlich nicht pauschal sagen. Falk B. schrieb: > Nein. Denn auch auf einer kurzen Steckerleiste sollte man eine sinnvolle > Signalbelegung und ausreichend GND-Verbindungen vorsehen. Ich werde es jetzt so machen wie von HildeK geschrieben hat mit 2x8 Pins. Werde also SCK auch noch gut "verpacken".
@Rike (Gast) >vorhanden. Allerdings sind die mit 100R 'ne ganze Größenordnung höher. >Wie kommt das? Das ist Geschmackssache und von der Verbindung abhängig. Flachbandkabel hat um die 120-150 Ohm Wellenwiderstand, da sind 100 Ohm passend. Leitungen auf Platinen haben je nach Geometrie 30-200 Ohm, da gibt es eine größere Vielfalt. >Sollten auf der Gegenseite am Mikrocontroller auch Widerstände an den >ankommenende Leitungen vorgesehen werden? Nein, nur am jeweiligen Signal AUSGANG. Das ist eine Serienterminierung, siehe Wellenwiderstand.
Falk B. schrieb: > @Rike (Gast) > >>> Von was für eine Taktfrequenz reden wir denn? > >><100 kHz > > Die Frequenz ist zweitrangig, wichtig ist die minimale Anstiegszeit, > siehe Wellenwiderstand. Für die Störabstrahlung ja, für die Signalintegrität dann eher wieder nicht weil es da logischer Weise um das Timing geht.
@ Lars (Gast) >> Die Frequenz ist zweitrangig, wichtig ist die minimale Anstiegszeit, >> siehe Wellenwiderstand. >Für die Störabstrahlung ja, für die Signalintegrität dann eher wieder >nicht weil es da logischer Weise um das Timing geht. Auch das stimmt nicht wirklich, denn es gibt keine 100kHz Logik-ICs. Die üblichen ICs arbeiten alle im Bereich von einigen Dutzend MHz, d.h. die Setup-und Holdzeiten liegen auch bei sehr niedrigen Taktraten in dem Bereich. oder anders formuliert, man gewinnt mit niedrigen Taktraten fast nix, man muss sich fast immer mit dem schnellen Timing und der Signalintegrität auseinandersetzen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.