Professional Documents
Culture Documents
0
Introducción.
Este pequeño tutoríal proporciona los pasos básicos para controlar el puerto paralelo
desde Visual Basic 6.0. Lo que se intenta es poder enviar pulsos o señales por medio de
este y recibir pulsos o señales por medio de el.
Material.
Puerto paralelo.
Microsoft Visual Studio 6.0.
1 Led.
Empecemos con el puerto paralelo. Este es un conecto DB25 obvio con 25 pines lo
cuales están numerados y tienen una función especifica cada uno de ellos.
Dataport
pin 2 - D0 pin 3 - D1
pin 4 - D2 pin 5 - D3
pin 6 - D4 pin 7 - D5
pin 8 - D6 pin 9 - D7
Statusport
1
ControlPort
Es decir que para encender led’s mandando voltaje al puerto usaremos el Dataport, para
recibir niveles de voltaje usaremos el Statusport.
En este caso mencionare la forma en que se conecta y controla pero también mencionare
que mi computadora no contaba con puerto paralelo. Una vez adquirido el puerto
paralelo de tipo PC-I fue colocado en la ranura correspondiente y se le instalo el
controlador indicado.
H378
Una vez dicho y entendido esto se debe tener alguna forma de controlar esto desde el
lenguaje visual Basic, desafortunadamente al ser un lenguaje de alto nivel visual no
tiene la capacidad de controlar hardware por si solo, este tipo de circunstancias se
controlan con C o C++ ya que estos lenguajes tiene esa capacidad.
Esta DLL mágica es la inpout32 la cual tiene la capacidad de mandar y recibir señales o
pulsos por el puerto paralelo. Existen varias versiones, varias de ellas no funcionan en
XP y mucho menos en Vista, pero después de buscar y buscar por Internet encontré una
que si funciona perfectamente en XP y Vista incluso te da su código y muchas cosas
mas, esta DLL se supone que esta adjunta con este tutorial.
2
Una vez comprendido esto hablemos de las direcciones de memoria anteriormente
mencione la dirección de memoria que utiliza el puerto paralelo para funcionar esta se
puede ver en:
Pin 2 3 4 5 6 7 8 9
Memoria 378 379 37A 37B 37C 37D 37E 37F
Esto no quiere decir que para todas las maquinas sea la misma. Como mencione al
principio de este escrito mi PC no contaba con puerto paralelo por lo que le agregue un
PC-I y mis direcciones quedaron de la siguiente manera.
3
Para la programación se necesita comprender la forma en que serán enviados los datos,
señales o pulsos al puerto y es de la manera siguiente.
Se envían datos binarios y dependiendo del valor son los pines utilizados:
Pin 2 3 4 5 6 7 8 9
Valor Binario 1 10 100 1000 10000 100000 100000 10000000
0
Valor decimal 1 2 4 8 16 32 64 128
Por ejemplo:
1+8=9
8 + 128 = 136
Y en binario es 10001000.
Si queremos prender todos los led’s conectados al puerto paralelo pues se pone:
Si queremos apagar todos los led’s conectados al puerto paralelo pues se pone:
Valor.- 0 = 0
NOTAS:
• Se puede ver que el pin de menor peso es el numero 2 por lo que hay que
empezar a contar por hay.
• Normalmente el puerto paralelo esta enviando señal por todos los pines.
• No es necesario enviar el dato binario ya que la DLL inpout32 los convierte
basta con enviar el dato decimal.
Es hora de comenzar.
Para poder enviar datos al puerto paralelo desde visual Basic utilizando la DLL
inpout32 se usa el comando Out:
Su sintaxis es:
out (numero de pin desde donde se desea empezar a contar “pin con menor peso”, dato en decimal o binario).
4
Por ejemplo:
Programación:
Nombre Texto
Command1 Prendido
Command2 Apagado
5
Yo y mucha gente mas a escuchado la frase “los que es del cesar a l cesar” pues
en nuestro caso seria “lo que es del SO. Al SO.” A que me refiero con esto no es
muy recomendable mezclar cosas vitales del SO. Con otras cosas externas por lo
que nuestra DLL seria mejor ponerla en otro lugar, digamos que se instala
nuestro programa en una PC pues la DLL debería estar en la carpeta donde se
instalo, en este caso supongamos que la tenemos en un pendriver o usb con la
letra H:\ asignada y una carpeta con nombre serial, pues el código seria el
siguiente:
Como ven lo único que cambia es el path, ¡que fácil es la vida verdad!
6
2) La DLL inpout32 no es compatible con XP o Vista es una versión anterior que
solo funciona en sus predecesores de XP. Claro si su SO. Es Windows XP o
Vista.
Solución.- Usa la que se encuentra con este tutorial.
Yo e mirado que es necesario para controlar un solo pin o bit que prenda un led lo
siguiente:
Material Necesario
Pues la verdad yo no ocupe tanto, solo use el puerto paralelo libre una extensión de
puerto paralelo es decir un cable de puerto paralelo y un led.
http://foro.elhacker.net/programacion_general/introduccion_a_la_programacion_por_pu
ertos_en_visual_basic-t47786.0.html
Espero que esto le sea de ayuda, cualquier duda comentario o sugerencia escriban a
daco_tutor@hotmail.com
Tutorial Básico Control Puerto Paralelo con Visual Basic 6.0 realizado por:
Ing. Diego Alberto Ortega Carreto