Software Para Visual Basic
Transcript of Software Para Visual Basic
5/17/2018 Software Para Visual Basic - slidepdf.com
http://slidepdf.com/reader/full/software-para-visual-basic 1/5
SOFTWARE PARA VISUAL BASIC
En Visual Basic es más sencillo, podemos solo agregar 2 botones y lo demás es cosa de
presentación.
El comando es Out &dirección.dato
El código sería así:
Notas:
Hay que agregar un .dll que esta adjunto en el 1bitlptfvisual.zip, a la carpeta del sistema,
yo lo pegué en Windows, system y system32.
Adjunto el compilado por si lo quieres ya hecho, no lo explicaré por que esta muy
sencillo, pero si alguien tiene dudas respecto al código, puede hacérmelas saber
Para el Form
Código:
Private Sub Command1_Click()Out &H378, 0End Sub
Private Sub Command2_Click()Out &H378, 1
End Sub
Además debemos agregar un Módulo par ala Dll
Código:
Public Declare Function Inp Lib "inpout32.dll" _Alias "Inp32" (ByVal PortAddress As Integer) As IntegerPublic Declare Sub Out Lib "inpout32.dll" _
Alias "Out32" (ByVal PortAddress As Integer, ByVal Value As Integer)
SOFTWARE EN VISUAL BASIC La ocasión anterior, el programa en visual fue más sencillo, pero en esta, la verdad es
que me ha costado más por los arreglos que he hecho con los checkbox.
5/17/2018 Software Para Visual Basic - slidepdf.com
http://slidepdf.com/reader/full/software-para-visual-basic 2/5
Los Bits pueden encenderse o apagarse desde los 8 checkbox o puede ingresarse el dato
en el texbox.
Para hacerlo, hubo que agregar 1 checkbox y copiarlo y pegarlo 7 veces para hacer una
matriz, entonces se simplifica el trabajo pues solo damos la instrucción una vez y solo
debemos indexarlos para hacer referencia a cada uno.
Para empezar, ocuparemos un módulo para la dll
Código:
Public Declare Function Inp Lib "inpout32.dll" _
Alias "Inp32" (ByVal PortAddress As Integer) As IntegerPublic Declare Sub Out Lib "inpout32.dll" _Alias "Out32" (ByVal PortAddress As Integer, ByVal Value As Integer)
El código para hacer que revise los checkbox es así
Código:
Private Sub revisa()contador = 0dato = 0While contador < 8
If Check1(contador).Value = 1 Then arreglo(contador + 1) = 1 Elsearreglo(contador + 1) = 0
dato = dato + (arreglo(contador + 1) * (2 ^ contador))
contador = contador + 1Wend
Text1 = datoOut &H378, dato
End Sub
Private Sub Check1_Click(Index As Integer)revisa
5/17/2018 Software Para Visual Basic - slidepdf.com
http://slidepdf.com/reader/full/software-para-visual-basic 3/5
End Sub
Lo de poder ingresar el dato desde el texbox es adiciona y no es necesario para el
funcionamiento del programa.
Antes de hablar de la programación, es importante saber en que sistema operativo
vas a conectar y usar tu puerto paralelo. Si es Windows 98 para atrás no habrá
problema. Pero si estás usando el XP existirá un pequeño
problema:
El direccionamiento (lo explicaré mas adelante) no lo tomará en cuenta y
aparecerá un mensaje de error.
Para solucionar este problema un geek creo una librería que
emula el direccionamiento, haciendo funcionar nuestros programas a la
perfección.
¿ Que es direccionamiento? cuando nosotros por medio de
software “sacamos” valores es importante dirigirlos hacia a alguna parte, es decir
si van hacia los registros de datos, estado o control.
aki les dejo las direcciones:
Registro de Datos: 888Registro de Estado: 889
Registro de Control: 890
Software.
Estas direcciones son para Win XP y los valores están en decimal, no estoy
seguro pero si tienes Win 98 ó 95 las direcciones tienen que ser en hexadecimal.
El soft lo hice con Visual Basic... por que?... porque tiene varias
ventajas, como ser de facil uso, tiene una interfase mas amigable..
etc.. si alguien maneja otro lenguaje, lo invito a que postee tambien..
bueno si se deciden a hacerlo con vb sigan las siguientes indicaciones
y no tendran ningun tipo de problemas.....
comenzamos.....:
ahora abrimos un proyecto nuevo de vb...
y vamos a Project -->Add Module
y en el modulo ponemos lo siguiente
Código:
Public Declare Sub PortOut Lib "io.dll" (ByVal Port As Integer, ByVal Value As
5/17/2018 Software Para Visual Basic - slidepdf.com
http://slidepdf.com/reader/full/software-para-visual-basic 4/5
Byte)
Public Declare Function PortIn Lib "io.dll" (ByVal Port As Integer)
en el form creamos dos botones .. dentro de los cuales ponemos ..
Encender y Apagar:
dentro de cada uno de estos ponemos
Encender:
Código:
Private Sub Command1_Click()
Call PortOut(888, 1)End Sub
Apagar:
Código:
Private Sub Command2_Click()
Call PortOut(888, 0)
End Sub
Explicacion de lo que hicimos :
Call PortOut ------- con esta instruccion mandamos datos fuera de nuestra pc
Call PortOut (888, ------ Con el 888 le decimos al puerto paralelo que
mandaremos datos por el registro de datos.(ver¿que es direccionamiento.)
Call PortOut (888, 1)------ ojo a la explicación; dentro de visual basic trabajaremos
con número decimales, pero los datos que arroja el puerto paralelo son en
binarios, es decir al momento de prender los ocho leds quiere decir que
mandamos el valor 255. la instrucción sería así:
Call PortOut (888, 255)
Resumiendo:
Call PortOut(888, 1) ----- prende el led del bit menos significativo.
Call PortOut(888, 0) ----- apaga el led que estaba encendido. Con 0 no hay valor y
todo está apagado.
el ejemplo que les deje detallado es para un solo bit que sale por un solo pin del cable
les dejo un programa que realize un tanto mas elaborado para el manejo de 8 de los 25 pines...se puede hacer una etapa de potencia para manejar tension porque no es recomendable