Forum: Mikrocontroller und Digitale Elektronik SPI Schaltplan ?


von Oli (Gast)


Lesenswert?

Hallo zusammen,

ich beschäftige mich gerade mit SPI. Ich habe das prinzip soweit 
verstanden (MOSI, MISO, SSL, SCK, ....). Nun wollte ich mein wissen auch 
in die tat umsetzen.

Wie baue ich das netzwerk denn auf? Ich habe erfahrung mit dem I2C bus, 
dort ist es ja so, dass man pull-up widerstände jeweils für CLK und DATA 
braucht.

Ich habe mich in den Foren und in google umgeschaut, leider habe ich nur 
schematische pläne bzw. skizzen gefunden.

Oder ist es wirklich so, dass man einfach die ausgänge (mosi, miso, sck) 
des masters direkt an den slave anschließt und jeweils für die slaves 
eine SSL Leitung. UND DAS ALLES OHNE PULL-UP ??


Wäre euch wirklich dankbar!

gruss an alle
  oli


von tom (Gast)


Lesenswert?

ja, das geht ohne pullups.
Eventuell kannst du noch einen 50Ohm Widerstand in jede Leitung setzen, 
der Verbessert die EMV Eigenschaften und verringert die Überschwinger 
wenn du sehr hoch taktest.

von Jan (Gast)


Lesenswert?

Bei I2C braucht man pullups ja eigentlich nur deshalb, weil mehrere ICs 
auf die selbe Leitung schreiben koennen muessen und es sonst zu 
Kurzschlüssen kommen könnte, wenn zwei ICs gleichzeitig unterschiedliche 
Pegel anlegen. Bei SPI kann das aber nicht vorkommen, da nur der Master 
auf MOSI schreiben darf und immer nur der Slave auf MISO schreiben kann, 
der mit Select ausgewählt wurde.

von Oli (Gast)


Lesenswert?

Vielen Dank für die express-antwort!

  gruss

     oli

von Oli (Gast)


Lesenswert?

@Jan

 Aber wie sieht es denn mit MISO aus? Da sind doch die alles Slaves 
miteinander verbunden , die dann  mit dem eingang MISO des Master 
verbunden sind? http://de.wikipedia.org/wiki/Bild:SPI_Stern.svg


 gruss
   oli

von Falk (Gast)


Lesenswert?

@tom

>Eventuell kannst du noch einen 50Ohm Widerstand in jede Leitung setzen,
>der Verbessert die EMV Eigenschaften und verringert die Überschwinger
>wenn du sehr hoch taktest.

Die Überschwinger sind, wenn sie denn wirklich da sind, UNabhängig von 
der Taktfrequenz. Die sind dan auch bei 1 kHz da. Das entscheidende 
Kriteriumist die Schaltzeit (Anstiegs/Abfallzeit) der Treiber.
Ausserdem, diese Serienterminierung kann bei der Taktleitung daneben 
gehen. Multi-Drop Taktleitungen darf man eigentlich nur am Ende 
terminieren (AC oder Split-Terminiation). Sonst könnten schnelle 
Takteingänge allergisch reagieren.

MFG
Falk

von Oli (Gast)


Lesenswert?

Sorry, ich bin kein elektronik-freak. Ich beschäftige mich seit ca. 
2monaten  mit µc's, daher ist mir jetzt nicht ganz klar was ich machen 
muss?!

Wie soll ich jetzt vorgehen? Soll ich alle leitungen zwischen master und 
slave (MISO, MOSI, SSL) mit 50Ohm pullups verbinden und CLK ohne dem 
pullup, da Falk davon abgeraten hat?

von Falk (Gast)


Lesenswert?

@Oli

>Wie soll ich jetzt vorgehen?

Verbinde einfach die die Signal direkt vom Master zu den Slaves. Halte 
die Leitungen einigermassen kurz (<20cm) und mach kein wild fliegendes 
Klingeldrahtverhau. Dann passt das.
Keine Pull ups (erst recht nicht 50 Ohm!) und kein Serienwiderstände.
Wenn du es ganz sicher machen willst nimm Flachbandkabel und benutze 
jede 2. Ader für GND (und bitte GND auf allen Adern auf BEIDEN Seiten 
übereine kurze Verbindung mit GND verbinden).

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
Noch kein Account? Hier anmelden.