# Mostrar mensajes con Displays



## manik (Nov 13, 2008)

Hola. Quiero regalarle a una amiga un mensaje escrito con displays pero no tengo idea de como.

Me gustaria que se pudiera leer una palabra de 6 letras, por lo que tengo q usar 6 displays. NO importa si parpadea o no, el puno es que se pueda leer algo.

Me pueden ayudar. Gracias!


----------



## pepechip (Nov 14, 2008)

si solo quieres hacer un mensaje puedes montar este circuito, y introduces los datos manualmente mediante los interruptores.


----------



## manik (Nov 14, 2008)

Muchas gracias.. pero yo tenia planeado utilizar displays de 7 segmentos para mostrar las letras de una palabra. No se si me puedas ayudar con eso?

Gracias
Saludos


----------



## pepechip (Nov 15, 2008)

lo unico que tienes que hacer es tratar cada segmento de cada display como si de un led se tratara. 
Cada segmento que quieras alimentar le tienes que conectar una resistencia, que su valor vendra determinada en funcion de la tension de alimentacion y de la cantidad de luz que quieras lograr.


----------



## manik (Nov 15, 2008)

ahhh ok. ya te entendi. Muchas Gracias


----------



## luciano (Nov 15, 2008)

hola primero que nada saludos a todos y espero que mi opinion les sirva, esta es mi primera vez en el foro.
yo si fuera vos haria un puqueño teclado matricial y con un pic haces que te combierta ese pulso de entrada en una salida decodificada a 7 segmentos y conectados a los displey´s por medio de sus respectivas resistencias.
pero si lo que necesitas es que sea una unica palabra fija todo el tiempo podes hacer lo que te dijo pepechip y usar cada segmento del displey como un led manejado por dipsuich por el tamoño mas reducido o directamente coloca el anodo de los segmentos con su resistencia la alimentacion + de la fuente de alimentacion o bateria y el anodo de los segmentos que quieras que queden apagados los conectas a - de la fuente.
esperoo te sirva, suerte


----------



## manik (Nov 16, 2008)

OK, muchas gracias. Lo tomaré en cuenta.
Saludos


----------



## chipichape (Ene 4, 2009)

Hola. Soy todavia un amateur en esto de la electronica, y tengo la siguiente duda sobre el tema: como puedo rotar un mensaje, mediante un microcontrolador at89c51, pero usando solo un puerto, y displays alfanumericos de leds de 14 segmentos, los conocen verdad? (no pantallas lcd porfavor), la idea es usar pocos puertos, uno para cada display alfanumerico, en este caso es uno doble de 2 anodos comunes para cada panel, y dejarle el resto del problema al programa en assembler, que bueno, eso ya masomenos lo domino. He leido por ahi que se puede usar polarizacion, multiplexado y cosas asi, pero en ninguna parte me amplificadoran mucho sobre esto. Si alguien tiene un aporte, se lo agradeceria mucho.


----------



## sangreaztk (Ene 4, 2009)

Los segmentos de todos los dígitos los conectas juntos, todos los As juntos, todos los Bs juntos, etc, espero que entiendas el punto. y los ánodos (o cátodos) de cada dígito lo controlas con un pin diferente, usa transistores para tal propósito.
mandas el dato del primer digito y activas su anodo (o catodo) pero los otros digitos los mantienes apagados, mantienes un tiempo esa respuesta, ahora mandas el dato del segundo digito prendes este y apagas los otros dejas pasar otro tiempo y haces lo mismo varias veces. El chiste es que ese tiempo sea pequeño, que la frecuencia sea muy rapida para que 'engañe' al ojo y paresca que los digitos están prendidos simultaneamente. Por ejemplo, en el cine se transmiten 24 cuadros por segundo, osease que cada cuadro dura 41.6ms (1/24). Espero me hayas entendido.
Buena Vibra!


----------



## chipichape (Ene 5, 2009)

Excelente chino excelente, esa puede ser una solucion muy buena para ese problema; otra cosa seria como asegurar una buena luminosidad en cada segmento, porque a la hora de correr el programa, algunas letras alumbran tan poquito en algunos segmentos que parece que no fueran esas letras. alguna sugerencia?


----------



## chipichape (Ene 5, 2009)

Excelente chino excelente, esa puede ser una solucion muy buena para ese problema; otra cosa seria como asegurar una buena luminosidad en cada segmento, porque a la hora de correr el programa, algunas letras alumbran tan poquito en algunos segmentos que parece que no fueran esas letras. alguna sugerencia?


----------



## sangreaztk (Ene 5, 2009)

Chino? jajajaja
Que resistencias le estas poniendo a los segmentos? si la alimentación es de 5V pss de unos 330 o 220 ohms rifaría!
Otra puede ser aumentando la frecuencia para que cada dígito no dure tanto tiempo apagado.
Buena Vibra!


----------



## chipichape (Ene 5, 2009)

listo viejo gracias, me fue de mucha ayuda, a y lo de chino, es un trato de aca de Colombia, es como decir alla en Mexico, wey o algo asi. bueno estamos hablando, mucha suerte.


----------



## DRTK (Ene 13, 2009)

Hola. Solo por si acaso: la corriente que suministra el at89s51 es muy pequeña para excitar displays directamente.
Otra cosa: A mayor frecuencia menor es la corriente que pasa por un led, debes usar buffers que suministren buena corriente para que el brillo sea aceptable. Tambien puedo decirte que una frecuencia de barrido de los displays de unos 15Hz es suficiente para que el ojo no perciba el parpadeo.


----------



## chipichape (Ene 14, 2009)

A si eso ya lo sabia, aunque no se si los buffers son los mismos para displays de catodo o de anodo. tu conoces la referencia de los buffers ttl para anodo?


----------



## DRTK (Ene 20, 2009)

Pienso que por ese camino te sera algo engorrozo hacer lo que quieres. Si tienes un micro a la mano, el AT89S51 u otro similar, te recomiento el MM5450/51 (anodo y catodo comun respectivamente) que es un registro corredizo de 34 bits.


----------



## chipichape (Ene 21, 2009)

gracias por el consejo mano, lo tendre en cuenta.


----------



## lola12 (Oct 8, 2012)

Hola acá tengo un programa pero en proteus lo estoy haciendo pero no funciona  tengo *que* escribir en cuatro display una palabra de derecha y izquierda mi display alfanumérico es ánodo pero en el proteus es cátodo lo estoy negando los códigos.


```
const codigo1[ ]= {0x00,0x00,0x00,0x00,0x3f,0xC7,0XF3,0XCC,0X3F,0XCF,0x00,0x00,0x00,0x00,0x00};
const codigo2[ ]= {0x00,0x00,0x00,0x00,0X2a,0X98,0X88,0X11,0X22,0X88,0x00,0x00,0x00,0x00,0x00};
void main() {
   char dato,veces,rep,puntero;
TRISb=0;
trisd=0;
trisc=0xe0;

x1:
           rep=0;veces=0;dato=0;puntero=0;
           for(puntero=4;puntero<14;puntero=puntero+1)
           {for(veces=0;veces<50;++veces)
           {for(rep=0;rep<3;++rep)
           {for(dato=1;dato<16;dato=dato<<1)
           {portc=~dato;
           portb=codigo1[puntero-rep];portd=codigo2[puntero-rep];delay_ms(5);
           rep=rep+1;

           }
       }
}
}
goto x1;
}
```
le mando el proteus

en  proteus si sale pero no el protoboard


----------

