Lab Windows Intro Actualizado

Preview:

DESCRIPTION

Presentación para la Versión actualizada de Labwindows CVI 9.0

Citation preview

LabWindows/CVI

• Entorno de desarrollo integrado

formado por:

– Editor y compilador de lenguaje C

– Librerías de funciones

– Editor de interfaces de usuario

– Paneles de funciones para la ejecución

interactiva y generación de código

– Ejecución por Run-time

LabWindows/CVI

- Elementos de una aplicación:

– Interface grafico de usuario ( .uir )

– Programa de control que coordina la

adquisicion, el analisis y el interface

en lenguaje C ( .c )

– Gestión de la aplicacion con un archivo

de proyecto (. prj )

LabWindows/CVI

Entorno de LabWindows ( I )

1) Ventana de proyectos PROJECT

utilizada para editar y construir las

aplicaciones completas llamadas proyectos

LabWindows/CVI

Entorno de LabWindows ( II )

2) Ventana de código SOURCE:

utilizada para editar y depurar el código en C

LabWindows/CVI

Entorno de LabWindows

( III )

3) Panel de funciones

Function Panel:

para la ejecución

interactiva y generación

automática del código

de una función

LabWindows/CVI

Entorno de LabWindows

4) Ventanas Watch:

visualización de cualquier variable del

programa se activa con posicionamiento el

cursor sobre la variable inspeccionar

CTRL+F7

LabWindows/CVI

Entorno de LabWindows ( V )

4) Ventana User Interface Editor:

diseño y composición del interface de usuario

LabWindows/CVI

Desarrollo de aplicaciones: Diseño del interface gráfico

LabWindows/CVI

Desarrollo de aplicaciones: Diseño del interface gráfico

LabWindows/CVIDesarrollo de aplicaciones: Diseño del interface gráfico

Atributo CONSTANT NAME:

-Tanto el panel como los controles que contiene deben tener

asignados un identificador dentro del programa. En concreto el id para

las ventanas es por defecto PANEL y es referenciado en la carga del

panel:

Hd= Loadpanel(0,”practica1.uir”,PANEL);

DisplayPanel (Hd);

Hd es el manejador y la dirección de memoria de carga del panel.

-Cuando queremos referenciar los controles de un panel para poder

leer o modificar alguno de sus valores o características se sigue la

regla siguiente:

PANEL_NOMBRECONTROL

p.ej:

PANEL_ADQUIRIR

LabWindows/CVI

Atributo CONSTANT NAME:

Las constantes asignadas se encuentran almacenadas en

un fichero de cabecera (.H) que tiene el mismo nombre que el

proyecto, y que es generado de forma automática.

LabWindows/CVI

Atributo CONTROL MODE (Modo de control)

Normal: el usuario puede operar sobre el control desde la

ventana y también se puede modificar por programa.

Hot: el control genera un evento cuando es activado y se

ejecuta la función callback asociada.

Indicator: El control sólo puede modificarse por programa.

Sirve para presentación de datos.

LabWindows/CVI

Relación de eventos:» EVENT_NONE

» EVENT_COMMIT

» EVENT_VAL_CHANGED

» EVENT_IDLE

» EVENT_LEFT_CLICK

» EVENT_LEFT_DOUBLE_CLICK

» EVENT_RIGHT_CLICK

» EVENT_RIGHT_DOUBLE_CLICK

» EVENT_KEYPRESS

» EVENT_PANEL_MOVE

» EVENT_PANEL_SIZE

» EVENT_GOT_FOCUS

» EVENT_LOST_FOCUS

» EVENT_CLOSE

Los marcados en negro son los que más utilizaremos

LabWindows/CVI

Actualización de controles:

Podremos tener controles que podrán ser de

entrada, salida o entrada/salida de datos.

Para la lectura y escritura del valor de un control

se emplean las funciones:

GetCtrlVal ( handle,PANEL_CONTROL, &var )

SetCtrlVal ( handle,PANEL_CONTROL, var )

LabWindows/CVI

Actualización de controles:

Podremos tener controles con características o

atributos particulares como color, estado, etc.

Para la lectura y escritura del atributo de un

control se emplean las funciones:

GetCtrlAttribute ( handle, PANEL_CONTROL,

Tipo_atributo, &attrib )

SetCtrlAttribute ( handle, PANEL_CONTROL,

Tipo_atributo, attrib )

LabWindows/CVI

Paneles Pop-Up ( I )

Función:

MessagePopup

Función:

PromptPopup

LabWindows/CVI

Paneles Pop-Up ( II )

Función:

ConfirmPopup

Función:

GenericMessagePopup

LabWindows/CVI

Paneles Pop-Up ( III )

Función:

FileSelectPopup

LabWindows/CVI

Controles en LabWindows ( I )

Este es el menú con los

diferentes tipos de controles

y paneles disponibles para

el interface de usuario.

A continuación se describen

individualmente:

LabWindows/CVI

Controles en LabWindows ( I )

Controles numeric:

Utilizados para visualizar

o introducir datos de

tipo continuo (analógicos).

Controles string:

Utilizados para visualizar

o introducir cadenas.

Controles text-message:

Presentación de avisos.

LabWindows/CVI

Controles en LabWindows ( II )

Controles command button:

Necesarios para iniciar una

función determinada

asociada al botón.

Controles toggle bottons y

binary switch:Permite

seleccionar entre dos estados.

LabWindows/CVI

Controles en LabWindows ( III )

Controles led indicator:

Necesarios para indicar

encendido/apagado.

Controles decorations:

Utilizados para realzar y mejorar

el aspecto del interface de usuario.

LabWindows/CVI

Controles en LabWindows ( IV )

Control timer:

• utilizado para la ejecución

periódica de una funcion callback

asociada.

• pueden existir varios timers.

LabWindows/CVI

Controles en LabWindows ( IV )

Atributos del timer:

1) ATTR_INTERVAL: intervalo en segundos

2) ATTR_ENABLED: 0 desconectado

1 conectado

Funciones asociadas:

1)ResetTimer

2)SuspendTimerCallbacks

3)ResumeTimercallbacks

LabWindows/CVI

Controles en LabWindows ( V )

Control text box:Permite la visualización de

gran cantidad de información

estructurada por líneas.

Funciones asociadas al text box:1) InsertTextBoxLine

2) DeleteTextBoxLine

3) ReplaceTextBoxLine

4) GetNumTextBoxLines

5) GetTextBoxLineLength

6) GetTextBoxLine

7) ResetTextBox

LabWindows/CVI

Controles en LabWindows (VI )

Control tipo ring:

Permite la selección entre

un grupo de valores posibles

(equivalente a un conmutador

de n posiciones) con lo que el

numero de valores posibles está

limitado y enumerado.

Control list box:

Permite la selección de un

elemento de la lista.

LabWindows/CVI

Controles en LabWindows ( VI )

Funciones asociadas a controles

list box y ring:1) InsertListItem

2) DeleteListItem

3) ReplaceListItem

4) GetCtrlIndex

5) SetCtrlIndex

6) GetValueFromIndex

7) GetValueLengthFromIndex

8) GetIndexFromValue

9) GetNumListItems

10) GetLabelFromIndex

11) GetLabelLengthFromIndex

12) ClearListCtrl

LabWindows/CVI

Controles en LabWindows ( VI )

continúa...

Funciones para list box:

1) SetListItemImage

2) GetListItemImage

3) IsListItemChecked

4) CheckListItem

5) GetNumCheckedItems

LabWindows/CVIControles en LabWindows ( VII )

Representación de datos:

Control Graph Control Strip Chart

- Un control tipo Graph nos permite representar

datos procedentes de una matriz ya rellena (los

datos deben existir previamente)

- Un control StripChart permite la representación

de datos en tiempo real de una o más trazas

LabWindows/CVI

Controles en LabWindows ( VII )

Funciones para un control Graph:1) PlotArc

2) PlotBitmap

3) PlotLine

4) PlotOval

5) PlotPoint

6) PlotPolygon

7) PlotRectangle

8) PlotText

9) PlotWaveform

10) PlotX

11) PlotY

12) PlotXY

13) DeleteGraphPlot

14) GetPlotAttribute

15) SetPlotAttribute

LabWindows/CVI

Controles en LabWindows ( VII )

Uso de cursores:Para poder usar los cursores, el control tipo

Graph (no los stripchart) debe ser HOT:

1) GetGraphCursor

2) SetGraphCursor

3) GetGraphCursorIndex

4) SetGraphIndex

5) GetActiveGraphCursor

6) SetActiveGraphCursor

7) GetCursorAttribute

8) SetCursorAttribute

LabWindows/CVI

Controles en LabWindows ( VII)

Funciones para controles stripchart:

1) PlotStripChart

2) PlotStripChartPoint

3) ClearStripChart

4) GetTraceAttribute

5) SetTraceAttribute