Hitachi HD44780 LCD funciona exactamente el 50% del tiempo

3

Mi pantalla LCD de Hitachi funciona el 50% del tiempo. ¿Es un problema el problema del botón de reinicio en el AVR? ¿Por qué está pasando esto? Aquí hay un video de lo que está sucediendo.

Esto no ocurre si escribo en la primera línea de la pantalla LCD solo . Sólo sucede si escribo en la segunda línea de la pantalla LCD. Parece un problema de dirección de memoria, pero reinicio la memoria con una visualización clara en cada inicio.

También he intentado incrementar el tiempo de retardo (5 segundos antes del inicio). No funcionó.

Aquí mi INIT ():

    _delay_ms(15); //wait for VDD to rise

send_nibble(0,0b0010);   //Set to 4 bit operation (note: 1 nibble operation)
_delay_ms(5);

send_nibble(0,0b0010);   //Function set, 4 bit
send_nibble(0,0b1000);
_delay_ms(15);

send_nibble(0,0b0000);   //Clear Display
send_nibble(0,0b0001);
_delay_ms(15);

send_nibble(0,0b0000);  //Entry Mode, Increment cursor position, No display shift
send_nibble(0,0b0110);
_delay_ms(5);

send_nibble(0,0b0000);   //Display ON, Cursor On, Cursor Blinking
send_nibble(0,0b1111);
    
pregunta Napster

1 respuesta

3

Parece que está reiniciando su microcontrolador, pero la pantalla no se reinicia (cuando presiona el botón, la pantalla no se apaga / reinicia). Tenga en cuenta que sin reiniciar, está comenzando en modo de 4 bits, para enviar comandos de 8 bits que necesita volver a ese modo.

En este caso, lo primero que debe hacer su inicio es restablecer la pantalla a un estado conocido. Alternativamente, puede conectar la pantalla para reiniciar con la misma señal que el reinicio del microcontrolador.

Para una correcta inicialización, consulte la hoja de datos . Observe que el diagrama de inicialización en la hoja de datos comienza con "Encendido". No estás empezando allí, te estás saltando los primeros pasos. Según la hoja de datos,

  

Si las condiciones de la fuente de alimentación para operar correctamente el interno   el circuito de reinicio no se cumple, la inicialización por instrucciones se convierte en   necesario.

Esta es la inicialización de 4 bits por diagrama de instrucciones.

    
respondido por el Samuel

Lea otras preguntas en las etiquetas