Discussions au sujet des autres produits NI

annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 

[LabVIEW FPGA] NI 9401 pb de génération de trame

Résolu !
Accéder à la solution

Bonjour, 

 

j'ai le soucis suivant, je désire me servir d'une carte NI 9401 ou 9403 (le problème est le même avec les deux cartes) pour communiquer avec un micro en UART et en SPI. 

 

Les cartes sont montées sur un cRio et je programme le tout avec le module FPGA de LabVIEW (j'ai au dessus un programme qui tourne en RT et encore audessus un programme de supervision sur ma chamline de bureau). 

 

je vous mets deux images : 

 

SShotBoucleEcriture.png

 

cette première image est la partie du mon code qui s'occupe de piloter la sortie numérique. Je précise que je l'initailise à 1 et que l'envoie la trame suivante : 010101010 par la boucle "for" puis le remets le bus à 1. 

 

Voici ce que je génère comme signal : 

 

Une capture d'oscilo de ma trame 

OsciloGlobal.png

 

Et un zoume du premier bit que je tente d'envoyer et qui pose problème quand à sa durée

OsciloZoum.png

 

 

Pour résumer mon problème, à une fréquence constante, la boucle for que j'utilise pour générer mon signal ne respecte pas la durée sur les deux premiers état : les deux premier bits durent le temps d'un (par la suite). 

 

J'espère avoir été claire. 

 

D'avance merci pour vos interventions. Si vous avez besoin d'eclairecissement ou autre, je tenterai de vous les apporter au mieux. 

Tout télécharger
0 Compliments
Message 1 sur 4
5 965 Visites
Solution
Accepté par l'auteur du sujet Jean-Baptiste_D

Bonjour,

 

Je pense que ton erreur est du à la fonction de cadencement que tu as utilisé pour la boucle for.

Cette fonction attend un multiple du temps d'attente demandé. Donc à la première itération, tu ne peux pas savoir combien de temps elle va attendre, car cela va dépendre de sa référence de temps. Pour les itérations suivantes, c'est forcément bon, car tu seras sur le bon multiple.

 

Je pense que si tu remplace cette fonction par un wait, ton code sera OK.

 

Si tu peux faire le test.

 

Cordialement.

 

 

Maxime R.  

  CLA - Certified LabVIEW Architect / Architecte LabVIEW Certifié
  CTA - Certified TestStand Architect / Architecte TestStand Certifié

Message 2 sur 4
5 928 Visites

Bonjour, 

 

merci pour ce retour ! Ca semble fonctionner. Je n'ai fait de tests plus poussé que ça mais le problème a disparu. 

 

Merci pour votre aide. 

0 Compliments
Message 3 sur 4
5 923 Visites

Bonne nouvelle.

 

Dans ce cas, si tu peux marquer le forum comme étant résolu.

 

Merci

Maxime R.  

  CLA - Certified LabVIEW Architect / Architecte LabVIEW Certifié
  CTA - Certified TestStand Architect / Architecte TestStand Certifié

Message 4 sur 4
5 916 Visites