Tema destacado: Entra al canal IRC oficial de #elhacker.net
Autor
|
Tema: [Electronica y programación] manejo del puerto paralelo... (Leído 144,297 veces)
|
BADBYTE-K
Knowledge is power, Diesel-K
Desconectado
Mensajes: 2.328
Aprende todo lo que este a tu alkance
|
Out &H378, 255 con esto lo que logras en enviar un 1 logico a todos los pines del data es decir todos tienen voltaje, en el tutorial explico como hacer para varias la salida de voltaje segun pin: hay que tener en cuenta tambien el tipo de dato que le enviaremos al puerto:
0 2 4 8 16 32 64 ... 255 si pones 0 ninguno tiene voltaje si pones 2....pin 2 - D0 tiene voltaje (5voltios, 1 logico) esto es = a decir: Out &H378, 2 si pones 4....pin 3 - D1 tiene voltaje Out &H378, 4 y asi sucesivamente: pin 2 - D0 pin 3 - D1 pin 4 - D2 pin 5 - D3 pin 6 - D4 pin 7 - D5 pin 8 - D6 pin 9 - D7 8 16 32 64 ... 255 saludox
|
|
|
|
|
En línea
|
|
|
|
{_The_Alwar_}
Desconectado
Mensajes: 712
Who dares win
|
Lo siento, pero esk no consigo entenderlo, y otra cosa, Ej: Un led tiene dos Patillas (+/-), yo conecto la patilla de un led a un pin dataport (que creo k son los que envian voltaje) y la otra patilla a donde va? (creo k sera al borde del enchufe)
|
|
|
|
« Última modificación: 30 Marzo 2005, 02:05 por alwar »
|
En línea
|
|
|
|
Ian~Shadow
Desconectado
Mensajes: 31
|
A creo que ya entendi: Out &H378, 0 no manda nada, o 0 logico en todos los pins Out &H378, 1 manda un 1 logico al 1° Out &H378, 2 manda un 1 logico al 2° Out &H378, 4 manda un 1 logico al 3° Out &H378, 8 manda un 1 logico al 4° Out &H378, 16 manda un 1 logico al 5° Out &H378, 32 manda un 1 logico al 6° Out &H378, 64 manda un 1 logico al 7° Out &H378, 128 manda un 1 logico al 8° Y Out &H378, 255 manda un 1 logico a todos los pins Corrijanme si me equivoco. anoche hacia las cuentas, y no me salian 10 combinaciones para 8 pins n_n 
|
|
|
|
|
En línea
|
|
|
|
{_The_Alwar_}
Desconectado
Mensajes: 712
Who dares win
|
umm creo k voy cojiendo el hilo
Osea Out &H378, 1 lo que hace es enviar al puerto 378, uno logico k son 5 voltios al pin 1, y como seria para enviar un dos logico????? dos logico cuantos voltios son?
|
|
|
|
|
En línea
|
|
|
|
BADBYTE-K
Knowledge is power, Diesel-K
Desconectado
Mensajes: 2.328
Aprende todo lo que este a tu alkance
|
umm creo k voy cojiendo el hilo
Osea Out &H378, 1 lo que hace es enviar al puerto 378, uno logico k son 5 voltios al pin 1, y como seria para enviar un dos logico????? dos logico cuantos voltios son?
No, antes dejame aclararte algo: Los sistemas digitales trabajan en base a "pulsos" por asi decirlo, dichos pulsos no son constantes dependientes si no que son ya establecidas y unicamente son dos... el 1 logico: 5v el 0 logico: 0v no existe un dos logico ni nada mas, digamos es como decir 1= encendido 0= apagado solamente es eso  A creo que ya entendi: Out &H378, 0 no manda nada, o 0 logico en todos los pins Out &H378, 1 manda un 1 logico al 1° Out &H378, 2 manda un 1 logico al 2° Out &H378, 4 manda un 1 logico al 3° Out &H378, 8 manda un 1 logico al 4° Out &H378, 16 manda un 1 logico al 5° Out &H378, 32 manda un 1 logico al 6° Out &H378, 64 manda un 1 logico al 7° Out &H378, 128 manda un 1 logico al 8° Y Out &H378, 255 manda un 1 logico a todos los pins Corrijanme si me equivoco. anoche hacia las cuentas, y no me salian 10 combinaciones para 8 pins n_n  exacto! es asi  lo unico es que en tu aclaracion los valores 1º, 2º, 3º, 4º, 5º, etc... corresponden a lo que ya les dije anteriormente: pin 2 - D0 pin 3 - D1 pin 4 - D2 pin 5 - D3 pin 6 - D4 pin 7 - D5 pin 8 - D6 pin 9 - D7 Lo siento, pero esk no consigo entenderlo, y otra cosa, Ej: Un led tiene dos Patillas (+/-), yo conecto la patilla de un led a un pin dataport (que creo k son los que envian voltaje) y la otra patilla a donde va? (creo k sera al borde del enchufe)
Tienes unos pines de "tierra" la parte de GND, son los tierra del 18 al 25 ahi debes conectar los negativos de tus dispositivos saludox
|
|
|
|
|
En línea
|
|
|
|
{_The_Alwar_}
Desconectado
Mensajes: 712
Who dares win
|
Gracias Badbyte-k ya tengo todo aclarado... ya me explicaron lo del 0 y 1 logico... para no joder la placa base del pc con estas cosas, que me hace falta? ¿Y si utilizo reles?
|
|
|
|
|
En línea
|
|
|
|
BADBYTE-K
Knowledge is power, Diesel-K
Desconectado
Mensajes: 2.328
Aprende todo lo que este a tu alkance
|
depende, puedes usar reles con transistores de potencia o puedes usar unos dispositivos llamados "buffers" y otros llamados "drivers" que son los que se usa para trabajar con motores paso a paso
saludox
|
|
|
|
|
En línea
|
|
|
|
{_The_Alwar_}
Desconectado
Mensajes: 712
Who dares win
|
drivers te refieres a controladoras nop?
|
|
|
|
|
En línea
|
|
|
|
BADBYTE-K
Knowledge is power, Diesel-K
Desconectado
Mensajes: 2.328
Aprende todo lo que este a tu alkance
|
me parece que si, recuerda que de pais en pais varia el nombre de la s cosas este es un "driver" el L293B: 
|
|
|
|
|
En línea
|
|
|
|
{_The_Alwar_}
Desconectado
Mensajes: 712
Who dares win
|
Gracias por la info, haber si aprendo a soldar y me pongo ha hacer cosas de estas
|
|
|
|
|
En línea
|
|
|
|
|
|
CarWarlock
Desconectado
Mensajes: 19
|
Buenas.
Por mi experiencia con el puerto paralelo me gustaría añadir que el impout32.dll corre muy bien con los Win9x/Me pero con los NT no hay manera, en canvio el IO.dll va de maravilla ya que su programación es más avanzada. Para activar dispositivos en las salidas del puerto paralelo (relés,...) recomiendo el integrado I2004 que trabaja como driver y va perfecto.
Salu2.
|
|
|
|
|
En línea
|
|
|
|
{_The_Alwar_}
Desconectado
Mensajes: 712
Who dares win
|
y como se usa en visual la IO? el I2004 donde me puedo hacer con el?
|
|
|
|
|
En línea
|
|
|
|
CarWarlock
Desconectado
Mensajes: 19
|
Buenas.
Esta es la manera de llamar a la IO.dll, el código lo he sacado de un ejemplo que hice hace tiempo, si quieres el código fuente hazmelo saber y te lo enviaré. Referente de como puedes encontrar el I2004 no tengo ni idea en mi trabajo lo pedimos a los grandes distribuidores y ellos nos lo proporcionan pero mi imagino que en cualquier tienda de electrónica lo puedes encontrar.
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 PortWordIn Lib "IO.DLL" (ByVal Port As Integer) As Integer 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
Dim sOrt As Byte 'valor de la salida puerto paralelo Dim sIn As Byte 'valor de la entrada puerto paralelo
Dim pOut As Integer 'direccion del puerto paralelo Dim pIn As Integer 'direccion del puerto paralelo
Private Sub Form_Load()
If IsDriverInstalled = True Then
pOut = &H378 'puerto LPT1 (salida datos) pIn = &H379 'puerto LPT1 (Status ) sOrt = 0 'desactivo todas las salidas PortOut pOut, sOrt lo saco por el puerto sIn = PortIn(pIn) 'obtengo el valor del puerto paralelo
Else MsgBox "El Driver no se encuentra cargado en memoria ", vbCritical + vbOKOnly, "Error" Unload Me End If End Sub
|
|
|
|
|
En línea
|
|
|
|
{_The_Alwar_}
Desconectado
Mensajes: 712
Who dares win
|
vamos a probar
|
|
|
|
|
En línea
|
|
|
|
|
|