Re: I2C Bus erweitern Kategorie: I²C-Bus (von André H. - 25.12.2004 13:43) | ||
Als Antwort auf I2C Bus erweitern von viktor - 18.12.2004 16:50 | ||
| ||
Hallo Viktor, > Jetzt möchte ich jedoch den BUS mit weiteren Komponenten erweitern und stehe daher vor der Frage > wie ich das am besten machen sollte. Daher hoffe ich auf ein paar Erfahrungswerte heir aus dem board. > > 1. Adressen: Mir gehen dadurch die Adressen aus, wenn ich das richtig verstehe könnte ich das mit > dem I2cBus multiplexer von CCtools erreichen. Das ist richtig. Du kannst den I²C-Bus so in 7 Sub-Busse aufsplitten und dazwischen umschalten. Man kann bis zu vier Ebenen an Multiplexern in Kaskade verschalten. Somit könnte man theoretisch bis zu 2401 Sub-Busse erhalten. ;-) Man bräuchte dafür aber 400 Multiplexer. Einen in der ersten Ebene, 7 in der zweiten Ebene, 49 in der Dritten und 343 in der vierten. Wenn es aber nur darum geht, für Temperatursensoren genug "Adressen" zu schaffen. reicht ein Multiplexer für bis zu 56 Sensoren aus. Die restliche I²C-Bus-Peripherie kann am Hauptbus hängen. Im Programm schaltest Du einfach zwischen den 7 Sub-Bussen um. > Gibt es bessere Möglichkeiten oder alternativen? > Hat jemand erfahrungen mit I2cExt.c2 gemacht? So wie die funktionen aussehen benötigen diese recht > viel Rechenleistung oder? i2cext.c2 wäre eine Lösung. Jedoch ist das Modul bis jetzt in reinem C2 programmiert und daher entsprechend langsamer, als der systemseitige I²C-Bus. Ich hatte zwar schon vor das Modul in ASM umzusetzen, jedoch fehlt mir dazu einfach die Zeit. Somit habe ich das auf ungestimmte Zeit auf Eis gesetzt. > 2. Stichleitungen: Ich werde einige Stichleitungen zu den Sensoren haben. bei kurzen Leitungen (bis 2m) > rechne ich nicht mit Problemen, (bis 2m stichleitungen habe ich heute schon) aber: gibt es da > Erfahrungswerte, wie lang eine Stichleitung am I2CBUS maximal sein darf? Bei bis zu einem Meter sollte es zu keinen Problemen kommen. Bis 2m könnten auch noch gehen. Bei mehr würde ich auf jeden Fall die Stichleitungen durch I²C-Bus-Puffer vom Hauptbus trennen. Hier hilft nur ein Testen, wie weit es ohne I²C-Bus-Puffer geht. Ich würde aber auf jeden Fall einen I²C-Bus-Puffer oder einen I²C-Bus-Extender vor die CC2 setzen, um die Ports des I²C-Busses zu schützen. Denn mit mehr als 5mA sollten diese nicht belastet werden. > 3. Extender bzw. Buffer: kann jemand eine Erklärung liefern, wann ein Buffer und wann ein Extender > sinnvollerweise zum Einsatz kommt? Mir ist aktuell der einsatzzweck, bzw. die unterscheidung nicht > ganz klar. > Beide sind zum überbrücken von längeren leitungen gedacht, aber wann nehme ich einen buffer und > wann einen Extender? ( bzw. erhalte ich durch den einsatz des Extender mehr I2Cadressen?) Grob gesagt, kann man sagen, da� dies Geschmackssache ist. ;-) Jedoch hat der I²C-Bus-Puffer gegenüber dem I²C-Bus-Extender ein paar Vorteile. Einer davon wäre, da� beiden Busseiten voneinander getrennt sind. Beim I²C-Bus-Extender befindet sich intern ein 30 Ohm-Widerstand. Der I²C-Bus-Puffer kann auf "beiden Seiten" einen gepufferten Bus treiben. Beim I²C-Bus-Extender ist dies nur bei einer Seite möglich. Auch sollte der Bus(Stichleitung) hinter einem I²C-Bus-Extender nicht all zu lang sein. MfG André H. Antworten bitte nur ins Forum! Fragen per EMail auf Forum-Postings werden nicht beantwortet! Das macht meine Heizung gerade | ||
Antwort schreiben Antworten: Re: I2C Bus erweitern (von viktor - 27.12.2004 16:11) |