Gast
#3061725
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