le 01-18-2012 03:49 PM
Bonjour,
J'ai soucis avec l'utilisation de la structure évènement. J'ai simplifié mon programme pour avoir être plus clair. En face avant je dispose :
Mon problème est qu'une modification de l'entrée cadran n'est pas répercutée sur l'indicateur jauge. Pourtant, comme indiqué dans un post du forum, j'ai bien décoché l'option "Verrouiller la face ..." dans "Editer les évènements".
Je vous joins le fichier vi.
Merci.
Djamel
Résolu ! Accéder à la solution.
01-19-2012 01:35 AM - modifié 01-19-2012 01:42 AM
Bonjour Djamel and all,
La boucle while ne se réactivera que lorsque qu'un événement aura eu lieu, comme la variable cadran est dans la boucle et non dans la structure événement il ne se passe rien. Par contre une modification de cette variable sera prise en compte si il y a un événement sur la commande glissière.
De plus il y a une erreur dans la structure événement car elle a du être modifiée, éditée au cour de la programmation, j'ai déjà eu ce problème et cela m'avait pris pas mal de temps avant de "comprendre" ce qui se passait.
Voire ce post : http://forums.ni.com/t5/Discussions-de-produit-de-NI/bloquage-boutons-FA-pendant-une-acquisition/m-p...
le 01-19-2012 02:21 AM
Bonjour,
concernant la structure évènement, il faut toujours placer l'élément sur lequel on souhaite détecter une modification dans la structure évènement, dans l'évèement associé, comme dans l'exemple suivant :
L'extrait de VI m'a supprimé la condition Glissière : Valeur changée, mais le plus important est de bien placer l'élément glissière
Cordialement
le 01-19-2012 02:25 AM
Bonjour,
Tu n'as pas cablé de valeur sur l'entrée de timeout. Cette valeur par défaut est de -1. Cela signifie que ta structure évènement attend à l'infini un évenement.
Le cadran n'est utilisé dans aucun évènement donc la modification de sa valeur ne change en rien l'attente de la boucle évènement.
Si tu ajoute une valeur au timeout (200ms suffit largement pour de l'affichage) tu auras le comportement que tu recherche.
Un conseil: Regarde le fonctionnement de ton vi en utilisant l'ampoule pour surligner l'éxecution, tu comprendras mieux comment se déroule le code.
le 01-19-2012 04:23 AM
Merci à tous pour vos réponses. J'ai tenu compte de vos remarques en intégrant ma glissière dans la structure évènement et en forçant le timeout à 200 ms. J'ai le comportement souhaité.
Bonne journée.
Djamel