Forum: Mikrocontroller und Digitale Elektronik SPI: CS Ausgang des µC multiplexen?


von Michael T. (michelback)


Lesenswert?

Hallo zusammen,

ich möchte an eine SPI SChnittstelle des µCs R5F2122CKFP mehrere Slaves 
dranhängen. Generell ist das ja kein Problem, allerdings steht bei dem 
Datenblatt der slaves eine Beschaltung dabei, die ein paar Fragen 
aufwirft.

Die Slaves bestehen aus 2 Speicherbausteinen, AD-Wandlern und einem 
Vibrationssensor. Sie werden angesprochen, wenn CS auf LOW ist.

Damit ein definierter Pegel vorliegt, soll laut Datenblatt der 
Speicherbausteine(M25P64) ein 100k Pull up an die CS-Leitung 
angeschlossen werden. Das heißt ja, dass der CS-Ausgang des µCs den 
Pegel auf Ground ziehen muss. Daher ja auch die interne open-Drain 
Schaltung des CS-Ausganges, über den dann der Strom abfließen kann. Hat 
der µC nicht auch interne pull ups, die ausreichen, um den Pegel zu 
halten? Im Datenblatt der Speicher (M25P64) ist für jeden Speicher-IC 
ein externer Pull-Up mit 100k vorgesehen. Reicht aber nicht der interne 
Pull Up des CS-Ausganges aus?

Ein weiterer Slave wäre ein Vibrationssensor(ADXL345), der auch via SPI 
angeschlossen werden soll. In seinem Datenblatt sind allerdings keine 
Pull-Ups vorgesehen, dort werden die 4 SPI-IO-Pins direkt miteinander 
verbunden. Kann es sein, dass der Vibrationssensor selbst interne 
Pull-Ups hat und deswegen keine externen braucht?

Eine Frage habe ich noch: So wie es aussieht muss der CS-Ausgang des µCs 
auf jeden Fall Open-Drain sein, damit der externe Pull-Up auf GND 
gezogen werden kann. Jetzt habe ich aber mehrere Slaves, aber nur einen 
CS-Ausgang am µC. Gibt es da so eine art Multiplexer für den CS-Pin? Ich 
bräuchte mindestens 5 CS-Kanäle, da ich mindestens 5 Slaves habe. Ist 
schon komisch, dass es nur einen CS-Pin am µC gibt, der open-drain 
bereitstellt, wo doch SPI extra für mehrere Slaves gedacht ist...
Grüße,
Michael

von holger (Gast)


Lesenswert?

>Ist schon komisch, dass es nur einen CS-Pin am µC gibt, der open-drain
>bereitstellt,

Falsche Annahme von dir. Der CS Pin darf auch PushPull sein.
Den Pullupwiderstand stört das nicht. Für deine 5 SPI Slaves
kannst du jeden beliebigen Pin am uC als CS nehmen.

von (prx) A. K. (prx)


Lesenswert?

Andererseits gibt es Controller, bei denen man als SPI-Master 
ausgerechnet den SS Anschluss von SPI nicht als Ausgang für SS/CS 
verwenden kann..

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.