Utilisation TCA9548A avec platine Arduino DUE problème

Bonjour,

Mon projet devant utiliser plusieurs écrans Oled 1.3" qui ont la même adresse I2C j'ai utilisé des multiplexeurs I2C TCA9548A .

Il fonctionne parfaitement avec des UNO et mega 2560.
Mais ayant besoin un traitement plus rapide de la boucle je voulais utiliser un DUE. mais là, le multiplexeur ne fonctionne plus.

Avez-vous une idée? Comment résoudre ce problème?

Merci de votre aide

Jean-Claude

Mais ayant besoin un traitement plus rapide de la boucle je voulais utiliser un DUE. mais là, le multiplexeur ne fonctionne plus.

Est-il prouvé que c'est bien le multiplexeur qui cesse de fonctionner avec DUE ?
Le montage sur DUE avec un seul afficheur (et sans multiplexeur) est-il bien OK ?
Le TCA9538A et-il bien alimenté en 3,3V ? (pin VIN sur le breakout Adafruit TCA9538A)

Bonsoir,

Oui il fonctionne parfaitement avec quatre écrans sur un MEGA2560 et lorsque j'ai eu le problème sur le DUE j'ai essayé de lancer un scan sur les sorties du multiplexeur, problème de compilation, à nouveau test du matériel sur le MEGA2560 et tout est ok et bien alimenté, test en 3.3v et 5v cela marchait aussi bien sur les deux tensions.
En lançant les commandes habituelles avec deux écrans pour test sur le DUE sur void setup seul le premier écran affiche, sur la boucle avec deux affichages différents. les messages différents alternent sur l'écran N°1, l'écran N°2 n'affiche rien.
Comme j'avais deux multiplexeurs j'ai essayé les deux et ils font pareil.
Merci de votre aide et votre expertise.

Jean-Claude

Sur l'Arduino DUE, SDA et SCL ont des pullups internes, mais pas SDA1 et SCL1.

Si donc tu utilises SDA1/SCL1, il faut ajouter des pullups de 2K2 (raccordées au 3.3V ), ET de plus dans le code il faut changer partout wire par wire1, ce qui se traduit en début de sketch par :

#include <Wire.h>
#define Wire Wire1

Bonjour,

le fonctionnement étant difficile je n'ai pas testé sur SDA et SCL1 je suis passé en SPI et cela fonctionne.

Merci de votre aide