




















Diagrama de capas de la estructura del producto
¿Cómo iluminar la pantalla LCD sin un programa de placa base?
Tome la siguiente figura como ejemplo
1. La retroiluminación se conecta a los polos positivo y negativo de la fuente de alimentación de 3V para encenderse. Esta es una lámpara enchufable con patas largas positivas y cortas negativas. También hay una línea de lámpara SMD con positivo rojo y negativo negro.
2. Junte los cuatro pines COM y toque los polos negativos del voltaje de 3V.
3. Junte los 9 pines SEG, toque el polo negativo del voltaje de 3V y podrá ver el contenido de la pantalla.
(Nota: Los pines COM de la pantalla suelen ser 4 u 8, y el SEG se determina por la cantidad de contenido mostrado)

Amplia gama de aplicaciones

Ejemplo de controlador de pantalla LCD
Shenzhen Zhuojinwei Technology es un fabricante profesional de pantallas LCD. La siguiente es información recopilada sobre cómo usar un microcontrolador de un solo chip MCU para controlar directamente la pantalla LCD. Espero que les sea útil.
El controlador del tubo digital LED es relativamente simple y fácil de entender. Los tubos digitales de varios dígitos generalmente tienen la forma de matrices LED. Cada dígito utiliza un terminal común, y los segmentos de pluma correspondientes de diferentes dígitos utilizan un terminal de control; el controlador utiliza escaneo por tiempo compartido para cada dígito y visualización dinámica. Sin embargo, el LED consume más energía. Quiero hacer un reloj alimentado por batería, y la batería del tubo emisor de luz no durará mucho. Así que consideré usar LCD. Compré una pantalla LCD de segmento de pluma de 4 dígitos de Zhuojinwei, un fabricante en Shenzhen. Hay dos puntos en medio de los 4 dígitos, y hay varios símbolos de flecha en el lateral. Hay 15 pines en total, lo cual es justo adecuado para usar AVR para controlar un reloj.
Segmento de bolígrafoPantalla LCDPantallaLa estructura es muy similar al tubo digital LED, pero debido a que es cristal líquido, el mecanismo de funcionamiento es diferente y el método de conducción también es muy diferente:
(1) Los LED tienen trazos positivos y negativos, pero los LCD no.
(2) Los LED operan con voltaje CC, mientras que los cristales líquidos requieren voltaje CA para prevenir el efecto electrolítico.
(3) Los LED requieren corriente eléctrica para proporcionar energía para emitir luz, pero la corriente es muy débil cuando el LCD está en modo de visualización de trazos.
(4) Los LED no responden a corrientes minúsculas, pero los cristales líquidos son muy sensibles.
No es difícil ver que no es factible tratar las pantallas LCD con métodos de conducción LED. No me di cuenta de esto antes de comprar y probar esta pantalla, así que di muchas vueltas. A diferencia de la conducción LED, es necesario añadir un voltaje de CA a cada trazo. Generalmente, una onda cuadrada de 30-60 Hz es suficiente. Si la frecuencia es menor, la pantalla fluctuará. Si la frecuencia es mayor, el consumo de energía también aumentará porque el LCD es capacitivo para el circuito. Además, voltajes positivos y negativos pueden "encender" el LCD.
Afortunadamente, el puerto de E/S de AVR puede tener salida en tres estados, es decir, además de nivel alto/bajo, también puede presentar alta impedancia, lo que equivale a desconectar. Así que pensé en este método: el extremo común correspondiente al grupo de trazos que no necesitan mostrarse se deja flotante (el puerto de E/S selecciona tres estados), por lo que no se añadirá voltaje. Siguiendo esta idea, soldé mi circuito experimental, pero la pantalla era un desastre: los trazos estaban todos negros y no se podían ver claramente. Solo entonces consideré el problema del propio LCD: tiene alta impedancia y capacitores, ¡y no se puede dejar flotando en un lado! Este principio puede ser similar al de la terminal de entrada CMOS. Busqué algo de información sobre LCD y supe aproximadamente que las pantallas LCD no son tan simples. El método de conducción suele ser 1/N, es decir, el voltaje no es solo alto y bajo. Pero la E/S del microcontrolador no tiene tantos estados de salida para elegir.
El manejo con polarización de 1/3 requiere dividir el voltaje entre Vcc y GND en tres partes iguales. Un ejemplo de una forma de onda de manejo cíclico es el siguiente:
COM1: V+ --------
2/3 --------
1/3 --------
GND --------
COM2: V+ --------
2/3 --------
1/3 --------
GND --------
SEG1: V+ --------
2/3 --------
1/3 --------
GND --------
SEG2: V+ --------
2/3 --------
1/3 --------
GND --------
En el segmento (COM1,SEG1), el voltaje es +1, -1/3, -1, +1/3 ...En (COM1,SEG2) es +1/3, +1/3, -1/3, -1/3 ...En (COM2,SEG1) es +1/3, +1/3, -1/3, -1/3 ...En (COM2,SEG2) es -1/3, +1, +1/3, -1 ...
Así que la potencia promedio se calcula. En (COM1, SEG1) y (COM2, SEG2), es 2*1^2+2*(1/3)^2=20/9. En (COM1, SEG2) y (COM2, SEG1), es 4*(1/3)^2=4/9. La proporción de los dos es 5:1.
Si no es el accionamiento de tiempo compartido 1/2 en la figura anterior sino el accionamiento de tiempo compartido 1/4, la relación se convertirá en
2*1^2+6*(1/3)^2 vs 8*(1/3)^2 = 3:1
Si el Bias original de 1/2 se cambia a Bias de 1/3, la relación de mi pantalla LCD mejorará de 7:3 a 3:1. Dado que el PIC16F913 solo está diseñado con Bias de 1/2 y Bias de 1/3, no debería ser un problema usarlo.
Puerto de E/S único de AVR para lograr 4 salidas de voltaje - imposible, no puedo pensarlo. AVR tiene solo tres salidas de voltaje como máximo, ¿se puede dividir este voltaje en 4 partes iguales? Después de pensarlo un poco, pensé que esto funcionaría: simplemente dividirlo en 4 partes iguales.
COM1: V+ --------
3/4
1/2 -------- --------
1/4
GND --------
COM2: V+ --------
3/4
1/2 -------- --------
1/4
GND --------
SEG1: V+
3/4 -------- ---------
1/2
1/4 ----------------
GND
SEG2: V+
3/4 ----------------
1/2
1/4 -------- ---------
GND
Mi enfoque es tener dos tipos de salidas SEGx: 3/4*Vcc y 1/4*Vcc, y tres tipos de salidas COMy: Vcc, GND, 1/2*Vcc. Para cada puerto de E/S, no se requieren cuatro salidas de voltaje. Por supuesto, esto es diferente del accionamiento por 1/3 de polarización, pero logra el efecto del accionamiento por 1/3 de polarización, excepto que el valor absoluto máximo del voltaje aplicado al segmento LCD no es Vcc sino 3/4*Vcc, por lo que también es necesario aumentar el voltaje de alimentación. El cálculo se omite aquí.
Llamo a este método de conducción "conducción pseudo 1/3 Bias". El procesamiento de COMy es el mismo que antes. Para SEGx, cambie el voltaje de salida I/O a 3/4*Vcc para nivel alto y 1/4*Vcc para nivel bajo. Mi enfoque es:
/-------------- Pin de puerto de E/S
|
[ ]
[ ] 1Meg
[ ]
|
a LCD SEGx --------------+
|
[ ]
[ ] 1Meg
[ ]
|
|
1/2 Vcc
El 1/2 Vcc aquí se puede obtener dividiendo el voltaje de alimentación con resistencias. Pensé en conectar un capacitor de varios uF directamente a GND, y el experimento fue exitoso. Porque a medida que avanza el escaneo, el voltaje promedio de este lugar es la mitad del nivel alto y el nivel bajo de salida.
Actualmente he hecho un contador de segundos Mega48V, y puedo hacer un reloj modificándolo.


|
Este es mi programa: (Como apenas empecé a usar AVR, empecé con el más simple y usé ensamblador directamente) |
Además, la correspondencia entre los pines y los trazos de la pantalla LCD puede ser diferente a la del tubo digital LED. Mi pantalla es así:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
< 1f 1a 2f 2a 3f 3a 4f 4a > -- ---- COM1
< 1g 1b 2g 2b 2g 3b 4g 4b > -- ---- COM2
< 1e 1c 2e 2c : 3e 3c 4e 4c > -- ---- COM3
1d 1h 2d 2h 3d 3h 4d -- ---- COM4
Entre ellos, 12, 13, 14, 15 son 4 terminales comunes; 2, 3 controlan el primer dígito; 4, 5 el segundo; 7, 8 el tercero; 9, 10 el cuarto.
############################################################
Tuve un proyecto de control de calentador de agua doméstico antes, donde el hardware y el software se desarrollaron por separado. Para ahorrar costos, el ingeniero de hardware no usó un IC controlador LCD dedicado, lo que realmente me hizo sentir muy frustrado. Todo el proyecto tomó 20 días, y el controlador LCD solo tomó más de 10 días.
El puerto de E/S SEG y el puerto COM están conectados en serie con una resistencia, y luego conectados en paralelo con una resistencia a tierra.
De esta manera, para el LCD, el puerto I/O es la fuente de alimentación/tierra, y el nivel H/L de SEG/COM se cambia regularmente, lo cual es equivalente a una señal AC de 1/2VCC.
Cuando SEG/COM están ambos en niveles H o L, la LCD está apagada. Cuando los niveles SEG/COM no son iguales, se puede mostrar el código de segmento.
Una vez que entiendes este principio, no es difícil escribirlo en lenguaje C.
Lo anterior se muestra mediante escaneo directo con un microordenador de un solo chip. De hecho, existe otro método sencillo para controlarlo.
Si puede elegir un IC controlador para controlar, el software será más simple. El IC controlador se ha simplificado y es fácil de procesar en la tabla. Porque el principio es que el MUC está conectado al IC controlador, y el IC controlador está conectado a la pantalla. El MCU solo necesita 5 puertos de datos, VDD, VSS, DADTA, WR, CS, para ingresar al chip controlador, ahorrando muchos puertos IO. El IC controlador solo necesita conectarse a la línea COM y la línea SEG de la pantalla LCD una por una, y el trabajo está hecho. El siguiente paso es usar el MUC para controlar. El IC controlador existente generalmente elige la serie HT1621B.
Zhuojinwei no solo es un fabricante de pantallas LCD, sino que también puede brindarle soporte y sugerencias en tecnología de software. Si necesita producir y personalizar pantallas LCD.