Archiv verlassen und diese Seite im Standarddesign anzeigen : I2C Multiplexen
Hallo,
eigentlich nur eine kurze Frage:
Ist es möglich mit einem 4052N die I2C Leitungen zu multiplexen? Ist der Baustein dafür geeignet?
Danke!
Besserwessi
20.06.2009, 17:11
Zum Umschalten sollte der 4052 schon reichen, solage man nicht besonders kleine Pullup Widerstande (z.B. <etwa 330 Ohm) hat. Man hat nur das Problem, dass der Teil der nicht mehr verbunden ist dann auch high liegt, und nicht auf low. Könnte man zur Not mit zusätzlichem hochohmigen Pulldown lösen, ist aber nicht ideal.
Ist das denn ein Problem, dass der nicht verbundene Teil auf high ist? Die Sensorwerte werden in dem Moment ja sowieso nicht gelesen, daher ist eigentlich der Zustand der Leitung auch egal, oder?
Besserwessi
20.06.2009, 17:54
I2C ist ja normlaerweise ein BUS. Solange man verschiedene Addressen hat, können also mehrere Sensoren parallel dranhängen.
Es könnte auch mit High zustand gehen. Ein offener Eingang ist aber nicht unbedingt ideal.
Es gibt doch von Philips/NXP I2C hubs!
Hi,
bei CC-Tools wird ein MAX4571 benutzt, der hat max. 35 Ohm Kanalwiderstand, 8 Schalter, und wird mit dem I²C-Bus angesteuert.
MfG Lutz
BlackDevil
27.06.2009, 14:43
Es gibt doch von Philips/NXP I2C hubs!
Gibt auch Switches. Hat halt den Sinn mehr von der gleichen Sorte anschliesen zu können (4Bit Harte Adresse 3bit Softe Adresse macht 2^3 gleiche Bausteine, mit einem Switch gingen 4*2^3 gleiche Bausteine (gleiche!)).
Der aktive Baustein kann mit der 3-bit Adresse ohne Multiplexen gewählt werden. Erst über 8 Bausteine ist multiplexing nötig.
MfG
BlackDevil
28.06.2009, 21:15
Oder ein Switch
4Bit Hardware Adresse - Hart verdrahtet
3bit Software Adresse- von Hand "verdrahtet" macht max 2^3 = 8 möglichkeiten
Hallo,
Der PCA9546 ist ein richtiger 4-channel I2C switch with reset. Mit dem 4052 wirst Du eher Probleme bekommen. Der PCA9546 kostet bei Reichelt 1,50€. Es gibt auch mehr als 4 Kanäle.
http://www.datasheetcatalog.org/datasheet/philips/PCA9546_1.pdf
BlackDevil
30.06.2009, 21:14
seh ich das bei den dingern eigentlich richtig das man wissenmuss an welchem port der slave klemmt? So wie bei Ehtnet, das der Switch das von sich aus weis (mit einer Tabelle) fänd ich knuffiger. Es gibt ja einen Broadcast (Adresse 0000 0000) aber ob ich damit die Adressen der slaves an den Ports rausfinden und in einer internen Tabelle ablegen kann weis ich allerdings nicht.
Hallo,
bei Ethernet hast Du ja auch gewissermaßen mehrere Abschnitte, z.B. 164.32.45.127, die Du kennen musst. Im letzten Segment bist Du in der Praxis auf 50-100 Clients beschränkt. Bei I2C haben die Bausteine bis zu 8 Adressen, 0-7. In der Regel begrenzt hier aber die Kapazität die Anzahl der Elemente. Phillips hat da einiges an guter Doku.
Gruss KLaus.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.