Liaison série - 2 Tx vers un Rx

Salut J'aimerai connecter les TX de deux ports série de l'arduino (un soft et un hard) sur un port RX d'une autre machine. En théorie pas d'émission sur les 2 TX en même temps, donc pas de collision. Je pensais simplement utiliser des diodes en sortie des deux TX. Après quelques recherches, je suis tombé sur des montages avec des résistances : http://www.billporter.info/2011/06/26/how-to-add-multiple-uart-connections/ ou de plus complexes à base de transistors. Je n'ai pas trouvé de montages avec des diodes, ça ne semble donc pas être la bonne solution. Que me conseillez vous ? Merci. David.

tahitibob35: Salut J'aimerai connecter les TX de deux ports série de l'arduino (un soft et un hard) sur un port RX d'une autre machine. En théorie pas d'émission sur les 2 TX en même temps, donc pas de collision. Je pensais simplement utiliser des diodes en sortie des deux TX. ...

Bonjour Utiliser des diodes là , ne pose pas de problemes (c'est une simple porte OU ) , si il s'agit bien de niveaux logiques "positifs" (pas de RS232 avec niveaux +/- ) , Ensuite tout depend de la vitesse UART envisagée et de sa longueur . les diodes imposant une chute de tension, il faut que cette chute ne soit pas redhibitoire vu des niveaux de basculement 0/1. utiliser des "Schottky" permet déjà de limiter/evacuer pas mal de problemes

Bonjour, Moi je mettrais deux diodes (schottky dans le meilleurs des cas) avec anode commune sur le RX de testination ainsi qu'une résistance de pullup sur cette pin.

Yan_duino.

Merci ça marche. Mais j'ai un peu honte : Pourquoi l'anode sur le RX ?

J'ai passé 20 minutes à faire l'inverse et depuis bientôt une heure à essayer de comprendre. Dans ma logique, je faisais cathode commune sur le RX.

Si je joue avec la diode seule, j'applique une tension sur l'anode, et je la récupère sur la cathode (avec mon voltmètre). Et dans le montage complet, il faut faire l'inverse.

Je ne comprends pas.....

Avoir la cathode sur Rx et un pullup connecté , cela permet l'adaptation de niveau automatiquement.

Admettons que ton RX est en logique +3.3V et que les arduinos en +5V,

Appliquer un "1" logique soit 5V sur la cathode de la diode permet d'avoir 3.3V sur Rx donc "1" Appliquer un "0" logique soit 0V sur la cathode de la diode permet d'avoir 0.7V sur Rx donc "0"

ce sont pour moi des astuces qui marchent tout le temps.

A+ Yan_duino.

Je n'ai pas mis de résistance de pullup et ça marche. Avec ton explication, je comprends maintenant que le convertisseur de niveau, installé entre les diodes (oui, j'avais pas tout dit....) et le Rx, joue le même rôle. Merci !

Ok, le pullup pas nécessaire si présent déjà en interne sur le Rx..

Yan_duino