Nouvelles:

Bienvenue au Forum de discussion Électro-Bidouilleur! Inscrivez-vous pour participer aux discussions!: 
https://forum.bidouilleur.ca/index.php?action=signup Les demandes d'inscription sont révisées quotidiennement.

Menu principal

Probleme avec Synthétiseur d'Horloge

Démarré par Francisco, Novembre 18, 2019, 02:23:43 PM

« précédent - suivant »

Francisco

Bonjour, je demande de l’aide pour résoudre ce problème, j’ai besoin de configurer 2 sorties à  500khz, et l’une d’elles doit être inversée, je coche la case inversée dans l’une d’elles dans le script "Si5351_Synth_Board_Config.py" et à  la fin de l’enregistrement, le signal apparaît comme le l'image1, jusqu'à  ce que j'appuie sur le bouton de réinitialisation de l'arduino nano, l'inversion n'apparaît pas comme sur la figure 2, cela se produit chaque fois que je nourris le circuit, cela apparaît toujours ainsi et je dois réinitialiser le nano. Salutations

Électro-Bidouilleur

Je ne vois pas. Que vous fassiez le transfert, que vous alimentiez le circuit ou que vous ré-initialisiez l'Arduino, c'est la même fonction du code Arduino qui est appelée et qui envoie la même info du EEPROM vers le Si5351.

Configurez-vous une broche de sortie de plus. Connectez cette broche à  la broche RST avec un bout de fil. Ajoutez la configuration en sortie de la broche, niveau bas, au moment voulu dans le code juste après le transfert du logiciel. Vous pourrez ainsi éliminer une des deux situations. Mais cela ne réglera pas le fait de devoir peser "reset" après chaque mise sous tension.

Essayez un deuxième transfert vers le Si5351, donc répétez la commande suivante une deuxième fois toute suite à  la suite de la première:
if (TempChar == '$') Send_Commands_From_EEPROM_to_Si5351();   

Francisco

Merci pour votre réponse, je vais tester et rapporterais le résultat.
Salutations

papyblue

Bonjour Francisco et Bertrand,

Par curiosité j'ai fait l'essai sur ma petite plaquette et je constate le même phénomène.
PB

papyblue

Bonjour,
Il y a un bug dans le code Python, il faut envoyer la commande PLL_RESET pour que la commande d'inversion soit prise en compte. C'est bien fait pour la sortie n° 4 mais pas pour les autres. En rajoutant la commande pour toutes les sorties, tout rentre dans l'ordre.

Bonne bidouille !

Électro-Bidouilleur

#5
Mais comment cela a pu se produire, et seulement pour la sortie 4! Et bien, on aura tout vu!  :-[

J'ai mis le fichier Zip de mon site web à  jour. Version 0.4 du logiciel python.

Bravo d'avoir trouvé ce bogue.

Francisco

#6
Bonjour, désolé de ne pas avoir répondu avant, mais mon nano n'a pas bien fonctionné et jusqu'à  hier, je n'en ai pas reçu un autre, la solution a été d'ajouter la deuxième ligne indiquée par Bertrand.
Sans mettre la deuxième ligne et avec la dernière version 0.4, j'avais toujours un décalage de 90 degrés et je devais faire reset pour avoir 180 degrés.
Merci beaucoup à  tous pour votre aide.

PD: Hier, je pensais que le problème était résolu, mais aujourd'hui, lorsque je le connecte, les mêmes problèmes apparaissent à  nouveau.

Électro-Bidouilleur

Il semble que les phases sont tout à  fait aléatoires lors de la mise sous tension. Et en effet, un reset du Nano et tout rentre dans l'ordre. Hmmmm... Bon bien je passe plus de temps sur le problème.

Électro-Bidouilleur

Problème réglé et solution testée. J'utilisais la commande PLL_RESET de la mauvaise manière. Il faut invoquer PLL_RESET à  la fin, après l'envoi des configurations des sorties, et pas après la configuration de chaque sortie. En plus je lui fournissais le mauvais paramètre. Décidément!

Je vais soumettre sous peu le code python version 0.5 sur le site web.

Électro-Bidouilleur

Voilà  c'est fait! SVP confirmer que cette dernière version fonctionne bien aussi chez vous.

Francisco

Merci, je vais essayer demain, mais si vous dites que vous l'avez résolu, je suis sûr que ce sera le cas.
Salutations

Francisco

Merci, merci, merci, cela fonctionne bien maintenant.
Salutations

Électro-Bidouilleur