[résolu]Comportement à l'ouverture du moniteur serie

Bonjour,
Je me pose une question sur le fonctionnement d'une méga 2560 R3 au moment où j'ouvre le moniteur série.

Dans la section setup(), j'utilise une fonction delay(5000) pour attendre que mon modem GSM TC35i s'initialise quand je mets sous tension.
Dans la section loop(), j'allume une LED en permanence, comme preuve que mon programme est bien en train de tourner.

Je remarque le comportement suivant :
Quand je transfère un nouveau programme à la méga, le programme se lance. Ma LED s'allume au bout de 5 secondes en continu, preuve que le programme tourne.
Au moment ou j'ouvre le moniteur série, je vois la LED qui s'éteint, environ 5 secondes. Et qui se rallume de façon permanente. Comme si le programme refaisait le setup() !

Pourquoi ce comportement ?
Que se passe-t-il exactement quand on ouvre le moniteur série ?
J'ai besoin, sur cette application, de temps en temps, de venir brancher en USB temporairement mon PC pour voir ce que mon programme affiche sur le moniteur série. Puis, je dois débrancher de nouveau mon PC. Comment gérer cela sans que le programme s'arrête ?

Merci d'avance

bonjour,
ouverture de la console = reboot de la carte.

ouverture de la console = reboot de la carte.

C'est sur, je n'y ai pas fait attention.
Si c'est vrai c'est idiot.

Si c'est du au comportement de l'IDE et de son moniteur série tu peux utiliser un adaptateur USB/UART qu'on trouve partout et que tu branche sur RX et TX de la carte.
Tu peux le gérer à partir d'un PC avec des logiciels comme CuteCom ou MiniCom.
Tu ne perdra pas au change.

Ce qu'explique infobarquee ci-dessus, ça ressemble fortement à ce que je constate !!!
Merci pour l'explication.

J'ai développé un système qui reçoit des SMS, qui les traite et qui envoi des SMS en réponse.
Quand il fait les traitements, il décrit ce qu'il est en train de faire en envoyant du texte sur le port série. Ce qu'il reçoit, ce qu'il envoie, des messages d'erreurs...

D'où l'idée, pour savoir si tout se passe bien, de venir surveiller de temps en temps ce qui se passe, en connectant un moniteur série dessus.

Je vais regarder ce que propose 68tjs, car déclencher un reset quand on veut monitorer un système, c'est pas terrible !!!

C'est sur, je n'y ai pas fait attention.
Si c'est vrai c'est idiot.

il en est de même si tu ouvre un nouveau code existant, constaté sur ide 1.6.7
chaque lancement de la console série provoque un reset de la carte, donc reboot.

infobarquee:
il en est de même si tu ouvre un nouveau code existant, constaté sur ide 1.6.7
chaque lancement de la console série provoque un reset de la carte, donc reboot.

bonjour
meme comportement avec uno , l'ouverture du port serie envoi par defaut le signal DTR qui rseboot l'arduino.
il y a sur les uno et mega un pont prevu pour changer le mode , perso jamais utilisé

D'un certain coté mes essais avec l"ARM STM32 me montrent qu'à l'ouverture de la liaison (j'utilise cutecom) les premiers caractères sont inconsistants et qu'un Reset remet "la cosmétique d'aplomb".
Apparemment "la cosmétique" est très importante chez Wiring/arduino.

il y a sur les uno et mega un pont prevu pour changer le mode , perso jamais utilisé

Cela me rappelle avoir lu quelque chose dessus, mais il faut alors faire le Reset soi même à chaque reprogrammation.

Entre deux maux il faut choisir....

J'utilise un truc comme ça :

Toute l'électronique est dans la fiche USB. Il y a juste Vcc, gnd, RX et TX.
Ce n'est pas du CH340G c'est du Prolific.
Avec linux on s'en balance : tout est automatique. Avec Win$ ben faut trouver le pilote et l'installer.

oui j'en ai aussi en PL202
en fait le signal DTR sur arduino sert a resetter l'arduino pour passer en mode upload avec le bootloader.
ce qui est genant c'est que l'utilisation du serial fait aussi monter lr DTR.
ce qui ne produit pas en utilisant un terminal serie plus evolué (prise en charge des signaux annexes)

J'utilise maintenant terminalbpp au lieu du moniteur série de l'arduino.

L'utilisation de ce terminal ne resete plus l'arduino.

J'ai par contre 2 problèmes :

  • malgré le fait d'avoir coché autoscroll, l'autoscroll ne se fait pas. Je ne comprends pas.
  • quand je veux envoyer un message, le fait de faire entrée pour l'envoyer ne le supprime pas du champ d'envoi. Ce n'est pas très pratique (sauf si on veut envoyer plusieurs fois le même message).

Avez vous une idée ?

jerome42800:
J'utilise maintenant terminalbpp au lieu du moniteur série de l'arduino.

L'utilisation de ce terminal ne resete plus l'arduino.

J'ai par contre 2 problèmes :

  • malgré le fait d'avoir coché autoscroll, l'autoscroll ne se fait pas. Je ne comprends pas.

cherche pas , j'utilise aussi terminalbpp , le bug autoscroll est "connu"
un terminal serial "serieux" :grin:
utiliser l'outil USART terminal d'une suite Mikroe (mode demo)
c'est pas de l'open source , mais c'est plutôt pas mal

Bon, je viens de passer 1 heure à essayer un paquet de terminaux. Et j’ai pas mal tourné en rond.

  • celui de mikroelectronica : il resete l’arduino quand on se connecte. EDIT : erreur de ma part, NON, il ne resete pas. Il n’y a pas beaucoup d’option. L’affichage est hyper lent.

  • realterm : il resete l’arduino. L’interface est très vieille, pas pratique.

  • terminalBBP : c’est franchement celui que je trouve le plus pratique, et le plus facile à utiliser. Mais il y a le bug de l’autoscroll qui est franchement pas cool (dernière version = v1.93b).

J’ai donc cherché de vieilles versions.
J’en ai trouvé une très vieille : l’autoscroll marche, mais elle resete l’arduino :frowning:

Et, j’ai finalement trouvé :
Sur le site officiel : Terminal
Il faut choisir : Terminal20130116.zip

C’est la version v1.9b :

  • L’autoscroll marche.
  • ça ne resete pas l’arduino.

:slight_smile: :slight_smile: :slight_smile:

jerome42800:
...
Et, j'ai finalement trouvé :
Sur le site officiel : Terminal
Il faut choisir : Terminal20130116.zip

C'est la version v1.9b :

  • L'autoscroll marche.
  • ça ne resete pas l'arduino

bonsoir
ET c'est OK (au moins pour ce qui concerne l'autoscroll)
Merci ! :grin:

juste pour info , (retesté) l'usart terminal de mikroe , ne reset pas chez moi (sauf DTR coché)

oupss, je me suis embrouillé.
Effectivement, le terminal de mikroelectronica :

  • ne restete pas l'arduino.
  • Sauf si on appuie sur DTR

Par contre :

  • le mien est très lent à la réception.
  • je veux envoyer par exemple 1 suivi d'un CR. Je n'ai pas trouvé comment ajouter le CR. Il n'y a pas l'option.

jerome42800:

  • je veux envoyer par exemple 1 suivi d'un CR. Je n'ai pas trouvé comment ajouter le CR. Il n'y a pas l'option.

bonjour
comme çà ?

Merci, cela fonctionne bien en effet en cochant APPEND NEW LINE.