Offline
Newbie
Karma: 0
Posts: 29
|
 |
« on: February 10, 2012, 06:47:54 pm » |
Hello à tous,
Lorsque j'ouvre le Serial monitor de l'IDE ou lorsque je lance un émulateur de terminal comme putty, un reset est effectué sur ma UNO et donc le programme redémarre. "J'espère" que c'est le fonctionnement normal?
Mon problème c'est que je souhaite à terme faire tourner ma carte sans connexion avec mon PC mais j'aimerais pouvoir m'y connecter de temps en temps pour vérifier qu'il n'y a pas de message de débogage sans que les variables soient réinitialisées.
Est-il possible de désactiver ce reset lorsqu'on écoute le port série?
De plus, je ne comprend pas comment cela est possible. Si un programme écoute un port série, comment le périphérique qui y est connecté détecte cette écoute?
Et pourquoi?
Merci
|
|
|
|
« Last Edit: February 11, 2012, 10:29:09 am by moribond »
|
Logged
|
|
|
|
|
Tokyo
Offline
Newbie
Karma: 0
Posts: 17
|
 |
« Reply #1 on: February 10, 2012, 10:37:29 pm » |
C'est le fonctionnement normal. C'est parce que quand tu utilises le port serie par la connection USB de ta carte arduino, il y a d'autres pins connectés que les seuls TX et RX. C'est pour cela que quel que soit le programme que tu utilises, un signal est envoyé sur le pin DTS (je crois) du FTDI et provoque un reset. Pour éviter cela, soit tu déconnectes ce pin (c'est expliqué sur le forum anglais, je crois que c'est une capacité à enlever) sur la carte soit tu écoutes ton port série en passant par un autre port série connecté uniquement aux pins TX et RX (voire TX seulement) de la carte arduino (en plus de la masse).
|
|
|
|
|
Logged
|
|
|
|
|
Bretagne
Offline
God Member
Karma: 8
Posts: 658
|
 |
« Reply #2 on: February 11, 2012, 01:44:17 am » |
Hélas non, c'est au niveau PC qu'il faut intervenir. J'ai fait plusieurs progs qui tournent en standalone avec possibilité de dialogue par série. voilà comment ça se passe chez moi :
- alimentation de l'arduino en stand alone : le prog démarre et s'exécute, normal jusque là. - un branche l'USB (quand on veut) : le prog tourne toujours, pas de changements. - je démarre mon appli PC (en VB6) qui ouvre le port série PC : l'arduino tourne toujours et ne sait toujours pas qu'il est relié au PC. - l'appli PC "cause" sur le port série : si l'arduino a ouvert son port série aussi, il entend et peut répondre.
Dans tout ça, l'arduino n'a fait qu'un seul reset : au moment de son alimentation, c'est tout.
C'est bien le terminal de l'ide arduino qui déclenche un reset, car il n'utilise pas un port série virtuel comme mon appli PC, mais directement l'USB. il est impossible d'ordonner un reset uniquement via port série, à moins que cette fonction soit programmée par l'utilisateur dans l'arduino.
as-tu essayé via l'hyper terminal windows? sinon, il doit bien exister un terminal série tout simple à télécharger...
|
|
|
|
|
Logged
|
|
|
|
|
0
Online
God Member
Karma: 0
Posts: 761
Arduino rocks
|
 |
« Reply #3 on: February 11, 2012, 06:08:22 am » |
Yep! Il existe des solutions software. La solution hardware est spécifié dans la page de réference. http://arduino.cc/en/Main/arduinoBoardUnoYou may also be able to disable the auto-reset by connecting a 110 ohm resistor from 5V to the reset line @+ Zoroastre.
|
|
|
|
|
Logged
|
Veuillez indiquer [RESOLU] dans l'entête du titre en éditant votre premier message 
|
|
|
|
Bretagne
Offline
God Member
Karma: 8
Posts: 658
|
 |
« Reply #4 on: February 11, 2012, 06:26:08 am » |
Oui, mais ça veut dire qu'on perd aussi l'autoreset à l'upload, non?
Faut regarder le côté d'un terminal "extérieur", car avec celui de l'arduino, il est très compliqué d'envoyer des données numériques, puisqu'on ne peut envoyer que des caractères (comment envoyer ou même recevoir la valeur numérique 0 par exemple?)...
J'avais dans l'idée d'en faire un justement pour pouvoir envoyer des données en série à l'arduino (décimal, hexa, binaire, caractères...) un jour sûrement je m'y mettrai...
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Edison Member
Karma: 6
Posts: 2415
|
 |
« Reply #5 on: February 11, 2012, 06:43:14 am » |
Oui, mais ça veut dire qu'on perd aussi l'autoreset à l'upload, non?
Faut regarder le côté d'un terminal "extérieur", car avec celui de l'arduino, il est très compliqué d'envoyer des données numériques, puisqu'on ne peut envoyer que des caractères (comment envoyer ou même recevoir la valeur numérique 0 par exemple?)...
J'avais dans l'idée d'en faire un justement pour pouvoir envoyer des données en série à l'arduino (décimal, hexa, binaire, caractères...) un jour sûrement je m'y mettrai...
bonjour pour info un terminal usart sympa avec pas mal d'options est celui fourni avec tous les compilo de chez mikroelectronica. http://www.mikroe.com/eng/downloads/get/1602/mikroc_pro_pic32_2011_v210.ziple seul inconvénient (encore que) est qu'il faut installer tout le soft, l'outil n'est pas disponible en stand alone
|
|
|
|
|
Logged
|
|
|
|
|
0
Online
God Member
Karma: 0
Posts: 761
Arduino rocks
|
 |
« Reply #6 on: February 11, 2012, 06:45:11 am » |
Yep! Oui, mais ça veut dire qu'on perd aussi l'autoreset à l'upload, non? Oui. Il faut du coup enlever la résistance pour uploader à nouveau. (EDIT : Skywood a raison : Le bouton reset est tjrs ok) J'ai la solution sous linux ou python ici : http://arduino.cc/forum/index.php?topic=68722.0Il faut modifié les paramètres de gestion du port série. Je pense également qu'un regard du côté de la librairie arduino peut être une piste. @+ Zoroastre.
|
|
|
|
« Last Edit: February 11, 2012, 09:08:18 am by zoroastre »
|
Logged
|
Veuillez indiquer [RESOLU] dans l'entête du titre en éditant votre premier message 
|
|
|
|
France
Offline
Faraday Member
Karma: 36
Posts: 4307
Arduino Hacker
|
 |
« Reply #7 on: February 11, 2012, 07:45:32 am » |
Bonjour, Pour désactiver l'auto-reset il est possible de mettre une résistance de >100ohm entre reset et VCC, mais cela empêchera l'upload avec reset auto (logique), il faudra donc appuyer sur reset lors de l'upload. Sinon il existe un excellent logiciel, gratuit, et trés puissant : terminalbpp disponible ici : http://sites.google.com/site/terminalbpp/Il ne déclenche pas de reset au démarage (il faut cliquer sur le bouton "DTS" pour faire un reset) et supporte plein de bonne chose comme le traçage de graph à partir de données au format csv, un "remote controle" par telnet, etc etc... C'est un logiciel trés puissant que je recommande vivement !
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 29
|
 |
« Reply #8 on: February 11, 2012, 10:27:46 am » |
Nickel,
Je vais changer de Terminal.
Grand merci à vous
|
|
|
|
|
Logged
|
|
|
|
|
|