Visual Basic - Puerto paralelo

Life is soft - evento anual de software empresarial
 
Vista:

Puerto paralelo

Publicado por guillermo (4 intervenciones) el 27/06/2006 02:18:22
¿Qué control en visual basic me puede permitir trabajar
con el puerto paralelo ó LPT1 de la pc? Hay un control llamado
mscomm pero sirve sólo para usar el puerto serial.Si
conocen cualquiera forma de poder enlazar a vb con el
puerto paralelo les agradecería su respuesta.

Saludos y de antemano gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Puerto paralelo

Publicado por kelvin gil (2 intervenciones) el 27/06/2006 05:13:27
para tu proyecto es mejor utilizar unos checkbox, un modulo y un dll que permite la comunicacion de entrada y salida de los perifericos te explico:

*** crea un formulario y le colocas 8 checkbox

Private Sub Chkttl1_Click() 'invierto estado de TTL1
If chkTTL1.Value = 1 Then
SetPortBit Out_Port, 1
chkTTL1.Caption = "Salida TTL1 = 1 - ALTO"
Else
ClrPortBit Out_Port, 1
chkTTL1.Caption = "Salida TTL1 = 0 - BAJO"
End If
End Sub

ese es tu checkbox 1 y tiene el nombre de Chkttl1 para el siguiente cambia el valor de SetPortBit Out_Port, 2 y ClrPortBit Out_Port, 2 y asi sucesivamente

**** agrega un modulo .BAS y dentro de el le colocas esta codificacion:

Public Declare Sub PortOut Lib "IO.DLL" (ByVal Port As Integer, ByVal Data As Byte)
Public Declare Sub PortWordOut Lib "IO.DLL" (ByVal Port As Integer, ByVal Data As Integer)
Public Declare Sub PortDWordOut Lib "IO.DLL" (ByVal Port As Integer, ByVal Data As Long)
Public Declare Function PortIn Lib "IO.DLL" (ByVal Port As Integer) As Byte
Public Declare Function PortDWordIn Lib "IO.DLL" (ByVal Port As Integer) As Long
Public Declare Sub SetPortBit Lib "IO.DLL" (ByVal Port As Integer, ByVal Bit As Byte)
Public Declare Sub ClrPortBit Lib "IO.DLL" (ByVal Port As Integer, ByVal Bit As Byte)
Public Declare Sub NotPortBit Lib "IO.DLL" (ByVal Port As Integer, ByVal Bit As Byte)
Public Declare Function GetPortBit Lib "IO.DLL" (ByVal Port As Integer, ByVal Bit As Byte) As Boolean
Public Declare Function RightPortShift Lib "IO.DLL" (ByVal Port As Integer, ByVal Val As Boolean) As Boolean
Public Declare Function LeftPortShift Lib "IO.DLL" (ByVal Port As Integer, ByVal Val As Boolean) As Boolean
Public Declare Function IsDriverInstalled Lib "IO.DLL" () As Boolean

**** crea estas variables
Option Explicit

Public Out_TTL As Byte 'contiene el BYTE a sacar por el puerto
Public In_Port As Integer 'continen la direccion de lectura del LPT
Public Out_Port As Integer 'contiene la direcc.para escribir al LPT

**** coloca un combobox para para que al cargar el formulario puedas seleccionar el registro de memoria este es el nombre "cmbLptSelect"

**** coloca en el formulario con el procedimiento load

'Configura la COMBOLIST cmbLptSelect
cmbLptSelect.AddItem "0x378"
cmbLptSelect.AddItem "0x278"
cmbLptSelect.AddItem "0x3BC"

'Establece LPT1 como default
cmbLptSelect.ListIndex = 0

SetLPTAddress 'estable direccion base del LTP

Port_Reset 'reseteo salidas TTL

**** coloca un boton salir con esto
Private Sub cmdSalir_Click() 'si presiono SALIR, reseteo
Port_Reset 'las salidas TTL y salgo del programa
End
End Sub
esto es para resetear el puerto al salir del programa.

Ubica en internet o enviame tu correo para enviarte un dll de 32bits para manejasr las I/O del puerto

[email protected]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar