le 10-09-2012 03:18 AM
Bonjour,
Dans le VI ci joint je génère un signal PWM ayant un rapport cyclique de 0,1 et une fréquence de 1Hz sur la pin CTR0 d'un DAQ 6341. Cette pin est physiquement reliée à une entrée numérique (port1/line0). La lecture de cette ligne est déclenché sur front montant de la ligne CTR0. Puis la valeur de cette ligne (port1/line0) est recopié sur une ligne numérique en sortie (port0/line5) sur front montant de la ligne CTR0.
Dans la logique je devrais donc avoir sur la ligne port0/line5 l'image de mon signal CTR0. Pourtant je me retrouve sur la ligne port0/line5 avec un offset en temps pouvant aller jusqu'à 25ms (relevé oscillo) et une durée du niveau haut variant entre 60 ms et 110ms alors que ma sortie CTR0 est fixe avec un niveau haut de 100ms.
Pourquoi ai je ce décalage en temps entre la ligne CTR0 et la ligne port0/line5 (je conçoit qu'il y ait un léger décalage mais là un décalage allant jusqu'à 25ms.....)
Merci de vos infos
le 10-10-2012 07:30 AM
Bonjour,
J'ai du mal à comprendre votre façon de faire. Je doute que configurer le trigger, démarrer la tache, effectuer la tache et l'arrêter à chaque itération soit très optimisé.
Pourquoi n'intégrez vous pas seulement la lecture ou l'écriture dans la boucle while ? A mon avis vous gagneriez en performance.
Cordialement,
Mathieu P. | Certified LabVIEW Associate Developer
National Instruments France
le 10-10-2012 08:02 AM
Merci de votre réponse.
En effet j'ai fourni la mauvaise version de mon vi!! La version correcte est bien celle (voir fichier joint) que vous décrivez (seulement écriture et lecture dans la boucle while). Mais malgré cela mon problème est toujours présent: décalage important entre la sortie générée et le signal PWM.