¿Cómo se llama este tipo de LCD de solo dígitos?

8

He visto este tipo de LCD muchas veces en básculas, calculadoras, medidores, micrómetros, etc. Sé que es una pantalla bastante tradicional, pero realmente me gusta su compacidad, simplicidad y tal vez incluso cuesta menos, en comparación con TFT o teléfonos inteligentes. escriba pantallas táctiles.

LCD de solo dígitos


[ ¿Cómo se llama? Respondido por @ kevlar1818 y @stevenvh: "Pantalla de siete segmentos"]

Me gustaría trabajar con este tipo de LCD, por ejemplo, acabo de encontrar este de 8 dígitos llamado VIM-878 del catálogo de Digikey; Aquí está su hoja de datos .

¿Cómo me relaciono con él? Me gustaría saber cuál sería una forma buena / común de interactuar con él desde un microcontrolador AVR simple como un Atmega8, preferiblemente con circuitos / piezas de interfaz que no son demasiado grandes físicamente.

  • ¿Supongo que sería necesario algún tipo de controlador o multiplexor? Supongo que estoy buscando una perspectiva inicial de otros que puedan tener una mejor experiencia interactuando con este tipo de LCD.
bocado
fuente
Gracias por agregar la información solicitada. Sin embargo, tenga cuidado de no deshacer ediciones anteriores en el proceso.
Chris Laplante
Eso es exactamente lo que hice, ¿no es cierto? ¿Podría usted o alguien ayudar a volver a colocar la imagen?
mordida del
Puede intentar retroceder para editar 2 y luego agregar su información a eso. No tengo el representante para hacer retrocesos, así que lo marcaré.
Chris Laplante

Respuestas:

12

Es una pantalla de 7 segmentos . A diferencia de las pantallas de caracteres de matriz de puntos, Kevlar se refiere a que estos no suelen ser módulos inteligentes. La mayoría de las pantallas de matriz de puntos tienen un controlador compatible con HD44780 en el que simplemente puede escribir códigos ASCII, pero una pantalla LCD de 7 segmentos a menudo será solo el vidrio, con conexiones para segmentos y varios planos posteriores (a menudo hasta 4).

ingrese la descripción de la imagen aquí

La conducción de pantallas LCD puede ser incómoda ya que no usan solo dos niveles, por lo que no puede conducirlas con una lógica digital común.

ingrese la descripción de la imagen aquí

Lo mejor que puede hacer es seleccionar un microcontrolador con controlador LCD integrado, al que puede conectar la pantalla directamente, como la TI MSP430x4xx . Como la mayoría de los controladores, este también conoce solo segmentos; No tiene conocimiento de dígitos ni nada. (Genial, primero tuvimos una pantalla tonta, ¡ahora también tenemos un controlador tonto!) Hay una razón para esto. Estos controladores de LCD a menudo se utilizan para controlar LCD personalizados que pueden ser una combinación de una parte numérica, gráficos de barras y símbolos personalizados. Tal símbolo también es un segmento único, por lo que no tiene sentido hablar de dígitos.

ingrese la descripción de la imagen aquí

Esta pantalla tiene símbolos como "batería" y "despertador", pero también todos los campos de texto, como "AM", "PM" y "SNOOZE" son símbolos que consisten en un solo segmento (es decir, controlado por un solo bit).

Más información
MSP430x4xx Family User Guide . El controlador LCD está cubierto en p.709 y siguientes.

stevenvh
fuente
Suponiendo que los segmentos significan la cantidad de partes utilizadas para construir un carácter / dígito en mi LCD, creo que el microcontrolador sería excelente: puede admitir 96 y solo tiene un consumo de corriente de 200 uA. ¿Sugiere reemplazar mi AVR con el microcontrolador TI o simplemente comunicarlo a través de la pantalla LCD? Preferiría lo último, debido a mi experiencia basada en AVR (¡también limitada!); entonces puedes comentar sobre eso?
mordida del
@Inga: no conozco ningún AVR con un controlador LCD a bordo. Usar el MSP430 como controlador de pantalla puede ser una buena idea: su AVR puede cumplir con su tarea principal, y el programa para el MSP430 puede ser simple (si no tiene mucha experiencia con él) o avanzado (si desea conviértalo en un controlador inteligente, que puede suministrar con comandos como "incremento").
stevenvh
Eso suena muy factible; ¡Estoy a punto de pedir uno de los chips TI! Por cierto, en caso de que mis intentos de programación con ese microcontrolador fallen, ¿puedo usar un multiplexor simple o un controlador LED, por ejemplo, un IC como este que acabo de encontrar en Maxim ? Preveo problemas debido a lo que dijiste sobre los múltiples niveles.
Mordida del
@Inga: no, no puede usar el MAX7219, es un controlador LED. Por un lado, se multiplexan demasiado rápido para pantallas LCD. Los niveles múltiples no deberían ser un problema; para eso tienes un controlador. Eso se encarga de todo. ¿Qué opinas del controlador inteligente que mantiene el recuento del número a mostrar? Puede usar comandos como "valor de carga", "recuento incremental", "recuento de reinicio", etc.
stevenvh
Jaja, ¿realmente tiene comandos como ese? Seguramente tengo que escribir código para implementar esas funciones yo mismo, ¿no?
mordida del
2

Lo que está pensando se llama LCD de 7 segmentos. Si sabe cómo encender un LED normal, entonces su 1/8 del camino allí.

Aquí está el Wiki. Tiene alguna teoría sobre cómo crear números al iluminar diferentes conjuntos de LED: http://en.wikipedia.org/wiki/Seven-segment_display

(de) La multiplexación es un buen método para iluminar un panel grande de 7 segmentos, aunque no es necesario. Si sus puertos de E / S son limitados, este es el camino a seguir. Los conceptos básicos de demuxing funcionan así (suponiendo que conozca el binario aquí). Mira esta imagen:

Con un número binario de 3 bits como 000 podemos representar hasta el número 7 (IE para seleccionar el puerto 5 tendríamos ABC ser 101). Lo que sucedería en el demux en su situación es que una entrada es algo así como una señal alta, y AB&C son puertos de E / S. Los 0 a 7 se conectan a cada segmento de la pantalla LCD y al escribir en ABC desde su controlador puede encender un segmento. Puede decir que espere, pero si quiero iluminar un número, necesito muchos segmentos iluminados, no solo el quinto segmento. Bueno, después de eso, puede mirar en dos caminos para que la pantalla LCD muestre un número. El primero es agregar más demux para segmentos necesarios adicionales. El segundo es un enfoque de software que implica flashear muy rápidamente cada uno de los segmentos necesarios para crear la ilusión de que el panel está completamente iluminado.

Nimjox
fuente
Me gusta el primer enfoque que sugirió: más demux's. Pero si tuviera que ir por esa ruta, ¿cómo se puede reducir el tamaño físico de los componentes? En mi caso, necesitaría 8 dígitos = 56 segmentos, ¿sabes?
Mordida del
Errar bien, no vas a tener suficiente I / 0 para manejar 8 dígitos con un enfoque de hardware. Aquí hay un enlace, es aterrador, lo sé, pero no creo que pueda dibujar / explicar un desglose más fácil. doctronics.co.uk/4511.htm . Sin embargo, esa es la teoría. En la práctica, consideraría el método de escaneo, sé que puede parecer que no proporcionaría una buena imagen o que sería complicado, pero es una práctica muy común en la industria. La mejor de las suertes.
Nimjox
@Inga - ¡incluso 64 si también cuentas puntos decimales! Hay dos razones por las que no encontrará las que no están multiplexadas. Uno es solo el número de pines, tanto en la pantalla como en el microcontrolador. El microcontrolador necesitaría al menos 80 pines y más pines = más costo. Pero también hay enrutamiento. Si tiene una pantalla multiplexada, tendrá la ruta de un segmento pasando por un segmento adyacente, pero si están todos separados, no puede hacer algo así. Eso también es un costo adicional.
stevenvh
2

Una pantalla de siete segmentos o pantalla de matriz de puntos son lo que usted se refiere creo.

Aquí hay un ejemplo en Sparkfun con la hoja de datos relevante . Encontré este ejemplo / tutorial AVR en la sección "Documentos" de la página del producto. ¿No es genial Sparkfun?


Dada esta pantalla de 14 segmentos y su hoja de datos , descubramos cómo usarla.

Tomemos el ejemplo de mostrar un 7en el primer grupo de segmentos (más a la izquierda).

Para escribir un 7, tenemos que hacer valer los segmentos 1A, 1By 1C, como se ve en la ficha técnica. Todos estos segmentos se asignan al pin 35 del dispositivo, pero en diferentes COMlíneas. Con una hoja de datos tan críptica, mi mejor suposición sería que estas COMlíneas se asignan a los pines 17 a 20, dada la tabla en la hoja de datos.

Por lo tanto, para afirmar cada segmento anterior, lo haría con pin 35 alta, mientras que rápidamente ciclos entre valer COM1, COM2y COM3por medio de pasadores 18, 19 y 20 respectivamente. Los tres segmentos aparecerían iluminados simultáneamente, creando a 7.

Dicho esto, el código bien escrito simplemente usará algún tipo de mapa para mostrar cualquier carácter dado. El desafío es hacer que este mapa funcione para CUALQUIERA de los grupos de segmentos.


Todavía recomiendo una pantalla de matriz de puntos como la primera a la que me vinculé; Ciertamente hay diseños más ligeros por ahí. El beneficio de usar una pantalla de matriz de puntos es que la mayoría tiene un registro de datos incorporado, por lo que puede pasarle caracteres ASCII de 8 bits, sin problemas de implementación funky como en el ejemplo de 14 seg anterior.

kevlar1818
fuente
Por cierto, ¡tengo una pantalla LCD muy similar al ejemplo que publicaste! Pero es un módulo muy grueso y no es muy legible sin su luz de fondo encendida. Mientras que el que publiqué es visible mucho mejor a pesar de que no hay luz de fondo, y de alguna manera parece más limpio (no hay un tipo de apariencia de remanente oscuro de los dígitos no mostrados). ¿Alguna idea? ¿Hay subcategorías dentro de estas pantallas?
Mordida del
Usando "display de siete segmentos" como mi término de búsqueda, encontré este: página Digikey Me gustaría trabajar con este, por ejemplo. Y esta es su hoja de datos .
Mordida del
De hecho, iba a decir (según su explicación) que el de 14 segmentos parece más SIMPLE, ¿no? Bueno, está bien, no es más simple que simplemente pasar caracteres ASCII, sino bastante simple en términos de lógica y la cantidad de control (por ejemplo, solo iluminar un segmento). Por cierto, en el enfoque que recomendó anteriormente, ¿cómo trata con lo que stevenvh dijo en su respuesta sobre que no hay dos niveles de lógica para estas pantallas?
Mordida del
@Inga No me parece que deba haber más de dos niveles lógicos en esta pantalla particular de 14 segmentos, ya que tiene un pinout tan detallado. Sin embargo, todavía no soy positivo, porque la hoja de datos y la página de Digikey no dicen nada sobre los niveles de voltaje / lógica. Honestamente, generalmente no es una buena práctica comprar un dispositivo tan mal documentado.
kevlar1818
1
¿Por qué no utilizar algunos de los controladores de LCD, esa interfaz sobre I2C, como Holtek 1632 o similar? (¡Espero tener la parte correcta!)
Vaibhav Garg el