Forum: Mikrocontroller und Digitale Elektronik SPI Chipselect selbst gemacht


von Patrick B. (pbuergi)


Lesenswert?

Hallo,
ich hab hier ein Gerät (Adafruit LED Strip LPD8806) mit SPI Interface 
aber ohne CS, also nur eine Daten- und eine Clockleitung.

Ich würde gerne den Hardware SPI verwenden. Dort hängen jedoch außer dem 
ISP auch andere Slaves (mit CS). Deshalb hätte ich gerne eine 
Möglichkeit das SPI des LED Strips zu deaktivieren.

Zuerst hab ich an ein ODER Gatter gedacht, dann ist mir aber folgendes 
eingefallen
1
         ____ 
2
MOSI ---|____|---------- DI (LED Strip)
3
               _|_
4
               /_\
5
CS   -----------|
6
               \‾/
7
               ‾|‾
8
SCK  ---|____|--------- CI (LED Strip)

Damit ist bei CS high der low Pegel natürlich bei 4.3V aber das sollte 
trotzdem funktionieren.
Ich hab das ganze auch schon auf nem Steckbrett mit 1k Widerständen 
getestet. Mit 4.7k und 10k hat der LED Strip nicht mehr richtig 
reagiert. Aber mit 1k funktioniert es.
Klar fließen so immer ein paar mA in den Gulli aber die Schaltung hängt 
eh am Netz.

Da ich aber noch ein ziemlicher Anfänger bin wollte ich doch mal fragen 
ob ihr da eine bessere Lösung hättet bzw ob meine Lösung irgendwie 
problematisch ist.

Schöne Grüße,
Patrick

von Frank K. (fchk)


Lesenswert?

MOSI brauchst Du eigentlich nicht zu schalten.

Für SCK nimmst Du einen HC125 (!G an Dein !CE)und dahinter einen 
Pulldown.

fchk

von holger (Gast)


Lesenswert?

>Zuerst hab ich an ein ODER Gatter gedacht, dann ist mir aber folgendes
>eingefallen

Ich würde CS und SCK UND verknüpfen.
Bei CS low bekommt das Teil einfach keinen Takt mehr.

von Frank K. (fchk)


Lesenswert?

holger schrieb:
>>Zuerst hab ich an ein ODER Gatter gedacht, dann ist mir aber folgendes
>>eingefallen
>
> Ich würde CS und SCK UND verknüpfen.
> Bei CS low bekommt das Teil einfach keinen Takt mehr.

Per Konvention sind Chip-Selects immer active low. Man kann zwar gegen 
Konventionen verstoßen, sollte dafür aber einen guten Grund haben, 
allein schon wegen Fehlervermeidung.

fchk

von Patrick B. (pbuergi)


Lesenswert?

Ach ja macht Sinn, dass ich MOSI nicht schalten brauche, dann kann ich 
mir ja sogar die Dioden sparen. Das ist zwar dann nicht so sauber wie 
eure Lösungen aber ich hab nicht so viel Platz auf der Platine und diese 
Logik Gatter sind ja scheinbar immer nur im Viererpack zu kriegen.

Ne andere kleinere Lösung gibts wahrscheinlich sonst auch nicht, oder?

von Frank K. (fchk)


Lesenswert?

Patrick B. schrieb:
> Ach ja macht Sinn, dass ich MOSI nicht schalten brauche, dann kann ich
> mir ja sogar die Dioden sparen. Das ist zwar dann nicht so sauber wie
> eure Lösungen aber ich hab nicht so viel Platz auf der Platine und diese
> Logik Gatter sind ja scheinbar immer nur im Viererpack zu kriegen.
>
> Ne andere kleinere Lösung gibts wahrscheinlich sonst auch nicht, oder?

Doch, die Logikgatter gibts auch einzeln im SOT23 oder SC-70 Gehäuse:

Z.B hier

http://focus.ti.com/pdfs/logic/littlelogicsg.pdf

Du bräuchtest dann einen 74AHC1G125.

fchk

von Patrick B. (pbuergi)


Lesenswert?

> Du bräuchtest dann einen 74AHC1G125.

Danke Frank, ich hab gesehen es gäbe sogar 2 in einem 74AHC2G125. Das 
wäre der richtige für mich, aber leider gibt es die Dinger nirgends, bzw 
nicht da wo ich bis jetzt so bestellt habe.
Mal sehen, entweder ich werd wohl doch das Viererpack nehmen müssen oder 
ich müssts eben doch die Holzhammermethode mit den Widerständen machen.

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.