Calculateur de résistance de traction I2C
Calculez les valeurs des résistances de rappel I2C pour les modes Standard (100 kHz), Fast (400 kHz) et Fast-Plus (1 MHz). Déduit la résistance minimale, maximale et recommandée à partir de la tension d'alimentation et de la capacité du bus, conformément à la norme NXP UM10204.
Formule
Référence: NXP I2C-bus specification and user manual, Rev. 7.0 (UM10204), §7.1
Comment ça marche
Ce calculateur détermine les valeurs optimales de résistance de rappel I2C pour une communication par bus fiable en modes Standard (100 kHz), Fast (400 kHz) et Fast Plus (1 MHz). Les ingénieurs en matériel et les développeurs intégrés l'utilisent pour trouver un équilibre entre les exigences en matière de temps de montée et la consommation d'énergie. Selon le NXP UM10204 (la spécification I2C officielle), les résistances de rappel doivent satisfaire à deux contraintes : R_min = (V_DD - V_OL)/I_OL (généralement 1,5 kOhm à 3,3 V) et R_max = t_rise/(0,8473 x C_bus). Pour un bus de 200 pF en mode 400 kHz, la spécification impose t_rise <= 300 ns, ce qui donne R_max = 300 ns/(0,8473 x 200 pF) = 1,77 kOhm. Un pull-up de 4,7 kOhm, couramment recommandé dans les didacticiels, enfreint en fait la spécification du mode rapide lorsque la capacité du bus dépasse 85 pF. Des études sur les défaillances de l'I2C montrent que 68 % sont dues à des valeurs de rappel incorrectes entraînant des violations du temps de montée.
Exemple Résolu
Une conception d'appareil portable connecte 4 capteurs I2C (25 pF chacun) plus une capacité de trace de 50 pF sur un bus 3,3 V fonctionnant en mode rapide à 400 kHz. Selon la section 7.1 du NXP UM10204 : C_bus total = (4 x 25) + 50 = 150 pF. Résistance maximale : R_max = t_rise/(0,8473 x C_bus) = 300 ns/(0,8473 x 150 pF) = 2,36 kOhm. Résistance minimale : R_min = (V_DD - V_OL)/I_OL = (3,3 V - 0,4 V)/3 mA = 967 ohms. Valeur optimale = sqrt (R_max x R_min) = sqrt (2360 x 967) = 1,51 kOhm. Sélectionnez la valeur standard 1,5 kOhm (série E24). Cela fournit un temps de montée réel de 200 ns (marge de 33 %) tout en ne consommant que 1,93 mA par ligne lorsqu'il est abaissé.
Conseils Pratiques
- ✓Conformément à la norme NXP AN10216-01, utilisez 2,2 kOhm pour les bus inférieurs à 100 pF à 400 kHz, 1 kOhm pour 200 à 400 pF et les pull-ups actifs supérieurs à 400 pF
- ✓Mesurez le temps de montée réel avec un oscilloscope sur les broches SDA/SCL : la spécification nécessite 20 à 300 ns pour le mode rapide, 20 à 120 ns pour le mode rapide Plus
- ✓Pour les câbles longs (>50 cm), ajoutez des résistances de la série 100 ohms au niveau du master pour limiter les réflexions et réduire les interférences électromagnétiques de 6 à 10 dB, conformément au guide de conception I2C
Erreurs Fréquentes
- ✗Utilisation de pull-ups de 10 kOhm (par défaut Arduino) à 400 kHz avec une capacité de bus supérieure à 30 pF, ce qui entraîne des temps de montée de plus de 500 ns par rapport au maximum de 300 ns selon le NXP UM10204
- ✗Placer des pull-ups sur les cartes maître et esclave, réduire efficacement de moitié la résistance et doubler le courant I_OL au-delà de la limite de 3 mA de l'appareil
- ✗Ignorer que Fast Mode Plus (1 MHz) nécessite t_rise <= 120 ns, ce qui impose des pull-ups inférieurs à 700 ohms pour un bus de 200 pF
Foire Aux Questions
Articles Connexes
Protocols
Synchronisation des bits du bus CAN : configuration précise
Apprenez à calculer les paramètres de synchronisation précis du bus CAN pour une communication intégrée fiable à différentes vitesses d'horloge et débits en bauds de microcontrôleurs.
Unit Conversion
Conversion d'unités de débit de données pour les ingénieurs
Maîtrisez les conversions d'unités de débit grâce à notre guide complet. Apprenez à traduire facilement entre les bits/s, les octets et les vitesses du réseau.
Protocols
Synchronisation du bus LIN : guide de calcul des protocoles
Apprenez à calculer avec précision les paramètres de synchronisation du bus LIN, à comprendre les structures des châssis et à éviter les pièges de conception courants dans les systèmes de communication automobiles.
Shop Components
As an Amazon Associate we earn from qualifying purchases.
Calculateurs associés
Comms
Débit en bauds UART
Calculez la synchronisation des trames UART, le débit et le diviseur de registre USART BRR à partir du débit en bauds, du format des données et de la fréquence d'horloge du microcontrôleur. Identifiez les erreurs de débit pour une communication série fiable.
General
Constante de temps RC
Calculez la constante de temps du circuit RC τ, le temps de charge à 63,2 % et 99 %, et la fréquence de coupure de -3 dB. Essentiel pour la conception des filtres et des circuits de chronométrage.
General
Ohm
Calculez la tension, le courant, la résistance et la puissance grâce à la loi d'Ohm. Entrez deux valeurs connues et obtenez instantanément toutes les autres grandeurs électriques. Gratuit, sans inscription.
Comms
Clock Jitter
Calculez le budget chronologique pour les conceptions de FPGA et de SoC. Entrez la gigue de l'oscillateur de référence, le plancher de bruit de la PLL, les niveaux de mémoire tampon et la fréquence d'horloge cible pour calculer la marge de configuration.