le RX et TX sont utilisés pour rentrer le programme. Le shield GSM les utilise aussi. Et l'utilisateur aussi.
Quand le µC exécute le programme La partie USB/série se met en haute impédance ? Risque de conflit ?
Merci
-----
26/08/2014, 00h38
#2
r4ph
Date d'inscription
mai 2011
Localisation
un peu plus a l'ouest
Messages
460
Re : RX et TX sur arduino
Regarde le schéma, de tête il me semble il y a une ou des résistances sur les ligne rx/tx allant vers les shields. Une sorte de // plus ou moins "isolé". Donc, oui je pense dans certains cas il peux y avoir conflit. Un mégalopole possède 4uarts, ou bien tu peux éventuellement utiliser un uart soft. Mais ça ralentit l'opération...
26/08/2014, 10h12
#3
PA5CAL
Date d'inscription
décembre 2005
Localisation
Paris
Âge
58
Messages
12 143
Re : RX et TX sur arduino
Bonjour
• Les broches RX (pin #0) et TX (pin #1) ne sont pas utilisées pour la programmation sur tous les Arduinos. Par exemple, ce n'est pas le cas sur l'Arduino Leonardo.
• Lorsque ces broches sont utilisées pour la programmation, elles sont reliées au circuit d'interface de la carte au travers de résistances de 1kΩ, ce qui évite des courts-circuits intempestifs en cas de conflit.
• Il est, quoi qu'il en soit, généralement déconseillé d'utiliser les pins #0 et pin #1 pour un autre usage que celui prévu à l'origine. Dans le cas où l'utilisateur le ferait tout de même (ce qui est parfaitement envisageable), il doit prendre les dispositions nécessaires et en subir les limitations et inconvénients.
• Enfin, pour communiquer avec son Arduino hôte, le shield GSM n'utilise pas les pins #0 et pin #1, mais les pins #2 (GSM RX), #3 (GSM TX) et #7 (MODEM RESET).
Dernière modification par PA5CAL ; 26/08/2014 à 10h14.
26/08/2014, 19h46
#4
gcortex
Date d'inscription
juin 2006
Messages
15 500
Re : RX et TX sur arduino
Merci pour ces réponses. Je viens de voir le schéma.
Y a t-il une fonction toute faite pour transmettre sur les pins 2 et 3 ?
Aujourd'hui
A voir en vidéo sur Futura
26/08/2014, 19h59
#5
PA5CAL
Date d'inscription
décembre 2005
Localisation
Paris
Âge
58
Messages
12 143
Re : RX et TX sur arduino
Il existe en effet une bibliothèque pour réaliser logiciellement une interface série asynchrone sur des entrées/sorties non spécialisées. Voir par ici : SoftwareSerial.
Mais en principe, quand on utilise le shield GSM, il est plus simple de faire appel à la bibliothèque GSM, laquelle fait appel à SoftwareSerial.
Dernière modification par PA5CAL ; 26/08/2014 à 20h03.
27/08/2014, 01h40
#6
cyberdalek
Date d'inscription
décembre 2013
Messages
55
Re : RX et TX sur arduino
Salut,
J'avais lu ton post, mais ne connaissant pas les shields gsm, je n'ai pas pris part a la discussion
Par contre pour le software serial cela fonctionne bien a condition d'avoir un debit assez bas du moins sur mon uno, du 9600 si j'ai bonne memoire au grand max.
A+
27/08/2014, 07h50
#7
PA5CAL
Date d'inscription
décembre 2005
Localisation
Paris
Âge
58
Messages
12 143
Re : RX et TX sur arduino
Petit correctif : il semblerait que la version actuelle de la bibliothèque GSM incluse dans l'environnement Arduino ne fasse plus appel à la librairie SoftwareSerial, mais traite elle-même les communications série asynchrones avec le shield.
Sinon, question performances, on doit certainement pouvoir faire mieux. Alors que la bibliothèque GSM fonctionne par défaut avec une vitesse de transmission relativement basse de 9600 bauds, chaque transfert d'octet bloque totalement l'exécution du programme principal par des délais notables (≈1 ms perdue par octet transmis). La librairie SoftwareSerial fait pareil. Si l'on reste à cette vitesse, on pourrait tout-à-fait réaliser ces transferts en parallèle avec d'autres processus à durées maîtrisées (polling d'entrées/sorties, traitement d'autres transmissions par automate logiciel, ...).
Dernière modification par PA5CAL ; 27/08/2014 à 07h53.