Mehrere Sensoren mit gleicher Adresse an einem I2C Bus

OP #4148913
Lesenswert?
• ▲
▼
Hallo,
mit einem MSP430FR5739 möchte ich über einen I2C-Bus mehrere 
Drucksensoren (MPL3115A2 von Freescale, bis zu 10 Stück) auslesen.
Bei einem Drucksensor funktioniert das bereits.
Um mehrere Drucksensoren nacheinander anzusprechen es gibt nur eine 
einzige Adresse für alle), habe ich mir überlegt die Sensoren 
nacheinander einzuschalten, auszulesen und wieder auszuschalten. Leider 
spielt der I2C-Bus dabei nicht mit.
Hat jemand eine Idee, wie man das alternativ machen könnte?
Hatte auch noch überlegt jedem Sensor einen Baustein am SCL und SDA zu 
spendieren, damit diese Pins nach Abschaltung hochohmig am Bus 
erscheinen und diesen somit nicht mehr beeinflussen.
Hat jemand eine Lösung um mehrere Sensoren gleicher Adresse an einem 
I2C-Bus zu betreiben?
Danke
Helmut
Persönliche Seite #4148951
Lesenswert?
• ▲
▼
Helmut Fritz schrieb:
> Danke,
> doch ein Multiplexer vervielfältigt leider auch die Anzahl der
> Busleitungen.



Die SDA-leitung bleibt für alle gleich beim Demultiplexer, nur die SCL 
wird für jeden eigens verdrahtet.

So in der Art ... 
http://www.onsemi.com/pub_link/Collateral/AND9061-D.PDF

Wenn dir der Aufwand ja nicht zu groß ist :) nimm einen sehr sehr sehr 
sehr kleinen Tiny und nehm ihn als I2C-Bridge vor den MPL3115A2.
Den kannste ja dann auf individuelle Adressen reagieren lassen und sogar 
von Master-Seite mit OneWire oder anderen Protokollen betreiben.
OP #4149000
Lesenswert?
• ▲
▼
Danke, beide Lösungen sind sehr interessant.

Zu 1.: Bei der ersten könnte jedoch weiterhin ein Problem bestehen, da 
SDA ja keine Entkopplung erfährt. Das werde ich aber testen.
Vorteilhaft wäre auch, dass ich alle Sensoren ohne Unterbrechung mit 
Strom versorgen könnte.
Zum Strom-Sparen würde man dann die Sensoren in den Sleep-Modus 
versetzen.

Zu 2.: Gibt es für die Tiny-s bereits Beispiellösungen?
Ja, es scheint aufwändig zu sein, denn jedes Teil muss vor dem Einbau 
programmiert und verwaltet werden.
Persönliche Seite #4149010
Lesenswert?
• ▲
▼
Helmut Fritz schrieb:
> Danke, beide Lösungen sind sehr interessant.
>
> Zu 1.: Bei der ersten könnte jedoch weiterhin ein Problem bestehen, da
> SDA ja keine Entkopplung erfährt. Das werde ich aber testen.
> Vorteilhaft wäre auch, dass ich alle Sensoren ohne Unterbrechung mit
> Strom versorgen könnte.
> Zum Strom-Sparen würde man dann die Sensoren in den Sleep-Modus
> versetzen.
>
> Zu 2.: Gibt es für die Tiny-s bereits Beispiellösungen?
> Ja, es scheint aufwändig zu sein, denn jedes Teil muss vor dem Einbau
> programmiert und verwaltet werden.

Der Tiny wäre ein I2C-Client und ein I2C-Master in einem.
Bei nem Tiny25 z.b. I2C-Client über USI und I2C-Master über 
Software-I2C.
Die Adresse des I2C kann man sich ja über eine 2te I2C-Adresse in den 
EEPROM programmieren, wenn das Gerät allein am I2C-Bus hängt.
Es wäre ja auch möglich noch die Abfrage etc. dem Tiny25 zu überlassen 
und er gibt nur noch fertige Ergebnisse weiter per I2C-Bus.
Gast #4149133
Lesenswert?
• ▲
▼
Jonas G. schrieb:
> Soweit ich weiß sind die Pins am I2C Bus im Ruhezustand auf high.
> Eventuell verhalten sie sich anders wenn der Chip aus ist.

Wenn dann dann eine der Signalleitungen auf High geht, versucht sie den 
Chip über die Substratdiode zu speisen. Das funktioniert meist nicht 
besonders gut, der Chip ist dann halb an, halb aus.

Jonas G. schrieb:
> Du könntest es mit pull-up Widerständen versuchen.

Die sind bei I2C sowieso da.

MfG Klaus

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.