display 7 segmentos

Hola

Me acabo de montar la placa serie de arduino y despues de probar el ejemplo del blinking led ahora estoy con un dislpay de 7 segmentos que tenía reciclado por ahí. He conseguido manejarlo pero usando una salida digital para cada pin y lo suyo sería utilizar una sola salida por display (aparte de este tengo otro display de 7 segmentos doble - dos digitos -). Buscando por ahi he visto que existe un integrado específico para controlar displays de 7 segmentos, pero como lo que se trata es de reutilizar todo lo que encuentro por los cajones quería saber si se podría hacer con un 74HC138 3 entradas 8 salidas, lo he visto por algun sitio en montajes con displays relacionado con ahorrarse salidas, aunque no se si por el sólo podría hacerlo, supongo que para controlar uno valdría ¿?

Igual ya os habeis dado cuenta de que estoy muy pez :-/ pq ni siquiera se como tendría que conectarlo, etc ...

Se agradece cualquier pista.

Saludos y suerte.

Hola otra vez.

Como buen aprendiz impaciente ya he conectado el 74HC138 con el display y el arduino. Tres salidas digitales del arduino a las tres entradas A,B,C del integrado los 5v del arduino a el pin Vcc del 74HC138 y la masa del integrado a la masa del arduino ... y bueno el display se enciende cuando le mando distintas combinaciones de entradas 0 0 1, 1 0 1, etc ... el problema ahora es que como las salidas del integrado son todas High menos una Low, lo unico que consigo es encender un solo segmento del display cada vez.

Ahora he reducido de 8 a 3 el numero de salidas del arduino para controlar el display, pero no consigo representar nada en él. ;D

Existe algun tipo de conversor para poder manejar las salidas del integrado ¿? :o

Saludos y suerte.

Hola otra vez.

Ahora estoy controlando el display haciendo bucles con un delay muy bajo (30 ms) encendiendo alternativamente los distintos segmentos que forman un digito y los resultados parecen aceptables, digo parecen pq tengo unos problemas de la ostia para hacer los puentes en la protoboard - no me hacen bien contacto -, y no termina de ir la cosa.

De todas formas mi duda ahora es si poniendo un delay tan bajo puede afectar algo a la placa arduino o al integrado y si no es así cual es el valor minimo que acepta el arduino (si es que lo hay).

Saludos y gracias

Lo mas bajo que existe es la velocidad en tiempo real dl CPU de Arduino, osea muy rapido. Puedes tratar de utilizar un delayMicroseconds();, ese te retrasa en micro segundos (un milisegundo divido en mil), pero para que quieres tanta rapidez??? no podras leer nada. Y no no le pasa nada a la placa, lo unico que si va pasar es que no vas a poder leer.

ahora, no se si leiste el dataSHEET de tu componente, no te entendi muy bien si estas utilizando el 74-138. Pero se supone es un convertidor de digital a BCD. El bcd es algo como el ASCII, osea se utilizan universalmente cadenas binarios para representar valores, el ASCII son letras numeros y simbolos y el BCD son decimales nada mas. Entonces suponiendo que tienes los 4 pines de entrada de tu 74-138, estarian representados asi:

Decimal: 0 1 2 3 4 5 6 7 8 9 BCD: 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001

Eso significa que si quieres mostrar el 7, necesitaras meterle corriente (HIGH) al pin1, 2 y 3 y el pin 4 debera estar en LOW. Para representar el cero todos deben de estar en estado bajo (LOW). Bien si deseas poner mas pantallas, el 74-138 te permite hacer una cadenita de componetes enlazados entre si para controlar infinidad de leds de 7 segmentos.

Hola

Gracias por tus respuestas jordi. El tema es que el integrado que tenía no es un convertidor de digital a BCD sino un decodificador de tres entradas y ocho salidas con siete salidas en high y sólo una en low. Por eso en display solo podía encender un sólo segmento a la vez y por eso quería encender varios segmentos en ciclos muy rápidos para que el ojo humano percibiera que había varios encendidos.

De todas formas hoy me he comprado varios 74ls47 que es un ci especifico de BCD a display de 7 segmentos. Y con este no hay que hacer florituras, las salidas corresponden a cada segmento del display que se pueden encender simultaneamente varios.

El caso es que con este último utilizo 4 entradas del arduino y con el 74138 sólo usaba tres.

Saludos y suerte.