Forum: Mikrocontroller und Digitale Elektronik RPI spi - ws2801 / mcp3008


von NODE.js (Gast)


Lesenswert?

Guten Abend liebe Bastler,

Ich habe eine verständniss frage bzgl. SPI auf dem Pi.
Vorhaben: mcp3008 AD wandler und ws2801 gleichzeitig am SPI bus 
betreiben.

Ich möchte analog werte aus dem mcp3008 auslesen in rgb werte umwandeln 
und auf den LED strip schieben.

Da der stripe ja kein CS pin hat, wie kann ich genau steuern auf welchen 
chip (adw/stripe) ich zugreife ?

Und brauch ich das eigentlich ?
Bin etwas verwirrt;

Eigentlich könnte ich den cs pin vom mcp dauerhaft auf low setzen da ich 
kontinuierlichvon ihm lesen möchte.

Und da ich auf den stripe ja immer nur schreibe brauch ich ihm auch 
nicht mitteilen das er geimeint ist.

Dan gibt es doch aber probleme mit der lese anweisung vom mcp oder 
täuache ich mich ?

Ich müsste als ein fake cs pin am stripe nachrüsten.
Wie kann man so was realisieren ?

Ihr seht schon das etwas klärungsbedarf besteht.
Kurz zusammen gefasst: mcp3008 & ws2801 gleichzeit nutzen.

Danke für eure Hilfe und Anregungen/Ideen

von Rainer U. (r-u)


Lesenswert?

Theoretisch brauchst kannst Du die MOSI zum LED-Strip und die MISO zum 
ADC nutzen, mit der gleichen Clock-Leitung, aber:

Du kannst dann den ADC nicht konfigurieren (musst einen der 0000 oder 
1111-Modes nehmen indem Du seine DIn statisch belegst) und

Du kannst nur ein Byte puffern beim Empfang - wenn DU eine Lib nutzen 
willst für den Strip, wird die wohl mehr als ein Byte senden, und Dir 
gehen ADC-Bytes evtl. zwischendurch verloren.

Ein zusätzliches CS für den Strip kannst Du z.B. mit einem Logikgatter 
realisieren, sagen wir mit einem AND - der eine Eingang ist die MOSI, 
der andere ein Pin, den Du schaltest -> nur wenn der ON ist geht die 
MOSI durch.

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.