La pantalla LCD basada en HD44780 muestra mitad negro, mitad blanco

2

He estado intentando que la pantalla LCD HD44780 funcione varias veces. La primera vez fue por puerto paralelo desde una computadora, luego varias veces utilizando diferentes UCs de PIC. Solo puedo obtener la pantalla para mostrar la mitad de los puntos (el lado derecho de la pantalla) como negro, y el lado izquierdo como blanco / blanco. Leí en Internet que significa que la pantalla no se está inicializando correctamente.

La pantalla es Tianma TM161A / B

    setData(0b00110000); // INIT
    strobeE();

    DelayMs(5);

    setData(0b00110000); // INIT
    strobeE();

    DelayMs(5);

    setData(0b00001111); // ON/OFF
    strobeE();

    DelayMs(5);

    setData(0b00000001); // CLEAR
    strobeE();

    DelayMs(5);

    setData(0b00000110); // ENTRY MODE
    strobeE();

void strobeE() {
    mPORTDSetBits(E);
    DelayMs(1);
    mPORTDClearBits(E);
}

He utilizado un analizador lógico, una sonda lógica y un multímetro para verificar si las conexiones entre el PIC y la pantalla LCD son correctas. Creo que lo son.

Una imagen (mala) de mis tiempos en un analizador lógico;

Enlace a la hoja de datos

¿Qué estoy haciendo mal?

    
pregunta varesa

2 respuestas

2

El problema con la pantalla que no se inicializa fue debido a un cable suelto. Era RS o RW, que se dejó flotando.

Mi analizador lógico mostró que estaba en un estado bajo, pero parece que el controlador del LCD pensó lo contrario. (Diferente tipo de entrada)

Un consejo:
Revise sus cableados: ¡no conectado! = Entrada con bajo nivel de carga

Una sonda lógica, que emite un sonido de tono alto o bajo en función de la señal, me ayudó a encontrar el problema. No dio ningún tipo de sonido en ese pin.

    
respondido por el varesa
1

Verifique su palabra "conjunto de funciones" (0b00110000). los bits 2 y 3 (N y F en la hoja de datos) configuran la forma de visualización. Si están configurados incorrectamente, parte de la pantalla no funcionará, intente con las 4 combinaciones.

    
respondido por el theamk

Lea otras preguntas en las etiquetas