mercredi 24 juin 2009

Options de compilation sous LabWindows/CVI

imageLes options de compilation sont souvent un peu oubliées alors que l’on développe un programme; hors, elles sont aussi importantes que le code lui même et cela pour plusieurs raisons : elles permettent de configurer la profondeur d’analyse de détection d’erreur du code source et de gestion mémoire lors de l’exécution, elle fixent les adressages pour la compatibilité avec d’autres composants, DLL par exemple. Ainsi, on l’aura compris, la modification d’une option peut changer le niveau de détection des erreurs par le debugger de LabWindows/CVI. On aurait alors un comportement instable de notre programme sans en avoir été averti lors de la compilation ou de l’exécution en mode “debug”. Aussi, pour vous aider dans vos débuts sous LabWindows/CVI, je vous propose d’adopter la configuration ci-après pour les “Build Options” du menu “Options” de LabWindows/CVI 9.0 (les options sont légèrement différentes pour les versions précédentes mais l’essentiel est resté).

Build Options LabWindows/CVI 9.0

lundi 22 juin 2009

Structuration du code LabVIEW

labview_thumb On peut définir un bon code source par plusieurs caractéristiques : déjà il faut qu’il fonctionne, qu’il soit facile à lire et facile à modifier donc aisément maintenable. Dans ces fins, on recherchera à structurer et non à jeter son code pèle-mêle sur le diagramme. On utilisera la palette de structures avec les Palette "structures" de LabVIEW boucles FOR ou WHILE, les CONDITIONS, la structure d’événements (pour gérer les actions sur des éléments de l’interface graphique comme un clic sur un bouton) ou encore les séquences, sans oublier les décorations comme les encadrés et les texte pour ajouter des commentaires. Mais aussi des sous-VI qui regrouperons des instructions, se qui allégera les diagrammes, capitalisera les fonctionnalités et ainsi rendra aisé la distribution des sources et qui permettra, en outre, une meilleur gestion des ressources mémoire par le moteur de LabVIEW lors de l’exécution.