Forum: Mikrocontroller und Digitale Elektronik Reichweite I2C


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Achim S. (achims)


Bewertung
0 lesenswert
nicht 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)


Bewertung
0 lesenswert
nicht 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)


Bewertung
0 lesenswert
nicht lesenswert

von Achim S. (achims)


Bewertung
0 lesenswert
nicht 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)


Bewertung
-1 lesenswert
nicht 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)


Bewertung
0 lesenswert
nicht 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)


Bewertung
0 lesenswert
nicht 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)


Bewertung
0 lesenswert
nicht 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)


Bewertung
0 lesenswert
nicht 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)


Bewertung
0 lesenswert
nicht 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)


Bewertung
0 lesenswert
nicht 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)


Bewertung
1 lesenswert
nicht 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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.