Puerto Paralelo

Encendiendo Leds

Ya que se tienen algunas bases teóricas sobre el Puerto Paralelo, se abrio el puerto desde windows xp y se cuenta con el material necesario como un cable para Puerto Paralelo, una protoboard, unos leds y resistencias de 1k, podemos empezar a realizar unas pruebas. En la primera parte de la teoria que puse, hice referencia al siguiente link:

 http://www.modelo.edu.mx/univ/virtech/circuito/paralelo.htm

Como ahi se comenta, es muy recomendable utilizar un Buffer 74LS244 para proteger un poco de posibles daños al Puerto así como aumentar la corriente y voltaje que salen del Puerto, pues el Puerto no es una fuente de alimentación y si bien, la corriente y voltaje que entrega es suficiente para poder encender un LED, no es suficiente para manejar y controlar otro tipo de circuitos y actuadores como por ejemplo un Motor a Pasos o bien si quisieramos mandar un pulso de reloj a un registro tampoco pudiera ser suficiente.

 MATERIAL

  • 1 Tablilla de Prácticas (Protoboard de ahora en adelante)
  • 8 Leds
  • 8 Resistencias de 220 Ohms o incluso de 1k
  • 1 74LS244 (Buffer)
  • Alambres para hacer las conexiones (puedes comprar unos metros de cable para red UTP categoria 5).

DESARROLLO

Tomaré el atrevimiento de poner la imágen que se encuentra en la página anteriormente mencionada, pues para esta práctica nos basaremos en dicho circuito.

 

Bueno, pues no hay mucho que decir. Tomamos nuestra interfaz que es el cable plano que soldamos al conector DB25, lo conectamos al Puerto Paralelo de la PC (sin la PC encendida) y del otro extremo lo conectamos a la protoboard. Recordemos que en este extremo se debe contar de derecha-izquierda y dependiendo de como se soldo el cable (recuerden que pudieron haber comprado un cable plano de más de 24 hilos y soldar todos o uno de 24 hilos y dejar un pin sin soldar, ya sea el 1 o alguno de los de tierra).

Finalmente ya que se indico cual es el pin 2,3,4….9 se procede a armar el circuito, pero para ello, necesitamos conocer la configuración de los pines del Buffer. En la página de DataSheet encontraremos este diagrama de conexión.

 Ahora bien, los pines 1 y 19 deberán ir conectados a Vcc (+5 volts) al igual que el pin 20 para la alimentación del Circuito Integrado. El pin 10 va a GND (tierra, -5 volts). Y con esto ahora si, el pin 2,3,4 y 5 del Puerto Paralelo, van conectados respectivamente a los pines 1A1,1A2,1A3,1A4 del Buffer y lo mismo con los pines 6,7,8 y 9 del Puerto Paralelo a los pines 2A1,2A2,2A3,2A4 del Buffer.

Las salidas del Buffer, como es de suponerse son, 1Y1,1Y2,1Y3…..2Y4

Y aquí en estas salidas es donde iran las resistencias y luego los LEDS (recordar que la pata más corta de un LED va a GND y la más larga a Vcc, en este caso para que no se quemen es que se ponen las resistencias).

Ya por último, no olvidar que debemos poner uno de los pines del 18-25 a tierra.

Una vez que el circuito esta bien alambrado y alimentado por una fuente de 5 Volts, procedemos a escribir el programa. En este punto, ya podemos hacer uso de algún lenguaje de programación como C++, Visual Basic, Java o Ensamblador. Pero para este primer ejercicio, lo haremos más fácil en caso de que no sepas programar (aunque deberias saber si estas estudiando Ing. en Sistemas o electrónica, pero no es momento para regañarte).

Vamos a hacer el “programa” en el DEBUG!!…. Ufffffff!!!!!!!!!…. Si sabes algo de ensamblador quizá esta idea te espanto, pero tranquilo(a), solo basta escribir una sola linea para hacer prender a los leds.

Vamos a Inicio–Ejecutar y ahi escribimos debug

Ahora con la instrucción OUPUT simbolizada por la letra “o” podemos escribir algo como lo mostrado en la figura:

DEBUG

Es de suponerse que a estas alturas ya se sabe que el pin 2 del Puerto Paralelo es el bit 0 del registro de Datos, por lo tanto, según la naturaleza de los números binarios:

128   64    32    16    8      4      2      1

D7    D6    D5    D4   D3  D2   D1   D0

fácil no?, si queremos encender el ultimo LED, enviamos el 128 en Hexadecimal, si queremos encender el ultimo y el tercer LED enviamos 128+4 en Hexadecimal.

Esto no deberia explicarlo pues se supone tu debes de saber esto, pero por si las dudas hago el comentario.

Y bueno, para apagar los LEDS pues obviamente se envia el valor de 0. Con esto ya hemos realizido nuestro primer ejercicio introductorio. En la próxima entrega se explicara otro sencillo programa para hacer que los LEDS prendan en secuencia desde lenguaje Java.

9 comentarios en “Encendiendo Leds

  1. Hola!! Me parece genial este blog!! El caso es que sigo tus pasos pero cuando hago un debug y pongo según qué órdenes no consigo que me obedezca…😦

    Es raro pq con programas en vb, java, etc que me he descargado funciona todo ok y con debug algunos comandos me los ignora (no los hace ok o no los entiende)…

    Por ejemplo -o 378 11 –> Activa D4 y D0 (OK) , pero -o 378 1 no activa D0 o por ejemplo -o 378 00 no borra todos los leds.

    Por qué sera…???? A alguien se le ocurre algo???

    Gracias!!!

  2. hola buenas tardes necesito ayuda quiero controlar un brazo con 4 motores de paso y necesito saber que utilizar para crear el circuito con el puente h y los buffer

  3. Tus comentarios referntes a nuestra capacidad son de caracter ofensivo, espero aprendas a referirte a los pricipiantes de forma mas respetuosa, ser egosentrista es olvidarse q alguna vez fuiste amateur. ( ¿para q haces un tutorial tan explicadito ?, sabiendo que con estas practicas no llamaras la atencion de los experimentados)… siempre habra alguien ” peor y mejor que tu “.
    HELLS GATE ARRESTED GOTT MIT UNS AND SHINE HEAVEN NOW

    1. El tutorial no va dirigido a experimentados, todo el blog va dirigido a principiantes. Los comentarios son chistes, sarcasmos y así lo toman los lectores del blog, tanto que puedes ver artículos como Reportes en Java, que es de los más comentados y no existe una queja en ese sentido.

      El decir que asumo sabes programar, pues se supone se estudia ing, en sistemas o similares, NO ES OFENSIVO, por el contrario, así debe ser en realidad y en caso de no serlo, el lector sabrá que debe empeñarse en serlo.

      Mis comentarios no tuvieron intensión de ser despectivos. Disculpame si te ofendio.

      1. o 378 0
        o 378 1
        o 378 2
        o 378 0
        PREGUNTAS:
        ¿Eso es todo para lo de los 8 leds?
        ¿por que 378, que quiere decir, seria lo mismo poner 102 por ejemplo?
        ¿y como lo cierro y lo guardo?
        ¿al momento de usarlo que hago?
        espero te tomes la molestia de responder lo mas pronto posible. esto es para mañana

  4. Hola que tal espero se encuentren de lujo…
    Tengo una pequeña duda…o pregunta…
    porque sera que al mandar el dato al puerto no enciende ninguno de los leds, siendo que, ya con un programa en visual y otro en Java puedo controlar los leds. Solo tengo esa pequeña inquietud jaja espero alguien me pueda comentar, SALUDOS.
    nota: debug lo use muy poco así que ahí puede estar mi problema jajajaja

  5. o 378 0
    o 378 1
    o 378 2
    o 378 0
    PREGUNTAS:
    ¿Eso es todo para lo de los 8 leds?
    ¿por que 378, que quiere decir, seria lo mismo poner 102 por ejemplo?
    ¿y como lo cierro y lo guardo?
    ¿al momento de usarlo que hago?
    espero te tomes la molestia de responder lo mas pronto posible.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s