Liaison série

Bonjour,

afin de pouvoir utiliser le port série après le téléversement et de ne pas ajouter SoftwareSerial au code, avez vous déjà commuté l'entrée Rx avec un dispositif (pas un relais tout de même) commandé par une pin du micro ?

Afin de ne pas réinventer la roue, merci pour vos schémas d'essais réussis et vos retours d'expérience.

JF

Bonjour
Débit ? Longueur des liaisons séries ?

Dans un autre contexte (PIC) une commutation de deux liaisons série fonctionnait bien avec un CD4053.
De mémoire c'était a debit modéré et sur 2m
Pas de schéma sous le coude.
Voir la notice technique du 4053

Bonjour,

Je n'ai pas très bien compris ce que tu veux faire. Commuter l'entrée RX du micro soit sur l'interface USB-Série soit sur le connecteur de la carte?
Si c'est le cas il te faudra modifier la carte.

Cependant le RX du micro est relié à l'interface USB-Série par une résistance de 1K. Donc si tu connectes une liaison série externe (sans résistance) elle prendra le pas sur la connexion usb-série et tu pourras gérer ta liaison connectées sur les pins rx/tx. Il te faudra sans doute déconnecter cette liaison pour télécharger.
En admettant que la carte soit une un ou équivalent.

JFArdidi:
afin de pouvoir utiliser le port série après le téléversement…

En imaginant une bidouille pour que ça fonctionne, une fois basculé comment revenez vous au mode téléchargement la prochaine fois que vous voulez faire une mise à jour ?

Je pense qu’on revient toujours à une sorte d’interrupteur à 2 positions, une position programmation et une position utilisation et il faut que l’utilisateur fasse la bascule.

merci pour vos réponses.

C'est précisément pour déconnecter une liaison série externe au reset, laisser l'usb-série faire son éventuel travail puis prendre la main dans le programme.

Le débit au maximum si possible, mais ce n'est pas critique.

La longueur, fichtre entre 1 et 5 cm, longueur de la piste/du fil jusqu'à la série externe (HC05/06, module RS232/485, ...)

Je ne sais pas si un CD 4053 peut faire l'affaire, j'avais pensé à un buffer 3 états commandé par une pin du micro qui revient automatiquement à un état défini au reset, rendant le téléchargement possible.
Genre un NL17SZ126, mais je ne sais pas s'il faut que la commande soit inversée.

... le pilotage du commutateur peut être polus ou moins aisé selon la carte utilisée.. :wink:
Avec une carte à ESP8266 ou ESP32 un GPIO0, s'il est maintenu à l'état bas, peut servir si c'sst compatble avec la carte

Car comme l'indique @kamill il faut étudier de près le schéma de la carte (quelle carte ?) pour voir ce qu'il est possible de faire sans modification de celle-ci

JFArdidi:
C'est précisément pour déconnecter une liaison série externe au reset, laisser l'usb-série faire son éventuel travail puis prendre la main dans le programme.

Si c'est juste ça, ça me parait assez simple. Un simple transistor PNP suffit.
Choix-RX.png
Il suffit de mettre la pin de commande à 1 pour autoriser la réception externe.

HS: Tiens, l'image s'est mise toute seule dans le post sans que j'ai besoin de copier l'adresse et d'éditer le message. Est ce qu'ils auraient (enfin) amélioré l'ergonomie du forum?

Choix-RX.png

Oui, enfin.

Je ne compte pas triturer de carte, mais ajouter quelques composants et me brancher sur les connecteurs de la carte.

Le choix de la carte n'est pas encore fixé, sans doute une nano, mais actuellement je prototype sur une bonne vieille R3 officielle.

Le transistor c'est bien, mais il me semble, ou peut-être suis-je dans l'erreur, qu'au reset les PINs sont remises à l'état haut, donc autorisant l'arrivée de données sur RX, se superposant éventuellement aux donnée série en provenance de l'USB.
Il faudrait que la commande inhibe "l'extérieur" lorsque qu'elle est à 1 et l'autorise lorsque elle est à 0, ce que mon programme pourra faire lorsqu'il le jugera utile.

Par ailleurs, dans la configuration proposé avec le transistor PNP, je ne comprends pas comment RX est tiré à 0 quand le signal série est à 0.

Bonjour,
à ce stade on ne connait toujours pas le tenant ni l'aboutissant ni la nature de cette liaison série ! ...

Bonjour,

pour le tenant il y a un module arduino et pour l'aboutissant un autre module arduino, un périphérique quelconque, un module bluetooth, rs232 ou 485, etc.

Je suis en train de bricoler un/des modules pour surveiller l'énergie fournie par un panneau solaire et celle restituée par la batterie et son onduleur sous forme de 220V alternatif. Y compris sa forme d'onde en charge.
Peut-être un module arduino pour tout faire, ou un pour la partie batterie et un pour la partie 220V. On verra.

Donc de la communication entre modules, avec un smartphone pour avoir une vison immédiate de ces grandeurs, avec un pc pour les enregistrer afin d'analyse.

Je trouvais dommage de perdre un périphérique série hard, avec tout les avantages qui vont avec, pour permettre juste les quelques secondes de téléchargement. Et aussi une pin car RX+TX+RX émulé+TX émulé, cela fait 4 PINs. RX+TX+Commande selecteur, cela fait 3 PINs. Et un peu de hard certes, mais je trouve que le jeu en vaut la chandelle.

Dites-moi.
Je serai bien surpris que personne n'ai fait cela, non ?

Bonsoir

Je trouvais dommage de perdre un périphérique série hard, avec tout les avantages qui vont avec, pour permettre juste les quelques secondes de téléchargement

Avec une carte Pro Mini on relie Rx et Tx à une interface USB (FTDI ou équivalen) le temps du flashage et le reste du temps et le reste du temps on utilise librement RX et TX

Avec une carte Pro Micro (ou Leonardo) on a un port série USB pour le flashage et la mise au point et un port série matériel totalement disponible

L'existence de telles solutions explique sans doute pouquoi personne ne semble s'être intéressé à ce jour à customiser une carte UNO pour permuter automatiquement son unique port série matériel.....