I2C, Position der Pull-Up-Widerstände

Gast #3061725
Lesenswert?
• ▲
▼
Hallo,

in der I2C-Spezifikation konnte ich keine Info finden, ob es eine 
(große) Rolle spielt, wo die Pull-Up-Widerstände am Bus angeschlossen 
sind, also in der Nähe vom Master oder besser am letzten IC am Bus.

Generell werden bei Bussen die Abschlusswiderstände ja am letzten 
Teilnehmer angeschlossen, um Reflektionen etc. zu unterbinden. Die 
Pull-Ups sollen aber bei I2C in erster Linie für einen definierten 
High-Pegel sorgen und sind somit ja keine Abschlusswiderstände in dem 
Sinne.

Bei höheren Übertragungsraten (I2C-FastMode+ und I2C-HighSpeed) mit 
>=1MBit werden die Widerstände wahrscheinlich auch ein bisschen wie 
Abschlusswiderstände wirken, aber bei 100kHz/400kHz dürfte es kaum eine 
Rolle spielen, wenn die Pull-Up-Widerstände auch in der Mitte vom Bus 
angeschlossen sind, oder?

In meinem Fall hab ich etwa 40-50mm Länge der I2C-Leitungen auf der 
Platine. Der Master wird allerdings extern angeschlossen, aber wenn man 
davon ausgeht, dass dieser auf kürzestem Wege angeschlossen wird, dürfte 
das kein Problem sein, oder? Da ich nicht viel Platz auf der Platine 
habe würden die Pull-Up-Widerstände "mitten" im Bus zwischen den 
insgesamt drei Slaves angeschlossen werden.

Hmmm... und wie ich das so schreibe kommt da noch die Frage auf, wie das 
ist, wenn noch andere Teilnehmer angeschlossen werden: hier wäre mein 
Layout ja dann quasi eine "Stichleitung". Wie wird das dann gehandhabt? 
Die Pull-Ups auf meinem Layout mit doppeltem des üblichen 
Widerstandswerts bestücken und die "externen" Pull-Ups ebenfalls mit dem 
doppelten Wert, sodass sich durch die Parallelschaltung wieder der 
"normale" Wert ergibt? Das bildet doch dann eigentlich eine Schleife 
über die Versorgungsspannung, oder?

Ralf
Gast #3061798
Lesenswert?
• ▲
▼
Mach sie bei Master ran.

Wenn deine I2C Slave "steckbar" sind fehlen sie sonst. Dies kann beim 
abfragen der Slaves recht mühsam sein.

Alternativ kannst du beim Master mit einem viel hochohmigeren Pullup 
arbeiten und bei dem Slave mit den üblichen 1k8.. 3k

cheers
Gast #3061823
Lesenswert?
• ▲
▼
LTC1043 schrieb im Beitrag #3061798:
> Wenn deine I2C Slave "steckbar" sind fehlen sie sonst. Dies kann beim
> abfragen der Slaves recht mühsam sein.
> Alternativ kannst du beim Master mit einem viel hochohmigeren Pullup
> arbeiten und bei dem Slave mit den üblichen 1k8.. 3k
In Kombination eine gute Idee, finde ich :)

Danke.

Ralf

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.