Usando El Puerto Paralelo De Una PC
Enviado por djosue • 20 de Febrero de 2013 • 2.329 Palabras (10 Páginas) • 427 Visitas
Usando el puerto paralelo de una PC
Introducción:
El puerto paralelo de una PC es ideal para ser usado como herramienta de control de motores, relés, LED's, etc. El mismo posee un bus de datos de 8 bits (Pin 2 a 9) y muchas señales de control, algunas de salida y otras de entrada que también pueden ser usadas fácilmente.
Las PC's generalmente poseen solo uno de estos puertos (LPT1) pero con muy poco dinero se le puede adicionar una tarjeta con un segundo puerto paralelo (LPT2).
En reglas generales la dirección hexadecimal del puerto LPT1 es igual a 0x378 (888 en decimal) y 0x278 (632 en decimal) para el LPT2. Esto se puede verificar fácilmente en el setup de la PC o bien en el cartel que generalmente la PC muestra en el momento del booteo. Puede darse el caso que el LPT1 asuma la dirección 0x3BC (956 en decimal) y el LPT2 0x378, en ese caso habrá que tratar de corregir el setup y/o los jumper de las tarjetas en caso que sea posible. De lo contrario se puede modificar el software que veremos mas adelante para aceptar esas direcciones.
El código Fuente del programa
'***********************************************************************
'* PARALELO *
'* Programa para ejemplificar el uso de la *
'* Interfaz para el Puerto Paralelo IPP01 *
'* *
'***********************************************************************
'**************************************************************
'****** Rutina para seleccionar el port a usar **************
'**************************************************************
port:
CLS
PRINT "Ingrese el port a usar"
PRINT "1= Lpt1 (0x378)"
PRINT "2= Lpt2 (0x278)"
PRINT "9= salir"
INPUT i
SELECT CASE i
CASE 1
entrada = 889
salida = 888
GOTO inicio
CASE 2
entrada = 633
salida = 632
GOTO inicio
CASE 9
END
CASE ELSE
GOTO port
END SELECT
'*****************************************************************
'********* Inicio cuerpo principal del programa ****************
'*****************************************************************
inicio:
OUT salida, 0 ' reseteo salida
CLS
PRINT "Que deseas hacer ?"
PRINT "1= Leer port"
PRINT "2= Escribir port"
PRINT "9= salir"
INPUT i
IF i = 1 THEN GOTO lee
IF i = 2 THEN GOTO escribe
IF i = 9 THEN END
GOTO inicio
'********************************************************************
...