Répondre à la discussion
Affichage des résultats 1 à 14 sur 14

Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?



  1. #1
    Yvan_Delaserge

    Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?


    ------

    Bonjour,

    Je possède un montage à base de PIC 18F2520.
    Un bus I2C sert à piloter un affichage OLED, comme celui de la photo.

    Nom : OLED.gif
Affichages : 162
Taille : 141,3 Ko

    J'aimerais faire fonctionner le montage à PIC en un lieu séparé de 20 mètres de l'affichage OLED.

    Puis-je simplement utiliser un câble multibrins, éventuellement muni d'un blindage, pour relier la platine avec le PIC et l'affichage OLED?

    -----
    Un civet, un plat de côtes et puis, glissez-moi une petite paupiette avec.( Lino Ventura)

  2. Publicité
  3. #2
    Vincent PETIT
    Animateur Électronique

    Re : Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?

    Bonjour,
    Même avec un câble blindé je pense que la capacité linéique du câble va nuire au signal I2C, elle va arrondir les arêtes (les coins) du signal et les temps de montés/descentes vont être impactés.

    Je pense que c'est une mauvaise idée.
    Là où il n'y a pas de solution, il n'y a pas de problème.

  4. #3
    carcan

    Re : Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?

    Citation Envoyé par Vincent PETIT Voir le message
    Bonjour,
    Même avec un câble blindé je pense que la capacité linéique du câble va nuire au signal I2C, elle va arrondir les arêtes (les coins) du signal et les temps de montés/descentes vont être impactés.

    Je pense que c'est une mauvaise idée.
    On peut tout de même le risquer en faisant 2 choses en plus du super bon blindage :
    - diminuer les résistances de pull-up
    - diminuer la fréquence du bus

    Après, ça reste pas vraiment conseillé mais ça peut marcher (faut croiser les doigts) ...

    A+
    Laurent

  5. #4
    Antoane
    Responsable technique

    Re : Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?

    Bonjour,

    L'I²C n'est pas prévu pour travailler sur d'aussi grandes distances (effet des capacités parasites et susceptibilité au bruit). Il faut utiliser un autre protocole ou utiliser des solutions adaptées :
    https://www.nxp.com/docs/en/brochure/75016527.pdf
    https://www.ti.com/lit/ds/symlink/p8...=1617616995169 & https://www.nxp.com/docs/en/applicat...te/AN10710.pdf
    https://www.maximintegrated.com/en/d...es/6/6208.html

    Diminuer la vitesse du bus et/ou ajouter des buffers (open-drain + pull-up de valeur réduite) peut être un pis-aller.

    Attention : le câble blindé améliore la sensibilité au bruit, mais également la capacité parasite.
    Penser également aux boucles qui peuvent engendrer des circulations de courants, et donc des chutes de tension additionnelles.
    Dernière modification par Antoane ; 05/04/2021 à 16h49.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  6. A voir en vidéo sur Futura
  7. #5
    Yvan_Delaserge

    Re : Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?

    C'est bien ce que je craignais...
    Mais j'imagine que c'est une situation qui doit arriver souvent: Comment faire fonctionner un bus I2C sur plusieurs metres.
    Est-ce qu'il existe une solution standard? Par exemple deux interfaces a connecter a chaque extremite du cable de 20 metres?

    Il me semble que les cables reseau, par exemple, peuvent fonctionner sans probleme sur plusieurs metres. J'ai ca chez moi, entre le routeur ADSL et ma box pour la television ou mon PC. C'est du signal digital et ca doit fonctionner a des vitesses d'horloge respectables. Comment est-ce possible?
    Un civet, un plat de côtes et puis, glissez-moi une petite paupiette avec.( Lino Ventura)

  8. #6
    Antoane
    Responsable technique

    Re : Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?

    Bonjour,

    les bus de terrains sont conçus pour cela tandis que l'I²C est prévu pour connecter les composants d'une même carte, ou d'un petit ensemble.
    Les bus de terrains ne sont pas en collecteur ouverts, diminuant l'effet des capacités parasites et des couplages.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  9. Publicité
  10. #7
    penthode

    Re : Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?

    l'I2C est un bus à câblage asymétrique , et ne permet donc pas la transmission à distance comme un RS422 par exemple
    [B]Un certain Clément Jean-Baptiste, qui habitait rue Saint Vincent,... [/B]

  11. #8
    jiherve

    Re : Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?

    bonjour,
    Ethernet c'est de l’équilibré donc différentiel, tout ce qui va loin est différentiel ou très lent.
    JR
    l'électronique c'est pas du vaudou!

  12. #9
    Yvan_Delaserge

    Re : Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?

    C'est bien ce que je craignais. C'est loin d'être un problème trivial...

    Merci à tous!
    Un civet, un plat de côtes et puis, glissez-moi une petite paupiette avec.( Lino Ventura)

  13. #10
    Antoane
    Responsable technique

    Re : Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?

    As-tu vu le #4 ? Il existe des solutions intégrées.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  14. #11
    Jack
    Modérateur

    Re : Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?

    Le P82B96 a l'air bien également.

  15. #12
    bobflux

    Re : Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?

    Puisque tu as des PIC, une solution serait de faire un traducteur I2C <-> série avec un PIC, à placer côté afficheur. Pas de problèmes de pullups pour envoyer des données série sur 10m.

    À la limite tu pourrais même mettre un ESP et le faire ne Wifi

  16. Publicité
  17. #13
    Yvan_Delaserge

    Re : Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?

    Merci a tous pour ces solutions interessantes. J'avais aussi envisage de faire la liaison en wifi. Mais malheureusement toutes ces solutions me demanderaient un temps de mise en oueuvre trop important, avec mon faible niveau de connaissances. J'ai vu sur Ebay qu'il existe des modules tout faits pour vehiciuler un bus IIC sur 20-30 metres, mais a un prix assez consequent.
    La platine avec le PIC peut etre reprogrammee de maniere a utiliser une LED bicolore en lieu et place de l'afficheur OLED. Selon la couleur de la LED rouge, orange ou verte, on a une indication suffisante sur le status du circuit contenu sur la platine. Les deux lignes SCL et SDA sot connectees aux cathodes de la LED bicolore et donc ne vehiculent plus que du continu.
    Pour pouvoir utiliser la LED bicolore au lieu de l'afficheur OLED, il y a juste un bit a changer dans le firmware du PIC. Je crois que ce sera la meilleure solition pour moi, a court terme.
    Un civet, un plat de côtes et puis, glissez-moi une petite paupiette avec.( Lino Ventura)

  18. #14
    RISC

    Re : Bus I2C: peut-on le faire fonctionner avec un câble de 20 mètres?

    Salut,

    I2C = Inter Integrated Circuit...c'est pour les commuications sur le même PCB qu'il a été conçu.
    Il existe effectviement des ciruicts "boosters" pour étendre la distance mais honnêtement pour 20m mieux vaut utiliser des bus faits pour cela (RS485 / RS422), à la base des UARTs avec des drivers longue distance...
    Plutôt que de mettre des convertisseurs I2C <=> xxxx il serait plus adapté de changer de bus...mais cela va entrainer effectivement des changements consequents dans le logiciel...

    a+

Discussions similaires

  1. [Divers] Peut-on faire fonctionner un touret à meuler en position verticale?
    Par Yvan_Delaserge dans le forum Dépannage
    Réponses: 20
    Dernier message: 21/09/2020, 17h54
  2. [Divers] Peut-on faire fonctionner mon appareil américain en France sans risque ? ?
    Par choucroute7 dans le forum Dépannage
    Réponses: 9
    Dernier message: 09/01/2016, 19h37
  3. Réponses: 4
    Dernier message: 09/05/2015, 18h22
  4. Réponses: 4
    Dernier message: 05/04/2008, 11h29
Découvrez nos comparatifs produits sur l'informatique et les technologies.