I2C Pull-up Widerstand Rechner

Berechnen Sie optimale I2C-Pull-up-Widerstandswerte basierend auf Buskapazität und Geschwindigkeitsmodus. Unterstützt Standard, Fast und Fast Mode Plus.

I2CPull-upWiderstandBusKommunikationEingebettet

Rechner

pF

Total SDA/SCL line capacitance

V
       Vcc           Vcc
        │             │
       ┌┴┐           ┌┴┐
       │ │ Rp        │ │ Rp
       └┬┘           └┬┘
        │             │
   SDA ─┼─────────────┼─ SCL
        │             │
     ┌──┴──┐       ┌──┴──┐
     │     │       │     │
     │ IC1 │       │ IC2 │
     │     │       │     │
     └─────┘       └─────┘

So verwenden Sie diesen Rechner

Dieser I2C-Pull-up-Widerstandsrechner hilft Ihnen, die optimalen Pull-up-Widerstandswerte für Ihren I2C-Bus basierend auf Buskapazität, Versorgungsspannung und Geschwindigkeitsmodus zu finden.

  1. Schätzen Sie die Buskapazität — Summe aller Geräte-Eingangskapazitäten plus Leiterbahn-/Drahtkapazität
  2. Geben Sie die Versorgungsspannung ein — Typischerweise 3,3V oder 5V
  3. Wählen Sie den Geschwindigkeitsmodus — Standard (100kHz), Fast (400kHz) oder Fast Mode Plus (1MHz)
  4. Klicken Sie auf Berechnen — Erhalten Sie den gültigen Widerstandsbereich und empfohlene Werte

I2C-Pull-up-Formeln

Rmax = tr / (0,8473 × Cbus)
Rmin = (Vcc - Vol) / Iol
Wobei tr = max. Anstiegszeit, Cbus = Gesamtkapazität

Die Einschränkungen verstehen

  • Maximaler Widerstand: Begrenzt durch Anstiegszeitanforderungen. Höhere Kapazität erfordert niedrigeren Widerstand
  • Minimaler Widerstand: Begrenzt durch Ausgangssenkstrom (Iol). Darf die Fähigkeit des Geräts, die Leitung auf LOW zu ziehen, nicht überschreiten
  • Der Faktor 0,8473: Abgeleitet von der RC-Anstiegszeit bis zum Erreichen von 0,7×Vcc (Logic-HIGH-Schwelle)

I2C-Geschwindigkeitsmodi

ModusMax. FrequenzMax. AnstiegszeitMax. KapazitätSenkstrom
Standard-Modus100 kHz1000 ns400 pF3 mA
Fast-Modus400 kHz300 ns400 pF3 mA
Fast-Modus Plus1 MHz120 ns550 pF20 mA
High-Speed3,4 MHz400 pFSpeziell

Hinweis: Der High-Speed-Modus erfordert aktive Pull-ups (Stromquellen) anstelle von Widerstand-Pull-ups.

Buskapazität schätzen

Kapazitätsquellen

  • Geräte-Eingangskapazität: 3-10 pF pro Gerät (Datenblätter prüfen)
  • Leiterplattenspur: ~1-2 pF/cm für typische Spurbreiten
  • Steckverbinder: 2-5 pF pro Steckverbinder
  • Draht/Kabel: 30-100 pF/Meter je nach Kabeltyp

Beispielberechnung

3 Geräte auf einer 10cm-Platine:

  • 3 Geräte × 10 pF = 30 pF
  • 10 cm Spur × 1,5 pF/cm = 15 pF
  • Gesamt: ~45 pF (20% Sicherheitsmarge hinzufügen = 54 pF)

Häufig gestellte Fragen

Kann ich verschiedene Pull-up-Werte für SDA und SCL verwenden?

Typischerweise verwendet man für beide Leitungen den gleichen Wert. Wenn jedoch eine Leitung deutlich unterschiedliche Kapazität hat (z.B. längere Spur), könnte man jede einzeln optimieren.

Was wenn mein berechneter Bereich sehr klein oder ungültig ist?

Das bedeutet normalerweise, dass Ihre Buskapazität zu hoch für den Geschwindigkeitsmodus ist. Lösungen: Anzahl der Geräte reduzieren, Leiterbahnen verkürzen, Bus-Puffer/Extender verwenden oder auf einen langsameren Modus wechseln.

Sollte ich die internen Pull-ups meines Mikrocontrollers verwenden?

Interne Pull-ups (typischerweise 20-50kΩ) sind normalerweise zu schwach für ordnungsgemäßen I2C-Betrieb, besonders bei Fast-Mode-Geschwindigkeiten oder bei nennenswerter Buskapazität. Verwenden Sie immer externe Pull-ups für zuverlässige Kommunikation.

Wo sollte ich die Pull-up-Widerstände platzieren?

Platzieren Sie Pull-ups am Master-Gerät-Ende des Busses oder so nah wie praktisch möglich am Master. Verwenden Sie nur ein Paar Pull-ups pro Bus, nicht ein Paar pro Gerät.

Überprüfen Sie Ihre Bauteilauswahl

Nachdem Sie Ihre Bauteilwerte berechnet haben, verwenden Sie Schemalyzer zur Überprüfung Ihres Schaltplandesigns. Unsere KI-gestützte Analyse erkennt häufige Fehler und schlägt Verbesserungen vor.

Kostenlose Schaltplan-Prüfung