Página anterior | ![]() Volver al principio del trabajo | Página siguiente ![]() |
|
Valor de n |
Devuelve el valor de la coordenada |
||
|
0 |
Coordenada X palanca A |
||
|
1 |
Coordenada Y palanca A |
||
|
2 |
Coordenada X palanca B |
||
|
3 |
Coordenada Y palanca B |
||
Ejemplo tomemos este siguiente programa para ver como funciona en qbasic bajo Windows con partición FAT o ms-dos. (Es probable que para Windows xp o vista,deberá usarse un emulador de ms-dos.)
CLEAR
CLS
INICIO:
t$ = UCASE$(INKEY$)
IF t$ = CHR$(27) THEN GOTO fin
CLS
x = STICK(0)
y= STICK(1)
LOCATE 1,1
PRINT x,y
GOTO INICIO
fin :
End
Con el joystick conectado,podemos observar que la pantalla marcará valores enteros comprendidos entre 0 y 255 los cuales podemos tomar como referencia de un valor alto o bajo.Para salir del ciclo infinito,pulsamos la tecla ESCAPE.
Ahora queremos observar gráficamente que está pasando con la señal que está entrando a la computadora;necesitamos agregar un CONTADOR al código anterior este puede ser muy pequeño o muy grande, dependiendo de lo que se quiera hacer aquí.observemos que donde conectemos el cable y su correspondiente patilla dependerá que instrucción (stick (0) ,stick (1) ,stick(2),stick(3) ) dependerá la presentación en la pantalla.
CLEAR
CLS
SCREEN 12
Contador =0
INICIO:
t$ = UCASE$(INKEY$)
IF t$ = CHR$(27) THEN GOTO Fin
CLS
Rem puede ser STICK(1) o STICK(2) o STICK (3)
Rem observar el numero de los pines
x = STICK(0)
rem inicializa gráfica cuando se alance la cordenada x=640
if contador =640 then
contador=0
cls
end if
contador =contador+1
LOCATE 1,1
PRINT contador,x
LINE -(contador,x),12
GOTO INICIO
Fin:
End
Ahora vamos a mostrar un código más elaborado en qbasic donde solamente se representen en coordenadas rectangulares en una resolución de 640x480.también es posible hacer el cambio a coordenadas polares ,representación circular, gráfico espectral .todas estas representaciones se encuentran detalladas en los libros de estadística y matemáticas de nivel superior para su respectiva consulta.
Con respecto a la parte de programación gráfica es que la información que llegue del dispositivo se puede grabar a un archivo secuencial en forma de par de coordenadas X e Y y luego procesarse en EXCEL .Todo dependerá de la habilidad, lógica e imaginación del programador.
Se conectaron de los cables de la siguiente manera:
1º) patilla nº 3 (Posición X del Joystick A) cuya entrada es de voltaje positivo (+)
2º) cable negativo a la patilla nº 4 (GND) Tierra.
Siempre se debe tener en cuenta el voltaje de salida del circuito a la computadora para no causar daños a esta.
LISTADO DEL PROGRAMA:
REM programa experimental de deteccion
REM de usando el puerto del
REM Joystick.
CLS
LOCATE 1, 10: PRINT ******************************************"
LOCATE 2, 10: PRINT "* PROGRAMA DETECTOR -1.01 *"
LOCATE 3, 10: PRINT *******************************************
LOCATE 4, 10: PRINT "* Este programa es para conectar cualquier salida de un **
LOCATE 5, 10: PRINT "* circuito electronico o electrico a traves del puerto de *"
LOCATE 6, 10: PRINT "* joystick. *"
LOCATE 7, 10: PRINT "* Su uso es para fines didacticos.corre desde un 386 en *"
LOCATE 8, 10: PRINT "* adelante,aunque es preferible un pentium,ya que es mas *"
LOCATE 9, 10: PRINT "* sensible. *"
LOCATE 10, 10: PRINT "***********************************************************"
LOCATE 11, 10: PRINT "* Realizado por el profesor Jorge Moreno.Caracas,agosto 2009 *"
LOCATE 12, 10: PRINT "* 2009.E-MAIL: JORGE2006JULIO[arroba]CANTV.NET *"
LOCATE 13, 10: PRINT ******************************************"
FOR i = 1 TO 40000: NEXT i
e3:
CLS
CLEAR
SCREEN 12
REM Rutina principal que usa puerto de juegos para que sirva
REM para distintos experimentos.
c1 = 0
c4 = 0
e2:
LOCATE 1, 1: PRINT "****SELECCION DEL TAMAÑO DE LA VENTANA***********
LOCATE 3, 1: PRINT " 1- Grafica Lineal en ventana Normal (640 x 480)"
LOCATE 4, 1: PRINT " 2- Grafica lineal en otra ventana ( X x Y ) "
LOCATE 5, 1: PRINT " 3- Grafica circular "
LOCATE 6, 1: PRINT " 4- Grafica Espectral "
LOCATE 7, 1: PRINT " 5- Grafica Espectral - II "
LOCATE 8, 1: PRINT " 6- Grafica Espectral - III "
LOCATE 9, 1: PRINT " 7- Grafico en cordenadas polares. "
LOCATE 10, 1: PRINT " - Finalizar el programa"
LOCATE 11, 1: PRINT "************************************************
LOCATE 12, 1: PRINT "Seleccione opcion :"
t$ = INKEY$
IF t$ = "1" THEN
u = 640: v = 480
CLS
Rem se manda directo a graficar sin subrutina
Goto e4
END IF
IF t$ = "2" THEN
Gosub graficaventanaxy
END IF
IF t$ = "3" THEN
Gosub graficacircular
END IF
IF t$ = "4" THEN
Gosub graficaespectral
END IF
IF t$ = "5" THEN
Gosub graficaespectral2
END IF
IF t$ = "6" THEN
Gosub graficaespectral3
END IF
IF t$ = "7" THEN
Gosub graficapolar
END IF
IF t$ = CHR$(27) THEN
GOTO fin
END IF
GOTO e2
e4:
Rem contador c=0
c = 0
WINDOW (0, 0)-(u, v)
e1:
LOCATE 1, 1: PRINT "**DETECCION EN PROGRESO ***********************";
LOCATE 2, 1: PRINT "R: Reinicializa pantalla grafica"
LOCATE 3, 1: PRINT "M: Si se quiere volver al menu inicial"
LOCATE 4, 1: PRINT ": Abortar en cualquier momento."
t$ = UCASE$(INKEY$)
IF t$ = CHR$(27) THEN GOTO fin
IF t$ = "R" THEN
CLS
c = 0
END IF
x = STICK(0)
rem contador incrementado en 0,01 en este caso.puede variarse
rem según lo que se quiera hacer con el circuito y su funcion
c = c + .01
rem inicializa la pantalla nuevamente al llegar a 640
IF c >= u THEN
CLS
c = 0
END IF
Rem trazado del grafico generado
Rem c,x
LINE -(c, x), 12
LOCATE 10, 1: PRINT "Posici¢n :"; x
LOCATE 11, 1: PRINT "Tiempo:";
LOCATE 11, 10: PRINT USING "###.##"; c
IF t$ = "M" THEN
GOTO e3
END IF
GOTO e1
Rem subrutinas para los otros graficos
Rem no incluidad en este listado
Graficoventanaxy:
Return
Graficocircular:
Return
Graficoespectral2:
Return
Graficoespectral3:
Return
Graficapolar:
Return
fin:
CLS
LOCATE 10, 22: PRINT "FFFFFFFFFF IIIIII NNNNN NNN"
LOCATE 11, 22: PRINT "FFFF NNNNN NNN"
LOCATE 12, 22: PRINT "FFFF IIIIII NNNNNN NNN"
LOCATE 13, 22: PRINT "FFFFFFF IIIIII NNNNNNNNNNNN"
LOCATE 14, 22: PRINT "FFFF IIIIII NNNNN NNNNN"
LOCATE 15, 22: PRINT "FFFF IIIIII NNNNN NNN"
LOCATE 16, 22: PRINT "FFFF IIIIII NNNNN NNN"
LOCATE 23, 1:PRINT "Realizado por Profesor Jorge Moreno.Caracas,agosto 2009"
LOCATE 24, 1: PRINT "E-mail: jorge2006julio[arroba]hotmail.com"
FOR i = 1 TO 30000: NEXT i
END
Vamos ahora a mostrar un circuito electrónico sencillo; en este caso un detector de luz sacado de una revista de electrónica cualquiera.


Materiales para conector del circuito al pc:
1-Conector db-15 macho + carcasa del conector.
2-Cable bicolor delgado (rojo-negro)
3-pulg. mono o pinzas caimán.


Circuito conectado.
Vamos a conectar al pc ahora que ya está realizado el programa en qbasic.En este caso se trata de un 386 de 4 mb de memoria ram y un disco duro de 100 mb y el sistema operativo ms-dos 6.22 aunque debe funcionar para versiones más antiguas de este sistema operativo y en Windows debe realizar pruebas correspondientes.En linux hay que encontrar el nombre del puerto de juegos y las instrucciones que lo activan en la carpeta /dev y entrar como administrador del sistema para realizar esta gestión.

Menú principal.

Grafica línea a línea agrandada.

Coordenadas polares.

Gráfica circular.

Gráfica espectral
Es evidente que el reciclado de computadoras antiguas con el eficiente uso del lenguaje basic u otro lenguaje permite un nivel de experimentación y aplicación útiles en el área de electrónica u otras con pocos recursos y gastos mínimos.
SOFTWARE:
1-Microsoft QBASIC.Manual en línea.
3-Microsoft Windows xp.Panel de control.
2-CableGui! Versión 1.04. NESTORY SYYNIMAA. (2000).
(Este es un excelente software en lo que a ubicación de nemónicos y conexiones se refiere.viene desde la época de windows 3.11 y evolucionó mucho,pero su autor no lo ha seguido actualizando.Si saben escribir y hablar finlandés ,correo electrónico es
Nestori[arroba]kauhava.fi)
Autor:
Jorge Moreno
Agosto 2009
Página anterior | ![]() Volver al principio del trabajo | Página siguiente ![]() |
Trabajos relacionados
Ver mas trabajos de Programacion |
|
Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.
Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.
Ingrese el e-mail y contraseña con el que está registrado en Monografias.com
|
|