I2C-Pull-Up-Widerstand wohin?

Gast #148542
Lesenswert?
• ▲
▼
Hallo Leute!

Bei meinem Projekt soll der I2C-Bus 4 Meter lang sein. Ein Master und
ein Slave-Gerät hängt dran.
Wo soll man jetzt eigentlich die beiden Pull-Up Widerstände für Clock
und Datenleitung platzieren?
Beim Master-Gerät oder beim Slave?

Danke für eure Antworten

Tschüss

Martin
Gast #148545
Lesenswert?
• ▲
▼
Hallo!

Bis jetzt habe ich die I2C-Funktionen benutzt die mit dem
CodeVisionAVR mitgeliefert werden (Softwareansteuerung).
Dort liegt die Frequenz bei ca. 50KHZ - 80KHZ.
Leider kann man das nicht genau sagen. Am Oszi ist zu erkennen,
dass die Clock-Frequenz zu bestimmten Zeitpunkten nicht immer gleich
ist. Sie variiert.
Ich benutze einen ATMEGA128 und steige gerade auf die Hardware-I2C-
Schnittstelle um. Dort passt das mit dem Clock perfekt.
Von der Frequenz her gehe ich auf 30,418KHZ, damit die Übertragung
sicher ist.

Die Strecke wird gerade auf 15 Meter verlängert und ich habe auch
schon Treiberbausteine gefunden - P82B715.
Im Datenblatt steht, dass mit diesen Treibern das Kabel bis zu
50 Meter lang sein darf, aber eine Gesamtkapazität von 3000pF nicht
überschritten werden darf.

In diesen Datenblätter ist auch beschrieben, wie man die Kapazität
berechnet und daraus dann die Pull-Ups.
Bei einem Master-Gerät und einem Slave-Gerät werden zwei
Treiberbausteine benötigt. Von je einem Gerät zum Treiber wird ein
PULL-UP pro Leitung von ca. 33kOhm benötigt. Auf der Second-Seite
werden die Treiber zusammengeschlossen.
Pro Meter Kabel werden hier 50pF - 100pF gerechnet - Bei 15 Meter Kabel
wären dies im schlimmsten Fall 1500pF. Dieser Pull-Up wird jetzt mit der
Formel R2=1µsec/1500pF berechnet (Wenn ich alles richtig verstanden
habe.). Ich erhalte einen Pull-Up-Widerstand von 667 Ohm.

Gibt man jetzt diesen Widerstand pro Leitung zum Master-Treiber oder
wäre es sinnvoll den Widerstanswert zu verdoppeln und jeweils einen
Widerstand zum Master-Treiber und einen zum Slave-Treiber?

Tschüss

Martin

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.