Hallo, ich sitze gerade am Layouten meiner Platinen. Jedes Modul hat einen ATMEga644 die als Slaves über SPI mit einem MASTER (ATMega644) kommunizieren. Muss ich beim Layouten irgendwelche einschränkungen berücksichtigen? Bisher hab ich alles auf steckbrettern aufgebaut und funktioniert wunderbar. allerdings sind es dort nur 2 Slaves und es werden mehr wenn ich Platinen fertige. Ich habe auch gehört, man kann für SPI Treiberbausteine verwenden??? briongt mir das was? danke gruss Patrick
@ Patrick Ka (kaplan) >ich sitze gerade am Layouten meiner Platinen. Jedes Modul hat einen >ATMEga644 die als Slaves über SPI mit einem MASTER (ATMega644) >kommunizieren. >Muss ich beim Layouten irgendwelche einschränkungen berücksichtigen? Naja, zumnindest der SPI-Takt sollte ein wenig mit Respekt geroutet werden. Nicht durch tausend ICs durchführen und nicht lange parallel zu Signalen mit grossen/schnellen Strömen layouten (Z.B. Leistungstreiber für Motoren, Relais etc.) >Ich habe auch gehört, man kann für SPI Treiberbausteine verwenden??? >briongt mir das was? In diesem Fall nicht. MFG Falk
> Muss ich beim Layouten irgendwelche einschränkungen berücksichtigen?
Ich wuerde an den enden des Busses jeweils eine Terminierung routen.
(100 Ohm+100pF) Und wenn alles fertig ist dann schaust du mal mit einem
besseren Ossi wie so der Takt aussieht. Wenn noetig bestueckst du die
dann.
Olaf
@ Olaf (Gast) >Ich wuerde an den enden des Busses jeweils eine Terminierung routen. >(100 Ohm+100pF) Und wenn alles fertig ist dann schaust du mal mit einem >besseren Ossi wie so der Takt aussieht. Wenn noetig bestueckst du die >dann. Schaden kanns nicht, aber bis ca. 50 cm Leitungslänge sollte da wenig anbrennen (unter der der Annahme von 10ns Anstiegszeit). Ausserdem braucht man schon ein recht schnelles Oszi (300MHz++) + guten Tastkopf + KnowHow um dann die Reflexionen richtig zu messen. MfG Falk
> Ich wuerde an den enden des Busses jeweils eine Terminierung routen. > (100 Ohm+100pF) Und wenn alles fertig ist dann schaust du mal mit einem > besseren Ossi wie so der Takt aussieht. Wenn noetig bestueckst du die > dann. Was ist denn ein besserer Ossi?
super vielen dank. Ich nutz EAGLE und bin gerade erstmal am Schematic. >Ich wuerde an den enden des Busses jeweils eine Terminierung routen. >(100 Ohm+100pF) Und wenn alles fertig ist dann schaust du mal mit einem >besseren Ossi wie so der Takt aussieht. Wenn noetig bestueckst du die >dann. D.h. der Bus wird eine lange Wurst? Meine Slaves sind auf einer fläche von 40 mal 30 cm verteilt. könnte ich den slave in der mitte anordnen und strenförmig den SPI Bus verteilen? jeder slave wird auf einem separaten board sein, denn ich hab nur non profit eagle. Kann ich dann ein spezielles abgeschirmtes kabel nutzen oder soll ich die boards mit einander zusammenstecken über spezielle stecker? >Schaden kanns nicht, aber bis ca. 50 cm Leitungslänge sollte da wenig >anbrennen (unter der der Annahme von 10ns Anstiegszeit). Ich takte mit 5Mhz (1/4 CLK). also müsste das doch passen.
Geiz ist Geil ??? denn ich hab nur non profit eagle. :-( Verlangsame doch den Clock, solange bis es passt.
@ Patrick Ka (kaplan) >D.h. der Bus wird eine lange Wurst? Meine Slaves sind auf einer fläche Ja. >von 40 mal 30 cm verteilt. könnte ich den slave in der mitte anordnen >und strenförmig den SPI Bus verteilen? Nein, das ist eher schlecht. Besser lange Wurst mit Terminierung am Ende wie beschrieben. >jeder slave wird auf einem separaten board sein, denn ich hab nur non >profit eagle. Kann ich dann ein spezielles abgeschirmtes kabel nutzen >oder soll ich die boards mit einander zusammenstecken über spezielle >stecker? Wenn du normales Flachbandkabel nutzt und wenigstens neben dem SPI-Takt ne Masse führst (an beiden Enden auf Masse legen!) passt das wunderbar. 1m sollte da kein Problem sein. >Ich takte mit 5Mhz (1/4 CLK). also müsste das doch passen. Immer wieder ein Irrtum. Die FREQUENZ ist nicht entscheidend! Es ist die ANSTIEGSZEIT der Signale, und die ist immer gleich, egal wie der Teiler für den SPI-Takt eingestellt ist. Die IOs schalten immer gleich schnell. >Verlangsame doch den Clock, solange bis es passt. Nein, das ist Murks. MfG Falk
>> Geiz ist Geil ???
Ich kanns mir als Student nicht leisten und das Budget für meine Arbiet
bruach ich für Bauteile :)
@Falk
suepr hilfe, danke
Hmm jetzt hab ich doch noch Fragen: für die "SPI Wurst" bin ich grad am entwerfen des Steckers und des Kabels. also ich hätte ein flachband kabel genommen: [5V,GND, SCK, MOSI, MISO, SS] oder soll SCK beidseitig von GND umgeben sein. oder sollen die Signale komplett mit ground umschirmt werden und gar kein flachband kabel genutyt werden. >Wenn du normales Flachbandkabel nutzt und wenigstens neben dem SPI-Takt >ne Masse führst (an beiden Enden auf Masse legen!) passt das wunderbar. >1m sollte da kein Problem sein. ich werde ca 1m erreichen. wie genau sieht dann die terminierung aus? Bei Allen Slaves schleif ich durch bis auf den letzten? >Ich wuerde an den enden des Busses jeweils eine Terminierung routen. >(100 Ohm+100pF) heisst das an jedem Signal(SCK, Mosi,Miso,SS) wird am ende (100Ohm+100pF) in serie auf GND geschalten?
..oder soll SCK beidseitig von GND umgeben sein. oder sollen die Signale komplett mit ground umschirmt werden und g.. Am besten ist sowas: 1) 5V SS (2 3) 5V SCK (4 5) 5V MOSI (6 7) GND MISO (8 9) GND GND (10 also ein 10pol. Flachbandkabel, als Stecker zB 2x5pol so anschließen, dass es auf dem Kabel sowas ergibt: 5V-SS-5V-SCK-5V-MOSI-GND-MISO-GND-GND ^ ^ ^ ^ (ist von "Masse" eingebettet) Hinweis: Die Betriebsspannung sehr gut abblocken! (100nF) SOmit ist garantiert, dass die 5V-Schiene wechselspannungsmäßig auch Masse ist!
> [5V,GND, SCK, MOSI, MISO, SS] 5V,SCK,GND,MOSI,SS,MISO waer besser. Der Idealfall waere, das sich rechts und links von jeder Signalleitung extra MAsse befinden wuerde. Halte ich aber hier noch nicht fuer notwendig. Das haengt in der Tat von der Geschwindigkeit der Bustreiber und der Leitungslaenge ab und nicht von der Taktfrequenz auf dem Bus. Ich selbst verwende einen solchen Bus mit Flachbandkabel mit 0.5m und musste da schon terminieren! Ich hatte uebrigens ueberlegt ob ich in Zukunft fuer solche Anwendungen nicht SATA Kabel zweckentfremden sollte weil die so schoen billig sind. Man muesste nur mal irgendwo die Stecker zum aufloeten auf die Platine auftreiben. > heisst das an jedem Signal(SCK, Mosi,Miso,SS) wird am ende > (100Ohm+100pF) in serie auf GND geschalten? Die Selectleitung halte ich fuer unkritisch weil die nur einmal vor und nach der Uebertragung ihren Pegel aendert und dann so bleibt. Olaf
...heisst das an jedem Signal(SCK, Mosi,Miso,SS) wird am ende (100Ohm+100pF) in serie auf GND geschalten?. Ja. Vielleicht ist es bei dir sinnvoll, jedem Teilnehmer zwei Stecker mitzugeben: Diese beiden sind an den Enden der Platine und schleifen sich durch die Platine (über die Schiebereg). somit hast immer einmal rein, und einmal raus. am letzten steckst dann einfach die terminierung an. (die kann ja die rückverbindung mosi-miso mit sicherstellen) Und ja, es ist besser jedem der signal sck,miso,mosi,ss so eine terminierung zu geben. µC T#1 T#n Term. sck -|---..---|-C-|--------....------|-C-|--..--|-----T mosi-|---..---|E-A|--------....------|E-A|--..--|-o---T misoT|---..---|---|--------....------|---|--..-|-o (o: verbindung) ss---|---..---|-S-|--------....------|-S-|--..-|-----T C: Takteingang des SRG im Teilnehmer E: Dateneingang des SRG im Teilnehmer A: Datenausgang des SRG im Teilnehmer S: Enableeingang des SRG im Teilnehmer T: Terminierung 100p+100Ohm
@ Patrick Ka (kaplan) >also ich hätte ein flachband kabel genommen: >[5V,GND, SCK, MOSI, MISO, SS] Naja, SCK besser noch mal mit GND gegenübr MOSI abschirmen. Oder einfach GND und SCK tauschen, das geht aus. >oder soll SCK beidseitig von GND umgeben sein. oder sollen die Signale >komplett mit ground umschirmt werden und gar kein flachband kabel >genutyt werden. Flachbandkabel ist voll OK. >Bei Allen Slaves schleif ich durch bis auf den letzten? Ja. >heisst das an jedem Signal(SCK, Mosi,Miso,SS) wird am ende >(100Ohm+100pF) in serie auf GND geschalten? Ja. MfG Falk
@ Matthias (Gast) >Vielleicht ist es bei dir sinnvoll, jedem Teilnehmer zwei Stecker >mitzugeben: Naja, zuviel Stecker sind aber auch schnell ne schöne Fehlerquelle. Würde ich nicht machen. MFg Falk
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.