Forum: Mikrocontroller und Digitale Elektronik mehrere Slaves an SPI


von Michael (Gast)


Lesenswert?

ist es möglich mehrere Slaves an einem SPI zu betreiben? Wie werden dann
die einzelnen Slaves adressiert?
Hat jemand da vielleicht ein Beispiel Schaltplan und Code zu?

Danke!

von Michael B (Gast)


Lesenswert?

Hi,

die Slaves werden mit einer seperaten Leitung "CS" (Chip select)
davon in Kenntnis gesetzt, dass sie angesprochen werden.
Für 3 Slaves brauchst du also 3 CS Leitungen.

von Michael (Gast)


Lesenswert?

ah, okay, also kann ich sozusagen beliebig viele anzeigen,
wenn drei per SPI nacheinander angesprochen werden, der SPI mit 3Mhz
läuft, wird jeder SPI Slave mit 1Mhz angesteuert?

von Tobi (Gast)


Lesenswert?

interessant rechnung. nur nicht ganz praxistauglich :)

jeder wird wenn der bus mit 3mhz läuft auch mit 3mhz angesprochen nur
nacheinander. es wird immer der/die angesprochen die du per CS
aktivierst und das für die länge des zugriffs mit voller
geschwindigkeit. wie schnell du von einem zum anderen umschaltest liegt
ganz an dir

von Alex (Gast)


Lesenswert?

Wenn dein MC SPI unterstützt, findest du dazu im Datenblatt eine
ordentliche Zusammenfassung.

von Michael (Gast)


Lesenswert?

@Tobi
ich meinte, wenn ich alle hintereinander immer ansprechen will, dann
würde sich der takt doch durch 3 sozusagen teilen, also spi läuft mit 3
Mhz, jeder Slave erhält aber Daten im 1Mhz takt

von Tobi (Gast)


Lesenswert?

über einen längeren zeitraum betrachtet stimmt das. in bezug auf eine
einzelne übertragung nicht, denn du kannst ja immer nur nach einer
übertragung umschalten, nicht mittendrin

von Michael (Gast)


Lesenswert?

ja, ich meinte auch über einen längeren Zeitraum, also nach immer einer
übertragung auf den nächsten umschalten :-)

von Tobi (Gast)


Lesenswert?

ein klassischer fall von aneinander vorbei geredet :)

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.