Hallo, ich möchte eine Temperaturerfassung mit I2C realisieren und bräuchte da mal eine Aussage über die maximale Anzahl der Slaves auf dem Bus. Der Temp.-Sensor LM92 hat z.B. nur A0 und A1 zum Codieren, sprich, man könnte gerade mal 4 Sensoren auf einem Bus bereiben. Gibt es da irgendeine Möglichkeit, die Anzahl zu vergrößern oder zu erweitern? Und wie läuft das mit der 10bit-Adressierung? Hilft mir das vielleicht weiter? Ursprünglich war mal 1-wire von Dallas angedacht, aber die können die Temp.-Sensoren Ds18B20 nicht liefern, daher der Umstieg auf I2C. Bin für jede Hilfe dankbar! Viele Grüße, Dennis
Hallo, bei der 7-Bit-Adressierung kannst Du max. 128 Geräte anschliessen. Bei dem Sensor sind es max. 4 (wie Du schon gesagt hast). Die 10-Bit Adressierung bringt meinem Verständnis nach nur dann was, wenn Du 10-Bit Devices hast. Es gibt einen LM75 mit drei Adressbits (die Genauigkeit ist aber schlechter). Man könnte auch die I2C-A/D Wandler PCF8591 (4 A/D Converter * 8 ICs = 32 Messpunkte) nehmen und andere Sensoren (KTY..) verwenden. Nur das ist mehr Aufwand. Gruss Andreas
Wenn ich mich nicht irre, dann gibt es auch Expander-IC's mit denen man wieder mehrere Bausteine mit der gleichen Adresse anschließen kann. Dominik
Die Frage ist doch dann wenn man so einen expander verwenden muss ob man dann nicht gleich nen anderen chip verwenden sollte / könnte. mfg Flo
Hallo Dennis Hatt mal ein ähnliches Problem , identische Bauteile mit i2c. Hab dann im Forum den Tipp mit Analogschalten 74HC66 bekommen und ausprobiert. Das funktioniert ganz ordentlich und ist spottbillig. Die i2C Expander sind teuer und eigentlich nirgendwo erhältlich. Die pullups werden jeweils in den "Ur-Bus" und in den geschaltenen verteilt. ( Halbe Werte ) Nachteil: Je erweiterung muss ein IO pin verwendet werden. Phagsae.
Da du der Master bist, hast du die Sache doch selber in der Hand: Eine billige und einfache Möglichkeit wäre einen zweiten I2C-Bus am Mikrocontroller zu realisieren und damit die Anzahl der Sensoren zu verdoppeln. Grüße, Alex
@phagsae: man kann doch den analogschalter über eine i2c porterweiterung umschalten. dann verliert man keinen pin
Guck mal nach dem TMP100 von TI. Der hat drei freie Adressbits, also maximal 127 Devices.
@ tobi Hmmm.. klingt eigentlich ganz gut. Müsste man aber vom gefühl her noch ein Zeitglied einbauen. Der IO Expander schaltet sich ja dann den Bus um an dem er selbst hängt. Das könnte komische Effekte produzieren. Halbe pullup werte ist natürlich kompletter Unsinn Muss wohl an halbieren gedacht haben. Phagsae
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.