mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Mehrere ICs am SPI


Autor: Hermann Kraus (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: mikki merten (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Tommy (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.