Forum: Mikrocontroller und Digitale Elektronik Mehrere ICs am SPI


von Hermann Kraus (Gast)


Lesenswert?

Hallo,

ist es möglich mehere ICs an das SPI anzuschließen. Ich möchte die 
Temperaturverteilung im Raum messen und bräuchte dazu mehere SPIs. Am 
4433 gibt es aber leider nur einen. Kann ich den irgendwie doppelt 
nutzen?

Hermann
P.S.: Sorry, wenn dieses Thema schon mal behandelt worden sein sollte, 
aber die Suchfunktion kann halt keine 3Buchstabenwörter.

von mikki merten (Gast)


Lesenswert?

An einem AVR-Master kannst du problemlos mehrere SPI-Slave Prozessoren 
betreiben. Du benötigst nur 1 Select-Leitung für jede Slave CPU.

von Hans (Gast)


Lesenswert?

Kann ich den irgendwie doppelt nutzen?

Ja.

Du kannst vom Master weitere Pins als Ausgang konfigurieren und diese an 
die SS-Leitung weiterer µC's anschiessen um somit diese zu aktivieren.

   Master
   +----+
   |    |
   |    |--SCK---Slave.1,.2,.3,.n
   |    |--MISO--Slave.1,.2,.3,.n
   |    |--MOSI--Slave.1,.2,.3,.n
   |    |
   |    |--PB2---Slave.1 SS-Leitung
   |    |--PB1---Slave.2 SS-Leitung
   |    |--PB0---Slave.3 SS-Leitung
   |    |--PXn---Slave.n SS-Leitung
   |    |
   +----+

Aber warum nimmst Du keine MAX5154 statt mehrere 4433er? Ich kann Dir 
ein Buch empfehlen:
"AVR-RISC Mikrocontroller" 3-7723-5475-0

von Tommy (Gast)


Lesenswert?

Hallo,

der Thread ist zwar schon etwas älter, aber dennoch passt er zum Thema:
Ich möchte auch mehrere SPI-ICs an einen ATMega32 anschließen, jedoch 
geht aus den Applicationnotes bzw. aus den Datenblättern von Atmel nicht 
so recht hervor, wie das funktionert.

An folgender Stelle habe ich ein Verständnisproblem: Das Signal SPI-SS 
wird ja direkt vom integrierten SPI Controller gesetzt bzw. gelöscht. 
Wenn ich nun zusätzlich beliebige Portpins als Chip-select Leitung 
verwende (s. Hans) und diese "per Hand" auf Low-Level umschalte, um 
einen Chip zu aktivieren, dann wird ja der Chip, welcher an SPI-SS 
hängt, auch automatisch aktiviert, oder? Wie wird ein solch 
standardmäßiges Vorhaben - also mehrere SPI-Slaves an einem Master - in 
GCC realisiert? Ich kenne das nur vom AT91SAM7X bei dem es von Haus aus 
schon mehrere CS-Leitungen gibt, die einzeln konfiguriert werden können.

Vielen Dank
Tommy

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> der Thread ist zwar schon etwas älter,
Gute 8 Jahre... :-/

> Das Signal SPI-SS wird ja direkt vom
> integrierten SPI Controller gesetzt bzw. gelöscht.
Nochmal genauer nachlesen:
wenn der uC der Master ist, mußt du SS selber erzeugen.

> also mehrere SPI-Slaves an einem Master
Du machst die Verwaltung der SS manuelle mit Hilfe von 
Bitmanipulationen...

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.