Nouvelles:

Le Forum est maintenant chiffré (préambule https). Bien sûr, des liens externes insérés dans les sujets vont demeurer inchangés. Mais la composition des pages du Forum est désormais sécurisée. Si des problèmes d'affichage surviennent, veillez à vider votre cache pour ce site.

Menu principal

EB_#317 problème de communication

Démarré par papyblue, Octobre 12, 2019, 07:02:06 PM

« précédent - suivant »

papyblue

Bonjour,

La dernière vidéo m'a donné envie de me lancer dans l'apprentissage de Python et venant de recevoir mon Raspberry PI 4, j'ai eu la drôle d'idée de mélanger tout ça en partant de l'application SI5351.
Le passage en Python 3 n'a posé aucune difficulté. La programmation de la carte nano a été un peu capricieuse mais a fini par se faire.
là  où ça coince, c'est au moment du transfert, il semble que la liaison ne marche pas.
Ci joint copie d'écran.

Avez-vous une idée ?

PS: l'arduino fonctionne avec Windows (copie écran 2)

PB   

Curiosus

Bonjour papyblue, et tout le forum,

Apparemment problème du pilote sur USB ==> RS232, pour aller plus loin dans ma déduction, il faudrait savoir sur quelle système d’exploitation tu tournes.

Je dirais Windows 7 d'après les images, si c'est le cas regarder dans gestionnaire de périphérique, voir si il y a pas une anomalie.

De plus désactivé le sommeille des ports USB, qui sont automatiquement mis lors de l’installation de Windows.

A+
   

papyblue

#2
Bonjour Curiosus,

Sous Windows tout fonctionne parfaitement comme le montre la copie d'écran. C'est sous RAPSBIAN (linux) que le problème se pose. Vu que cela fait plusieurs décennies que je n'ai pas touché à  Linux, j'ai peut-être raté quelque chose d'évident pour d'autres.

Le port /dev/ttyUSB0 fonctionne correctement avec l'environnement de développement Arduino.

PB

Curiosus

Bonjour papyblue, et tout le forum,

Linus, je connais pas trop, je peux pas t'aider dessus, mais il faudrait voir si tout les données arrive avec un analyseur logique.

Genre d'analyseur logique à  pas chère : https://www.ebay.fr/itm/USB-Logic-Analyzer-Device-Set-Compatible-to-Saleae-24MHz-8CH-for-ARM-FPGA-M100/253841718379?hash=item3b1a253c6b:g:NNoAAOSwjXVaoiyH

Avec logiciel gratuit pour à  peu près tout système d'exploitation ici : https://sigrok.org/wiki/Windows

Et pour finir une petite vidéo : https://www.youtube.com/watch?v=z8Tdz7eQ8n4

C'est ce que j'ai, et j'en suis content.

A+



Électro-Bidouilleur

#4
Vous semblez rouler le script à  partir d'un environnement IDE. Essayez plutôt de le rouler directement dans une fenêtre de console. Allez dans le dossier où se situe le script. Ensuite exécutez le script par la commande:
"python Si5351_Synth_Board_Config.py"
C'est de cette façon que je le roule. Peut-être que ça fera une différence...

papyblue

Bonjour Bertrand,

L'idée était bonne, en effet en lançant Python dans un terminal ça marche. Avec Pyhon3 ça ne marche pas, c'est donc de ce côté là  que je dois creuser.
Merci.

papyblue

Bonjour à  tous,

A force d'acharnement j'ai réussi à  faire tourner en Python 3 en remplaçant les commandes :
ser.write(TxStr+"|")
par
ser.write(TxStr.encode('utf-8')+b"|")
et
== 'R' par ==b'R' etc...

Je ne sais pas si c'est la bonne méthode mais ça marche.
PB


Électro-Bidouilleur

Oh quand même...des changements pas intuitifs. N'y a t'il pas quelque chose que vous pourriez placer en entête pour ne pas avoir à  préciser l'encodage partout?

papyblue

@ Bertrand : oui sans doute mais je débute avec Python (avec les mains directement dans le cambouis), je vais d'abord commencer par les bases...

@curiosus : Un analyseur logique ne convient pas pour espionner la liaison série vue qu'elle est "encapsulée" dans l'USB. Sur les conseils d'EB j'ai utilisé Wireshark (voir copie d'écran) et ça le fait !

Merci à  vous. 

Électro-Bidouilleur

Vous pouvez tout de même sonder avec un analyseur logique sur l'Arduino, sur les liaisons série vers le microcontrôleur. J'ai dû le faire pour comprendre le fameux problème de "reset".

papyblue

Mea-culpa, je pensais qu'il y avait deux lignes différentes.

J'ai branché ma petite plaquette si5351 (avec 3 sorties), tout marche bien(quand on n'oublie pas de mettre la fréquence de l'oscillateur)   

Électro-Bidouilleur

Bravo! Maintenant, vous pourrez faire évoluer le logiciel!  ;) Amusez-vous bien!