R8C: Frage zur SPI-Schnittstelle

OP #1419823
Hallo,

ich habe eine Frage zur SPI Schnittstelle beim R5F2122 von Renesas. Da 
ich insgesamt 4 bis 5 slaves an die SPI hängen möchte, brauche ich ja 
theoretisch auch 5 Chip Select Leitungen. Allerdings wird im Datenblatt 
nur eine SCS Leitung dafür vorgesehen...

Adresse zum Datenblatt:

http://documentation.renesas.com/eng/products/mpumcu/rej09b0251_r8c2223hm.pdf

Auf Seite 334 steht aber folgendes zur SPI:
"When the clock synchronous serial I/O with chip select is set as master 
device, the chip select
line controls output of the SCS pin or controls output of a general port 
by setting the CSS1 bit in the SSMR2
register."

Das heißt doch, dass ich jeden GPIO hernehmen kann um einen 
Chip-select-Pin zu erhalten, oder? Ich müsste nur das CSS1 Bit bei einem 
anderen Port setzen, oder? Allerdings ist es jetzt so, dass in den 
Pin/Port-Beschreibungen nur beim SCS-Pin das CSS1-Bit auftaucht (Seite 
83 "Port settings"). Kann ich jetzt auch für einen anderen Port das 
CSS1-Bit setzen? Wenn ja, wie würde dazu ein Codebeispiel aussehen? Ich 
blicke grad gar nicht mehr durch...

Grüße
Michael
Gast
Hallo Michael,

das CCS1-Bit gibt es nur einmal. Damit kann man generell einschalten, ob 
der SCS-Pin von der Hardware gleich mit gesteuert wird. Wenn CSS1 nicht 
gesetzt ist, kann man jeden beliebigen Port-Pin als CS nutzen, man muß 
es nur vor der Übertragung von Hand setzen und nach Beendigung auch 
wieder löchen.

Gruß
Mo
OP
hallo zusammen,
vielen Dank an alle. Es waren viele interessante Ideen dabei. Habe mich 
jetzt dafür entschieden, einen DEMUX (74HC138D) für die CS-Leitungen 
herzunehmen. Vorteile sind, dass ich die "original" SPI nehmen kann, 
ohne noch groß was an den Ports einzustellen und dass ich insgesamt 8 
SLaves dranhängen kann, wobei ich nur 4 Pins vom µC brauche. Ausserdem 
gibt der DEMUX alle Ausgänge erstmal mit HIGH aus (bis auf den 
ausgewählten) wodurch ich mir die Pull-up-Geschichte spare.
Grüße,
Michael

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.