lunes, 19 de octubre de 2009

Interface 8 Entradas / 5 Salidas para puerto paralelo

Datos de salida: pines 2 a 9
Control: pines 1, 14, 16 y 17
Entrada: pines 10 a 13 y el 15
Resto de los pines son negativo (del 18 al 25 todos soldados)

Simplificando el circuito sería como sigue:
-Patas de 18 a 25 todas soldadas entre si.
-Patas de 2 a 9 al positivo de los 8 diodos led (la otra pata de todos los led puenteada y se hace pasar por una resistencia de 1k para ir luego esta a las patas 18 a 25 (negativo).
-Patas 10, 11, 12, 13 y 15 a cada pulsador. El otro polo de los pulsadores todos puenteados y al pin 25 (negativo)
-Los únicos pines que no tienen conexión son los de control: 1, 14, 16 y 17
Para la ejecución práctica se empleó 1 gota de pegamento epoxi (de 2 componentes) para fijar los pulsadores a la carcasa del conector, 1 broca de 1mm para perforar el sitio de 2 de los 4 pines del pulsador en la carcasa del conector (los otros 2 pines se cortaron), pistola de silicona caliente para la fijación de los 8 leds a la carcasa, se pusieron los 8 leds de 5mm planos por 2 de sus caras para que ocupase menos en el conector ya que eran los que tenía y no cabían :), aunque hubiese quedado sin duda muchísimo más elegante con un array de leds en barra. Si alguien se anima a hacerlo por favor que publique fotos :).

Como decía un amigo carpintero... cuando se realiza un trabajo hay que intentar hacerlo muy bien para que el resultado quede medianamente bien porque en la práctica todo se va torciendo y si empiezas con la idea de hacerlo medianamente bien al final queda una pequeña gran chapuza ;-)
Probando el circuito:
Para probar el circuito podemos utilizar un programa que viene con los sistemas operativos windows (tb en la versión XP).
1.- Ejecutar el modo consola: Para ello ir al menúInicio/Ejecutar/cmd (y punsar "enter")
2.- Ejecutamos el programa "debug": una vez en la pantallita negra (ms-dos) tecleamos "debug" sin comilas y pulsamos "enter"
3.- Probamos las salidas: tecleamos "o 378 0" (o viene de output(salida), 378 es la dirección a la que hay que apuntar para que envie la salida a las patillas de dato del puerto paralelo LPT1, y por último el dato en hexadecimal (así "00"(cero cero como la cerveza), será todo apagado y FF será todo encendido)

4.- Las entradas serían con la letra i (de input: entrada) y si no me equivoco sería "i 378, i 379 ó i 37A" según el puerto que queramos leer del conector LPT1. Yo lo que hice fue escribir la salida (puerto 378) y leer la misma salida que había escrito en el mismo puerto (378).

5.- Para salir del "debug" pondremos "quit" sin comilas o abreviando "q".

Para averiguar la dirección de LPT1 en debug pondremos "d 0:408 40D" (son todo ceros). Nos mostrará algo como 3BC, 278 ó 378 (normalmente 378) agrupados sus dígitos de 2 en 2. Es posible incluso que muestre los grupos de 2 invertidos, pero aún así nos da una pista de qué direccion deberemos emplear.















Tipicamente son las siguientes para los puertos LPT1, LPT2 y LPT3 (ya que se podrían añadir tarjetas pci para incrementar el número de puertos paralelos), aunque quizás lo más correcto sería multiplexar tanto las entradas como las salidas:

Datos 3BC 378 278
Status 3BD 379 279
Control 3BE 37A 27A













En la fotografía podemos ver una mano (mi mano)
















En la fotografía podemos ver la tapicería de mi silla.
















En la fotografía podemos ver la mesa.

No hay comentarios:

Publicar un comentario