No aparece mensaje en pantalla LCD 16x2. SOLUCIONADO.

Hola, compré una pantalla lcd de 16x2 y al subir el código al arduino éste no muestra ningún mensaje y solo enciende la linea superior como se muestra en la siguiente imagen. Mi código es correcto así como mis conexiones en el protoboard. Busqué soluciones por Internet pero ninguna me ha resultado. Utilizo arduino UNO.

#include <LiquidCrystal.h>

LiquidCrystal lcd (12,11,5,4,3,2);


void setup(){
 lcd.begin(16,2);
 
 
}

void loop(){
  lcd.setCursor(0,1);
  lcd.print("Hola");
  delay(1000);
  
 
  
}

Esto es lo que aparece en la pantalla:

Hola y bienvenido al foro. Te invito a que te leas las NORMAS para que aprendas a como postear correctamente: imagenes, código, errores, etc...

El código se postea como texto y no como imagen.

Por lo demás falta una foto del módulo en cuestión y bien posteada. El problema parece ser una mala conexión, revisa todas las conexiones. Aunque creas que lo has hecho bien, puede que haya un problema con la protoboard.

Veo que intentaste postear las imágenes pero usando un enlace que copiaste de tu propia PC y eso no funciona. Lee el enlace sugerido por victorjam.
Las he editado y luego de comprobar que son lo mismo, eliminé la segunda imagen.
Ahora edita y coloca el código como corresponde. Imagenes o capturas de código no tienen sentido en este foro.

Es posible sin embargo que tu LCD funcione y solo debas girar el potenciómetro de contraste. El de color azul.
Busca la posición extrema horaria o antihoraria y tal vez encuentres que los caracteres se visualicen.

Finalmente, los pasos en un LCD no son como los has escrito.
Primero fijas la posición del cursor y luego imprimes

lcd.setCursor(0,1);
lcd.print("Hola mundo");
delay(1000);  // <=== no abuses del delay

Hi,
Que paso con esta instrucion en el setup. " lcd.backlight();". Anadele la instrucion despues del lcd beginpara ver si te trabaja.

Hola, compré una pantalla lcd de 16x2 y al subir el código al arduino éste no muestra ningún mensaje y solo enciende la linea superior como se muestra en la siguiente imagen. Mi código es correcto así como mis conexiones en el protoboard. Busqué soluciones por Internet pero ninguna me ha resultado. Utilizo arduino UNO.

#include <LiquidCrystal.h>

LiquidCrystal lcd (12,11,5,4,3,2);


void setup(){
 lcd.begin(16,2);
 
 
}

void loop(){
  lcd.setCursor(0,1);
  lcd.print("Hola");
  delay(1000);
  
 
  
}

Ya hice lo que me dijeron y sigue igual. Mandé foto de la pantalla.
Gracias por ayudarme a postear correctamente,soy nuevo.

Sigues posteando enlaces a tu PC y te expliqué que los enlaces hay que subirlos como hiciste en el post inicial y luego con esta guia usar el enlace a la imagen generado. Pero se hace en dos pasos

Pasa por las Como visualizar las Imagenes Adjuntas en Arduino.cc para aprender a postear las imagenes.

En un protoboard es facil que tengas un mal contacto. Toma el tester o multimétro con todo apagado y verifica continuidad entre cada pin del Ardino que estas usando y el correspondiente pin del LCD.
Ademas de GND.
Ademas de verificar que el potenciometro de contraste este bien cableado.
Y que no hayas olvidado de poner a GND el pin R/W

Verifica porque todo pasa por las buenas conexiones.

Y que no hayas olvidado de poner a GND el pin R/W

Eso mismo es lo que ha olvidado.

No cuento con un multimetro para verificarlo :confused: pero ya cambie los cables y use otra pantalla y me sigue pasando lo mismo, creen que el problema sea el arduino o las entradas de la pc?

¿Sigues haciendo el mismo montaje?

pinrw.jpg

Yo no veo que el pin RW del display vaya a GND.

Ese error de pantalla se da cuando no se inicia bien el display, generalmente indicando que las señales RS/RW/E/D4/D5/D6/D7 fallan.

pinrw.jpg

Ya puse ese pin a tierra y me sigue mostrando lo mismo, incluso he visto muchos vídeos de tutoriales en youtube de lo que intento hacer con la pantalla LCD y sigue mostrándole los mismos cuadros :'c

Supongamos que el lcd no está dañado de haberlo conectado mal antes. Vuélvelo a montar y haz una foto para que lo veamos, a ser posible, una sin enchufar y otra enchufado (para que los leds de arduino no molesten para ver que hay).

Aquí las fotos:



Veo que te falta la resistencia de 200-300 ohmios que tiene que ir en el led de la pantalla (patillas 15,16)...

Las puse en las dos y nada :confused: Creen que puedan ser mi pc o el arduino?

Si el PC te deja cargar programas no creo, el arduino puede que falle.

Se me ocurre un método para probar los pines. Busca unos leds, unas resistencias de 300 ohmios y las montas en los pines que usas del arduino para el display. Obviamente el display fuera de momento.

El circuito será este:

Después sube el código siguiente:

int pins[6] = { 12, 11, 5, 4, 3, 2 };
int i;

void setup() {
 for (i=0; i<6; i++) {
   pinMode(pins[i], OUTPUT);
   digitalWrite(pins[i], LOW);
 }
}

void loop() {
  for (i=0; i<6; i++) {
    digitalWrite(pins[i], HIGH);
    delay(1000);
    digitalWrite(pins[i], LOW);
    delay(1000);
  }
}
  1. Comprueba que el código se ha subido.
  2. Las luces se tienen que ir encendiendo/apagando en secuencia, pin 12, 11, 5, 4, 3, 2, y volver a empezar.

Puede que no se suba el código. Hay algo mal.
Puede que alguna luz no se encienda, revisa esa conexión, si todo esta correcto... algo esta mal.

Si hace lo que tiene que hacer nos cuentas.

Ya lo hice y las luces encienden y apagan como tienen que hacerlo, sí funcionó. Significa que el arduino y la pc no falla. Pero que podría ser?

Descartado el PC y el Arduino, solo queda el display.

Vuelvelo a montar, intenta que todo quede en el otro lado de la placa de donde lo has estado montando. Esto es para evitar que si hay algún "agujero" de la protoboard mal te vuelva a pasar.

Revisalo bien, foto y nos cuentas.

Lo mismo :,CCC lo hice por los dos lados y igual.