Documentos de Académico
Documentos de Profesional
Documentos de Cultura
LENGUAJE DE
PROGRAMACION
Ing. Rubén Loredo Amado
4° A
INTEGRANTES:
PONCE NAJERA NADIA CECILIA
SANTOS SANTIAGO IVAN ALDARI
SANCHEZ MARTINEZ PRISILLA VIVIANA
ZAVALA GARCIA MARIO ROBERTO
LOPEZ LUNA EMMANUEL
INDICE
Introducción…………………………………………………………………......3
Materiales………………………………………………………………………..4
Desarrollo………………………………………………………………………..5
Desarrollo del programa
Interfaz grafica
Componentes utilizados en la interfaz grafica
Programación
Funciones utilizadas
Diagrama de flujo
Conclusión……………………………………………………………………….19
Experiencia y Aprendizaje……………………………………………………...20
Bibliografía……………………………………………………………………….21
Página | 2
INTRODUCCION
Página | 3
MATERIALES
Página | 4
DESARROLLO
El programa se compone de 8 LEDS, 5 botones, 1 knob y 4 timers.
Los timers están programados para que se realicen las secuencias dependiendo de
qué botón se presione. Si el botón presionado es el “EFECTO 1”, la secuencia de
los LEDS será de 1 al 8 y así sucesivamente, si el botón presionado es el “EFECTO
2”, la secuencia de los LEDS será de 1 a 8 y de 8 a 1, así sucesivamente. Si el botón
que se presiona es el “EFECTO 3”, la secuencia de los LEDS será de 1 a 4 y de 8
a 5, así inversamente. Si el botón que se presiona es el “EFECTO 4” se realizara
otro tipo de frecuencia.
El knob está vinculado con cada timer y secuencia para que este regule la velocidad
de la secuencia a gusto.
Página | 5
DESCRIPCION DE CADA ELEMENTO
2
1
1.- PICTUREBUTTON: Este botón sirve para salir totalmente del programa.
2.- BINARYSWITCH: Enciende y apaga las secuencias de los LEDS.
3.- LED: Estos son los 8 LEDS donde se mostraran las secuencias.
4.- PICTURE: Colocamos una imagen para el título del programa.
5.- NUMERICKNOB: Es para regular la velocidad de las secuencias.
Página | 6
PROGRAMACION
//=======================================================================
=======
//
// Title: PRACTICA1
// Purpose: A short description of the application.
//
// Created on: 17/10/2017 at 08:25:09 a. m. by .
// Copyright: . All Rights Reserved.
//
//=======================================================================
=======
//=======================================================================
=======
// Include files
#include <ansi_c.h>
#include <cvirte.h>
#include <userint.h>
#include "PRACTICA1.h"
#include "toolbox.h"
//=======================================================================
=======
// Constants
//=======================================================================
=======
// Types
//=======================================================================
=======
// Static global variables
//=======================================================================
=======
// Static functions
//=======================================================================
=======
// Global variables
int blink=0;
double tiempo_timer;
Página | 7
//=======================================================================
=======
// Global functions
Error:
/* clean up */
if (panelHandle > 0)
DiscardPanel (panelHandle);
return 0;
}
//=======================================================================
=======
// UI callback function prototypes
QuitUserInterface(0);
break;
}
return 0;
}
Página | 8
switch (event)
{
case EVENT_COMMIT:
double tiempo_timer;
GetCtrlVal(panelHandle,PANEL_NUMERICKNOB,&tiempo_timer);
break;
}
return 0;
}
int estado;
GetCtrlVal(panelHandle,PANEL_BINARYSWITCH,&estado);
SetCtrlVal(panelHandle,PANEL_LED,0);
SetCtrlVal(panelHandle,PANEL_LED_2,0);
SetCtrlVal(panelHandle,PANEL_LED_3,0);
SetCtrlVal(panelHandle,PANEL_LED_4,0);
SetCtrlVal(panelHandle,PANEL_LED_5,0);
SetCtrlVal(panelHandle,PANEL_LED_6,0);
SetCtrlVal(panelHandle,PANEL_LED_7,0);
SetCtrlVal(panelHandle,PANEL_LED_8,0);
break;
}
return 0;
}
Página | 9
switch (event)
{
case EVENT_COMMIT:
int estado;
GetCtrlVal(panelHandle,PANEL_BINARYSWITCH_2,&estado);
SetCtrlAttribute
(panelHandle,PANEL_TIMER_2,ATTR_ENABLED,estado);
SetCtrlVal(panelHandle,PANEL_LED,0);
SetCtrlVal(panelHandle,PANEL_LED_2,0);
SetCtrlVal(panelHandle,PANEL_LED_3,0);
SetCtrlVal(panelHandle,PANEL_LED_4,0);
SetCtrlVal(panelHandle,PANEL_LED_5,0);
SetCtrlVal(panelHandle,PANEL_LED_6,0);
SetCtrlVal(panelHandle,PANEL_LED_7,0);
SetCtrlVal(panelHandle,PANEL_LED_8,0);
break;
}
return 0;
}
int estado;
GetCtrlVal(panelHandle,PANEL_BINARYSWITCH_3,&estado);
SetCtrlAttribute
(panelHandle,PANEL_TIMER_3,ATTR_ENABLED,estado);
SetCtrlVal(panelHandle,PANEL_LED,0);
SetCtrlVal(panelHandle,PANEL_LED_2,0);
SetCtrlVal(panelHandle,PANEL_LED_3,0);
SetCtrlVal(panelHandle,PANEL_LED_4,0);
SetCtrlVal(panelHandle,PANEL_LED_5,0);
SetCtrlVal(panelHandle,PANEL_LED_6,0);
SetCtrlVal(panelHandle,PANEL_LED_7,0);
SetCtrlVal(panelHandle,PANEL_LED_8,0);
break;
Página | 10
}
return 0;
}
int estado;
GetCtrlVal(panelHandle,PANEL_BINARYSWITCH_4,&estado);
SetCtrlAttribute
(panelHandle,PANEL_TIMER_4,ATTR_ENABLED,estado);
SetCtrlVal(panelHandle,PANEL_LED,0);
SetCtrlVal(panelHandle,PANEL_LED_2,0);
SetCtrlVal(panelHandle,PANEL_LED_3,0);
SetCtrlVal(panelHandle,PANEL_LED_4,0);
SetCtrlVal(panelHandle,PANEL_LED_5,0);
SetCtrlVal(panelHandle,PANEL_LED_6,0);
SetCtrlVal(panelHandle,PANEL_LED_7,0);
SetCtrlVal(panelHandle,PANEL_LED_8,0);
break;
}
return 0;
}
GetCtrlVal(panelHandle,PANEL_NUMERICKNOB,&tiempo_timer);
SetCtrlVal(panelHandle,PANEL_NUMERICKNOB,tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED,blink);
SetCtrlVal(panelHandle,PANEL_LED_2,!blink);
Delay(tiempo_timer);
Página | 11
SetCtrlVal(panelHandle,PANEL_LED_2,blink);
SetCtrlVal(panelHandle,PANEL_LED_3,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_3,blink);
SetCtrlVal(panelHandle,PANEL_LED_4,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_4,blink);
SetCtrlVal(panelHandle,PANEL_LED_5,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_5,blink);
SetCtrlVal(panelHandle,PANEL_LED_6,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_6,blink);
SetCtrlVal(panelHandle,PANEL_LED_7,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_7,blink);
SetCtrlVal(panelHandle,PANEL_LED_8,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_8,blink);
break;
}
return 0;
}
GetCtrlVal(panelHandle,PANEL_NUMERICKNOB,&tiempo_timer);
SetCtrlVal(panelHandle,PANEL_NUMERICKNOB,tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED,blink);
SetCtrlVal(panelHandle,PANEL_LED_2,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_2,blink);
SetCtrlVal(panelHandle,PANEL_LED_3,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_3,blink);
SetCtrlVal(panelHandle,PANEL_LED_4,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_4,blink);
SetCtrlVal(panelHandle,PANEL_LED_5,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_5,blink);
SetCtrlVal(panelHandle,PANEL_LED_6,!blink);
Página | 12
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_6,blink);
SetCtrlVal(panelHandle,PANEL_LED_7,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_7,blink);
SetCtrlVal(panelHandle,PANEL_LED_8,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_8,blink);
SetCtrlVal(panelHandle,PANEL_LED_7,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_7,blink);
SetCtrlVal(panelHandle,PANEL_LED_6,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_6,blink);
SetCtrlVal(panelHandle,PANEL_LED_5,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_5,blink);
SetCtrlVal(panelHandle,PANEL_LED_4,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_4,blink);
SetCtrlVal(panelHandle,PANEL_LED_3,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_3,blink);
SetCtrlVal(panelHandle,PANEL_LED_2,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_2,blink);
break;
}
return 0;
}
GetCtrlVal(panelHandle,PANEL_NUMERICKNOB,&tiempo_timer);
SetCtrlVal(panelHandle,PANEL_NUMERICKNOB,tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED,!blink);
SetCtrlVal(panelHandle,PANEL_LED_8,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED,blink);
SetCtrlVal(panelHandle,PANEL_LED_8,blink);
SetCtrlVal(panelHandle,PANEL_LED_2,!blink);
SetCtrlVal(panelHandle,PANEL_LED_7,!blink);
Página | 13
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_2,blink);
SetCtrlVal(panelHandle,PANEL_LED_7,blink);
SetCtrlVal(panelHandle,PANEL_LED_3,!blink);
SetCtrlVal(panelHandle,PANEL_LED_6,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_3,blink);
SetCtrlVal(panelHandle,PANEL_LED_6,blink);
SetCtrlVal(panelHandle,PANEL_LED_4,!blink);
SetCtrlVal(panelHandle,PANEL_LED_5,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_4,blink);
SetCtrlVal(panelHandle,PANEL_LED_5,blink);
SetCtrlVal(panelHandle,PANEL_LED_3,!blink);
SetCtrlVal(panelHandle,PANEL_LED_6,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_3,blink);
SetCtrlVal(panelHandle,PANEL_LED_6,blink);
SetCtrlVal(panelHandle,PANEL_LED_2,!blink);
SetCtrlVal(panelHandle,PANEL_LED_7,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_2,blink);
SetCtrlVal(panelHandle,PANEL_LED_7,blink);
break;
}
return 0;
}
GetCtrlVal(panelHandle,PANEL_NUMERICKNOB,&tiempo_timer);
SetCtrlVal(panelHandle,PANEL_NUMERICKNOB,tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED,!blink);
SetCtrlVal(panelHandle,PANEL_LED_2,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED,blink);
SetCtrlVal(panelHandle,PANEL_LED_2,blink);
Página | 14
SetCtrlVal(panelHandle,PANEL_LED_3,!blink);
SetCtrlVal(panelHandle,PANEL_LED_4,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_3,blink);
SetCtrlVal(panelHandle,PANEL_LED_4,blink);
SetCtrlVal(panelHandle,PANEL_LED_5,!blink);
SetCtrlVal(panelHandle,PANEL_LED_6,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_5,blink);
SetCtrlVal(panelHandle,PANEL_LED_6,blink);
SetCtrlVal(panelHandle,PANEL_LED_7,!blink);
SetCtrlVal(panelHandle,PANEL_LED_8,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_7,blink);
SetCtrlVal(panelHandle,PANEL_LED_8,blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED,!blink);
SetCtrlVal(panelHandle,PANEL_LED_2,!blink);
SetCtrlVal(panelHandle,PANEL_LED_3,!blink);
SetCtrlVal(panelHandle,PANEL_LED_4,!blink);
SetCtrlVal(panelHandle,PANEL_LED_5,!blink);
SetCtrlVal(panelHandle,PANEL_LED_6,!blink);
SetCtrlVal(panelHandle,PANEL_LED_7,!blink);
SetCtrlVal(panelHandle,PANEL_LED_8,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED,blink);
SetCtrlVal(panelHandle,PANEL_LED_2,blink);
SetCtrlVal(panelHandle,PANEL_LED_3,blink);
SetCtrlVal(panelHandle,PANEL_LED_4,blink);
SetCtrlVal(panelHandle,PANEL_LED_5,blink);
SetCtrlVal(panelHandle,PANEL_LED_6,blink);
SetCtrlVal(panelHandle,PANEL_LED_7,blink);
SetCtrlVal(panelHandle,PANEL_LED_8,blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_7,!blink);
SetCtrlVal(panelHandle,PANEL_LED_8,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_7,blink);
SetCtrlVal(panelHandle,PANEL_LED_8,blink);
SetCtrlVal(panelHandle,PANEL_LED_5,!blink);
SetCtrlVal(panelHandle,PANEL_LED_6,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_5,blink);
SetCtrlVal(panelHandle,PANEL_LED_6,blink);
SetCtrlVal(panelHandle,PANEL_LED_4,!blink);
SetCtrlVal(panelHandle,PANEL_LED_3,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED_4,blink);
SetCtrlVal(panelHandle,PANEL_LED_3,blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED,!blink);
SetCtrlVal(panelHandle,PANEL_LED_2,!blink);
SetCtrlVal(panelHandle,PANEL_LED_3,!blink);
SetCtrlVal(panelHandle,PANEL_LED_4,!blink);
SetCtrlVal(panelHandle,PANEL_LED_5,!blink);
SetCtrlVal(panelHandle,PANEL_LED_6,!blink);
Página | 15
SetCtrlVal(panelHandle,PANEL_LED_7,!blink);
SetCtrlVal(panelHandle,PANEL_LED_8,!blink);
Delay(tiempo_timer);
SetCtrlVal(panelHandle,PANEL_LED,blink);
SetCtrlVal(panelHandle,PANEL_LED_2,blink);
SetCtrlVal(panelHandle,PANEL_LED_3,blink);
SetCtrlVal(panelHandle,PANEL_LED_4,blink);
SetCtrlVal(panelHandle,PANEL_LED_5,blink);
SetCtrlVal(panelHandle,PANEL_LED_6,blink);
SetCtrlVal(panelHandle,PANEL_LED_7,blink);
SetCtrlVal(panelHandle,PANEL_LED_8,blink);
break;
}
return 0;
}
FUNCIONES
SetCtrlVal:
Delay:
SetCtrlAttribute:
Página | 16
GetCtrlVal:
Quit UserInterface:
DiscarPanel:
Página | 17
DIAGRAMA DE FLUJO
Página | 18
CONCLUSION
Como conclusión podemos decir que el proyecto fue un éxito sin embargo tuvimos
ciertos contratiempos al momento de realizar nuestro programa ya que carecíamos
de información necesaria para poder ejecutar dicho proyecto.
En cuestión de diseño no tuvimos problema alguno, excepto con el uso o el manejo
de los interruptores o switch por los botones o mejor conocidos como push botton.
Además el desarrollo de nuestro proyectó fue algo corto a comparación de los
programas hechos por los demás equipos, lo que significa que el uso de la
programación que utilizamos fue más corta y eficiente. Aunque se pudo haber hecho
más corto.
Sin embargo tuvimos la oportunidad de realizar nuestro proyecto a nuestro criterio
debido a que incluimos programación y diseño fuera de lo establecido para tener
una buena ejecución.
Página | 19
EXPERIENCIAS Y APRENDIZAJE
La experiencia adquirida a través del desarrollo de este proyecto fue interesante, ya
que llevar a cabo el proceso de un programa conlleva utilizar lógica y creatividad
en cada una de las partes establecidas de un programa, además nos deja como
experiencia la constancia y la dedicación como estrategia para obtener buenos
resultados en dicho proyecto.
Por lo tanto podemos decir que la paciencia fue un valor clave para establecer un
desarrollo eficiente, además de que podemos decir que la comunicación del equipo
fue bastante clara y fluida ya que nos organizamos de manera eficiente.
Sin embargo los aprendizajes adquiridos fueron de mucha ayuda para poder realizar
cada una de las expectativas esperadas para nuestro proyecto. Lo mejor de realizar
este trabajo es que ahora tenemos un mejor entendimiento acerca de lo que es el
programa Lab Windows/CVI y sus múltiples aplicaciones.
Página | 20
BIBLIOGRAFIA
www.programarya.com/Cursos/Fundamentacion/Tecnicas-Basicas
Página | 21