Forum: Mikrocontroller und Digitale Elektronik Reichweite I2C


von Achim S. (achims)


Lesenswert?

Hallo
Meine Frage ist relativ einfach. Wie weit geht der I2C Bus?
Habe schon gesucht. Mit entsprechenden Treibern und Empfängern z.B. 
PCA9515 und P82B96 und P82B715 geht das. Ist im Hausbus oder auf NXP 
alles beschrieben. Leider haben diese den Nachteil, das ich immer 2 
verwenden muss.
Was kann ich aber nehmen, nur 1 IC, um längen von ca max 2m zu 
überbrücken
achim

von panikplauze (Gast)


Lesenswert?

Achim Seeger schrieb:
> Was kann ich aber nehmen, nur 1 IC, um längen von ca max 2m zu
> überbrücken

Mit der Kabelkapazität steht und fällt hier die Sache. Schau dir mal den 
LTC4311 an.

Nimm Twisted-Pair-Leitungen wobei SDA mit VCC und SDL mit GND verdrillt 
wird, an den Kabelenden zwischen VCC und GND ein Kondensator (siehe 
I²C-Spec).

von T.roll (Gast)


Lesenswert?


von Achim S. (achims)


Lesenswert?

Hallo
Danke für die Antworten.
Den Text zu Hausbus mit I2C kenne ich bereits. Es sind Artikel und IC zu 
längen über 200m und über 1,2 km angegeben. So weit will ich ja 
garnicht. Mir reichen schon 2 bis 3 m.
Der IC LTC 4311 ist recht interessant. Habe mir das Datenblatt gezogen.
Hat jemand Erfahrung damit gemacht oder ein Beispiel für eine Schaltung?
achim

von Cyblord -. (cyblord)


Lesenswert?

Aber warum MUSS man denn einen Platinenbus wie I2C unbedingt extern 
nutzen um damit mehrere Meter zu überbrücken? Warum nur? Sicherlich geht 
es, sicher gibt es Lösungen dafür, sicher kann man auch 1 km machen wenn 
mans drauf anlegt.
Warum warum? Weil man jetzt endlich mal I2C kapiert hat und den Teufel 
tun wird noch irgendein anderes Bussystem auch nur anzugucken? Weil man 
seine 10 Zeilen Code für I2C genau so lassen will, aber statt nen EEPROM 
anzusprechen, lieber Quer durchs Haus das Garagentor aufmachen will?

gruß cyblord

von Achim S. (achims)


Lesenswert?

Hallo Cyblord
Es geht einzig dabei um eine ca. 1 m abgesetzte Anzeige und Bedienung. 
Diese Sache ist leider bauart bedingt. Auf diesen 1 m wollte ich einfach 
nicht noch mal umsetzen auf einen anderen Bus. Da ja nach Angabe ca. 0,5 
m möglich sind, fehlt nicht viel. Der LTC ist ein sehr gutes Beispiel. 
Leider finde ich kaum was dazu. Da bleibt woll nur die Methode mit dem 
Sender und Empfänger. Auch die Geschwindigkeit zu reduzieren los gehen.
achim

von Wilhelm F. (Gast)


Lesenswert?

Der längste I2C-Bus, den ich bisher sah, war 300m lang, und der µC hatte 
noch nicht mal einen I2C-Controller, das lief über Bitbanging. Alles 
über normales Telefoninstallationskabel, z.B. einen Sternvierer. Die 
Übertragungsrate ist natürlich nicht besonders, aber wo es gar nicht 
darauf an kommt?

von Klaus R. (klara)


Lesenswert?

Achim Seeger schrieb:
> Mir reichen schon 2 bis 3 m.

Die Reichweite hängt auch von der Taktrate ab. Aber 2 - 3 m sollten 
schon mit 100 KHz laufen. Die Pullups sollten dabei möglichst klein 
gehalten sein. Der Grenzwert liegt bei einem 5V - Bus bei ca. 1,7 K. 
Sicherheitshalber sollte man 2,0 K - 2,2 K nehmen.

von (prx) A. K. (prx)


Lesenswert?

Achim Seeger schrieb:
> Es geht einzig dabei um eine ca. 1 m abgesetzte Anzeige und Bedienung.

Wegen 1m würde ich keinen Aufstand machen. Mach es einfach. Ganz normal, 
ohne Kokolores für grosse Distanzen.

von Achim S. (achims)


Lesenswert?

Danke für die Antworten.
Noch mal was zum Verständnis. Die Pullups habe ich auf verschiedenen 
Seiten von 10k bis runter auf 3k7 gesehen. Was ist ein normaler Wert und 
je grösser die Entfernung um so kleiner (min. 3k)?
achim

von spess53 (Gast)


Lesenswert?

Hi

>Was ist ein normaler Wert und
>je grösser die Entfernung um so kleiner (min. 3k)?

Such mal nach

I2C-bus specification and user manual

MfG Spess

von (prx) A. K. (prx)


Lesenswert?

Achim Seeger schrieb:
> je grösser die Entfernung um so kleiner (min. 3k)?

Yep. Je länger die Leitung, desto grösser deren Kapazität, desto 
langsamer die steigende Flanke bei gleichem Pullup. Die Grenze bildet 
der zulässige Strom des Pulldowns im Treiber.

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
Noch kein Account? Hier anmelden.