Gibt es einen MUX mit Busanschluss (I2C) ?

OP (Firma: Angestellt) #1506551
Lesenswert?

Hallo Miteinander

Ich leide unter extremer Pinarmut.
Ich habe I2C und auch SPI in der Anwendung.
Leider habe ich voraussichtlich  mind. 8 SPI-Slaves (Zumindest sollte 
ich die Slave-Select-Leitungen bereitstellen).
Jetzt kann ich beim besten Willen nicht 8 Pins für die Slave-Leitungen 
bereitstellen.

Meine Idee:
Über I2C sende ich eine Nachricht an einen MUX mit I2C-Anschluss. Der 
stellt dann die Verbindung "Slave zu uController" her. Danach beginnt 
die normale SPI-Übertragung.

Gibt es vielleicht einen Multiplexer mit I2C-Anschluss oder ist das ein 
völlig abwegiges Denken meinerseits?

Freue mich wie immer über jegliche Hilfe

VG

Martin
OP (Firma: Angestellt) #1506679
Lesenswert?

Hallo Rufus

Einen normalen MUX hab ich mir auch schon überlegt.
8 Slaves --> 4 Leitungen

Die Lösung I2c-Mux
8 Slaves --> 1 Leitung (I2C wäre ja schon vorhanden)

Das mit dem IO-Expander hört sich sehr gut an. Ist nach kurzem 
überfliegen aber ein bisschen zu langsam.

Ich hab nen LPC2294 auf der einen Seite (läuft mit 60MHz) und der 
Expander hat eine Output-Data-Valid-Time von 4us. Das entspricht einer 
Wartezeit von 240 Takten. Dazu kommt noch die Übertragungszeit des I2C 
von min. 0,1ms. Was wiederum ca. 6000 CPU-Zyklen entspricht.
Gut die CPU kann nebenzu was anderes machen aber das Delay ist einfach 
zu lang.

Ich hoffe ich habe da jetzt keinen Denkfehler drin.

Trotzdem vielen Dank fürs Mitdenken.

VG

Martin

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren