Hallo guten morgen, such Duko für den SPI Bus Gruß Siegfried
Ach sooo - die Datenblätter aller AVRs enthalten eine Doku zum SPI-Bus. SPI ist aber ein oft verwendetes Format aller möglichen Bausteine (SD-Karten, Neztwerk-Controller, Sensoren, Audio-ICs) und daher alles andere, als direkt zu erklären, zumindest vom Protokoll her nicht. Elektrisch gesehen werden im Grunde Daten über ein 8-Bit Schieberegister ausgetauscht, uns zwar dann, wenn der betreffende Chip selektiert ist. Der Bus besteht aus 4 Leitungen pro Chip: Data In (SDI / MOSI), Data Out (SDO / MISO), Serial Clock (SCLK / SCK) und ChipSelect (CS), wobei diese Leitung High- oder Low-aktiv sein kann. Der Bus erlaubt mehrere sogenannte Slaves, die an einem Mastercontroller hängen. Mit erhöhtem Schaltungs- und Programmaufwand ist Multimasterbetrieb möglich. Es gibt Varianten bezüglich der Polarität der Datensignale und deren Übernahme relativ zu den Flanken des SCK-Signals. Näheres ist in den Datenblättern der jeweiligen Chips nachzulesen.
Hallo, Ups... Schreibfehler @Travel Rec. In dieser Richtung möchte ich arbeiten. Benutze PIC's von Microchip. Gibt es bezüglich auch ein Buch, in dem -> "Der Bus erlaubt mehrere sogenannte Slaves, die an einem Mastercontroller hängen. Mit erhöhtem Schaltungs- und Programmaufwand ist Multimasterbetrieb möglich." <- das beschrieben ist ? Gruß Siegfried
Was ist daran so schwierig? Jeder Slave bekommt eine Leitung (CS == Cable Select) extra und weiß dann, dass die Daten für Ihn sind.
Für Multimaster braucht man noch ein wenig Logik, die die CS-Signale umschalten kann. Wenn beispielsweise ein Slave plötzlich zum Master wird, wird sein CS-Eingang ein Ausgang, der widerum auf andere Eingänge anderer Slaves geroutet wird. Dies könnte man mit Multiplexern lösen - ist aber nicht ganz so trivial, wie bei I2C oder RS485. Daß ein Slave Master sein darf, wird ihm über Befehle inerhalb des Datenprotokolls mitgeteilt. Dort darf dann nichts ohne Anfrage laufen, sonst gibt es einen Crash.
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.