Los displays de 7 segmentos estaban en el espejo de Blancanieves…

Cómo utilizar un display de 7 segmentosufff qué cansado estoy. No sé si es el cambio de hora ese famoso o simplemente que el fin de semana se me fue de las manos 😉 La cosa es que, pensando en relojes me he atrevido a hablarte de los displays de 7 segmentos.

Los displays de 7 segmentos son esos números que puedes ver en tu nevera o en tu microondas que se encienden marcándote la temperatura o el tiempo que falta para que la leche se haya calentado. Lo bueno de todo esto es que son simples ochos. Sí, el número ocho pero el cuál hemos partido en 7 partes ( o 7 segmentos) y que permite hacer cualquier número del 0 al 9.

Imagino que ya le ves la utilidad. Cualquier cosa que quieras traer al mundo real sin un pc de por medio va a tener que pasar por aquí. Ya que, a veces, no te sirve con un led que te diga que el horno está encendido, no está de más saber a qué temperatura estás cociendo la tarta de manzana de la abuela.

¿Cómo es un display de 7 segmentos?

Ahora ya vamos al lío. ¿Cómo va esto de los displays de 7 segmentos? Un display es algo que muestra una información, puede ser una pantalla o en este caso es un número. Lo de los 7 segmentos viene a que está partido en 7 barras. Cada una de las barras lo que esconde realmente es un led. Y eso sabes de qué va…

Así que va a ser sencillo conectarlo, ¿no? Te lo cuento ya, va a ser tan fácil cómo conectar 7 leds y controlarlos independientemente. Para ello busco en Google un datasheet de algún display de estos y lo destripamos juntos, ¿Qué te parece?

A mi mal. Desde la línea anterior a esta para ti han pasado unos segundos, para mi minutos por no decir horas. ¿No hay ni un datasheet decente en la red? Eso parece, así que me he conformado con éste. Pero vamos , no creas que es mi favorito 🙁

Pero bueno, es lo que hay. Lo primero que verás al abrirlo es su forma.

pinout display 7 segmentos

Espero que sea como esperabas, hay 7 segmentos que podrás encender a tu gusto y que los nombran como a, b , c, d, e, f, g. Pero si eres un poco curioso puedes ver que… hay 10 pines. ¿Qué pasa con esos tres pines? Pues uno pertenece al punto (DP, digital point). Puedes encender un punto detrás del número, por si quieres poner varios displays y necesitas una coma.

Por otra parte los otros dos pines que faltan son el ánodo común o el cátodo común como puedes ver

ánodo común, cátodo común

Pero bueno… vamos a ver que es eso del cátodo y el ánodo.

El cátodo que se metió en una comuna y no supo salir

Todo diodo (sea led o no sea led, es decir emita o no emita luz) tiene un cátodo y un ánodo. El ánodo es la parte ancha de la flecha, la que va antes. El cátodo es dónde apunta la flecha. Si te fijas a la palabra que acompaña a ánodo y cátodo verás que es la palabra común. Y sí, si te suena a comuna hippie vas por el buen camino.

Común significa que es compartido por todos, de esta manera puedes fijarte en la imagen anterior que en el caso del ánodo común todas las bases de la flecha aparecen del mismo pin y con el cátodo pues todas las puntas aparecen unidas al mismo punto. No dirás que no es sencillo, ¿eh?

Pero si recuerdas aquel post sobre los diodos te darás cuenta que esto no es algo banal. Tiene su aquél ya que, la corriente te expliqué que va siguiendo el sentido de la flecha. Eso es lo que hace el diodo, forzar esa dirección. Por lo que en este caso el ánodo solamente puede ser 5 Voltios y el cátodo GND. No hay otra opción.

Fíjate primero en el cátodo común. Fácil, GND se conectará al pin 3 y 8 y cada uno del resto de los pines los puedes conectar a un pin digital de Arduino. Lo de conectar GND a 3 y 8 es porque los pines al aire (no conectados a nada) dan mal rollito. Están unidos ambos pines pero no está de más que los conectes entre sí para evitar alguna consecuencia no deseada o no esperada.

En cuanto al manejo de estos pines es relativamente sencillo, enciendes un pin digital y encenderás un led. De manera que si quieres conseguir un 0 lo que harás es encender todos los pines menos el que ataca el pin 5 y 10. El pin 5 por ser el punto y el 10 por ser g, que corresponde con la barra central del 8. Al apagarla se crea un cero.

Doy por supuesto que sabes manejar pines digitales, sino pásate por aquí y listo. No debería costarte más de 5 minutos 😉

Recuerda que se trata de leds. Darles energía directamente desde los pines digitales de Arduino no los va a quemar, pero siempre viene bien poner alguna resistencia como ya calculé en su día. Es decir, con Arduino no va a pasar nada pero si conectases a 5 Voltios directamente sin resistencia alguna fundirías el led… dile fundir dile quemar. Eso olería a pollo chamuscado.

El ánodo que todo el mundo temía

Ahora viene la parte complicada, la del ánodo común. Bueno lo de complicada es un decir, pero implica pensar a la inversa. De repente, ya no vas dando señales de encendido cuando quieres sino que todos los leds están encendidos de forma predeterminada y tu misión es ir llevando a GND aquellos pines que deseas encender.

La operación mental aquí es la inversa. Apagarás los pines digitales de los leds que quieres encender. Esto es porque al apagarlos la corriente va de 5 Voltios a el GND creado por el pin digital que está a LOW.

¿Qué hacer para mantener apagado el led? Mantenerlo a 5 Voltios. Para apagar un led tendrás que encender el pin digital de manera que irá de 5 Voltios a 5 Voltios y el led no se encenderá ya que no hay una variación de tensión.

Ahora viene mi secreto… como en los de ánodo común hay que pensar en inverso nunca he utilizado uno… pero intuyo que meter en un pin que está a LOW algo de corriente no debe de gustarle mucho a tu placa Arduino. Lo suyo es que pongas unas resistencias antes de llegar a conectar a los pines digitales. Así como en el caso anterior era una mera formalidad, ahora yo creo que es bastante aconsejable poner unas 8 resistencias.

Sí, ya sé que estás pensando. También se puede resolver el embrollo con solamente una resistencia. Si la pones entre 5 Voltios y el ánodo común ya tienes resuelto el problema con sola una resistencia. Al final es la misma pérdida de corriente. Pero vamos, que igual soy un viejo miedica y no pasa nada sin resistencias. Pero por avisarte que no quede.

Comprando a lo grande: Displays de 4 en 4

Si buscas un poco por la red puede que encuentres displays no de uno, sino de 4 dígitos. También puedes comprarte varios y controlarlos de forma separada. pero claro eso son muchos pines a controlar. Los displays de 2, 3 o 4 dígitos (vaya, que los compras ya unidos) juegan a otra cosa. Lo que hacen es mantener los segmentos y añadir una serie de pines extra.

Por ejemplo, éste sería un caso. La idea es 4 dígitos con un cátodo común (bien, bien, bien, ¡es el fácil!) cada uno. De esta manera, están los 7 segmentos y el punto a los cuáles enviarás un HIGH a los segmentos que quieres encender y un LOW a los que quieres mantener apagados.

cuatro displays de 7 segmentos

Claro, para elegir el número tan sólo hay que poner el cátodo común de ese dígito a GND, conectar el pin de ese dígito a LOW. Ya te veo venirte arriba pero aún no has caído en algo… ¡solamente se enciende uno cada vez!

Esto es una tragedia peor que la de Blancanieves… pobre chica, todo el día durmiendo… qué drama. Pues la solución está en la rapidez. Si los cambios de dígitos son rápidos parecerá que todos los números están encendidos a la vez y que no se apagan ya que nuestra vista no permite ver cambios muy muy rápidos. Cuando hablo rápido hablo de tiempos muy bajos, bastante menores que un segundo. Podrías probar con 0.1 segundos o incluso algo menos.

Lo que sucede es que al hacer un cambio rápido y continuado (claro, si solo es una vez parecerá que no encendiste nada) tendrás un valor que parecerá permanente y que puedes ir cambiando según necesites.

Opt In Image

me marcho con mi manzana a otra parte…

Y nada, después de la historia de Blancanieves te dejo (entre la tarta de manzana y lo de Blancanieves ya lo tengo bien…). Espero que te haya resultado útil. Si es así me dejas un comentario ahí debajo. Si por el contrario piensas que ha sido una birria de post o simplemente quieres trollearme, déjame un comentario también… puede ser divertido 😉

[Total:5    Promedio:5/5]

Déjame un comentario que en el fondo soy buen chaval

  1. Fernando Bordallo

    Responder

    • Responder

  2. antonio

    Responder

    • Responder

  3. ArduMike

    Responder

  4. simon259

    Responder

  5. oscar

    Responder

    • Responder

  6. Rodrigo

    Responder

    • Responder

Deja un comentario