Ich verwende 2 MCUs als 2 I2C-Master, die mit 1 Slave-F-Ram verbunden sind, um die Datenfrequenz zu lesen / zu schreiben. Eine MCU verfügt über interne 12-kOhm-Pull-up-Widerstände an SDA und SCL. Brauche ich also externe Pull-up-Widerstände?
I2C-Pullups sind eine Überlegung auf Systemebene. Sie benötigen nur ein Paar Pullups pro Segment, aber sie sollten unter Berücksichtigung Ihrer Buslastkapazität dimensioniert werden, um sicherzustellen, dass Ihre digitale Signalisierung ausreichend digital ist und Ihre Flankenraten innerhalb der Spezifikationen liegen. Ich beginne immer bei etwa 2,2 kOhm und stelle nach Bedarf ein. 12 kOhm klingt für meinen Geschmack viel zu hoch. Im Allgemeinen ist ein Oszilloskop praktisch, wenn es um die Auswertung des I2C-Signals in Integrität geht.
Ja, Sie können mehrere Sätze haben, wenn Ihr Bus lang ist oder eine hohe Kapazität hat, ist es oft sinnvoll, mehr als einen Satz zu haben.
Idealerweise, wenn es sich nicht um eine Anwendung mit geringem Stromverbrauch handelt, lautet eine anständige Faustregel, einen Treiberstrom von 1 mA anzustreben. Wenn es sich beispielsweise um einen 3,3-V-Bus handelt, würde ein 3,3-k-Widerstand gut funktionieren. Es ist eine gute Balance zwischen Stromverbrauch und allgemein guten Ergebnissen.
jsotola
Chris Stratton
Ngô Hữu Nam
Ngô Hữu Nam