Software Para Visual Basic

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, 0 End 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 Integer Public 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.

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

5/17/2018 Software Para Visual Basic - slidepdf.com

http://slidepdf.com/reader/full/software-para-visual-basic 5/5

hacerlo con la corriente del puerto porque lo pueden llegar a quemar..despues veo si puedo

poner un video o algo del programa y el circuito que arme funcionando...saludos..