LiquidCrystal_I2C con ordenador antiguo

Tengo un programa con un ordenador Windows 10.
El programa usa una pantalla LiquidCrystal_I2C lcd(0x27,20,4).
Todo anda bien. sin problemas.
¡¡¡Pero!!! cuando uso el mismo programa en un Sony Vaio con Windows 7, tan solo escribe
el primer carácter de la serie, tanto da que sea de texto ó numérico. Uso un Mega 2560 R3.
Utilizo la misma versión de Arduino 1.8.13 en los dos ordenadores aunque he probado
versiones más modernas pero el Vaio siempre falla.
No quiero usar Arduino 2.x.x ya que seria demasiado fuerte para el Vaio.
¿Hay alguna sugerencia que me puede ayudar? Lo agradecería de veras.
Muchas gracias.

Con todo respeto, no entendí nada.

¿Tenés un programa que corre en Windows o un programa que corre en la Mega?

La pantalla LCD está conectada a la Mega (imagino) ¿Qué tienen que ver Win10, Win7 y la Vaio?

¿La PC envía datos a la Mega que deberían reflejarse en la LCD?
¿Mediante cuál programa los estaría enviando?

¿Por qué usas la IDE 1.8.13 y no la 1.8.19?

¿Por qué no subes el código y nos facilitas la vida?

MaximoEsfuerzo, estoy de acuerdo y empiezo de nuevo.
Te adjunto un pequeño sketch el cual sí lo cargo en el Mega a través de Windows 7 no
escribe bien en LC, tan solo escribe el primer carácter de una serie.
Con el esquema simple de abajo imprime tan solo la "a".
Ya he probado con el 1.8.19 y obtengo el mismo resultado.
Durante mucho tiempo he usado Windows 7 sin problemas.
Llevo muchas horas y días con ello y no hay manera de encontrar una solución.
Que hay aquí que nos hace la puñeta?.
Muchas gracias por tu generosidad.``
Use code tags to format code for the forum

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 20, 4);

void setup() {
Wire.begin();
lcd.init();
lcd.backlight();
lcd.display();

lcd.setCursor(10, 1);
lcd.print("abc");
}

void loop() {}

El código no tiene ningún problema y sinceramente no encuentro ninguna razón lógica por la cual al conectarla a la Vaio no funcione.
Ni siquiera compilando en ésta debería presentar problemas.

Haz una prueba, compila tanto en Win7 como en Win10 y fijate si los archivos .hex generados son diferentes.
Primero compara el tamaño, es lo más simple, si pesan lo mismo puedes usar el comando "fc" o la aplicación "Meld", que es gratuita, para ver si el contenido es diferente.
Tambien puedes comparar los hash (con un simple md5 ya va a "saltar" si son diferentes).

Hi,
Si haces un google con ese problema vaz a encotrar que el problema se debe a la libreria que usas para el lcd. Posiblemente la libreria del vaio tiene problems. Adjunto un link del forum de arduino que explica como resolverlo. Remueve la libraria en la computadora Vaio y reinstalara para ver si resolve tu problema.

link:https://forum.arduino.cc/t/i2c-lcd-only-prints-first-character-of-the-string/352264/4

Continuing the discussion from LiquidCrystal_I2C con ordenador antiguo:
He leído el programa LiquidCrystal_I2C.cpp y esta como <return 1;>. Es OK.
Sin embargo lo he borrado de la librería LiqidCrystalI2C con mucho cuidado y luego he vuelto a cargarlo de nuevo y .....
!!MILAGRO FUNCIONA¡¡ :+1: :+1: :+1:

Ha sido estupendo yo ya me veía comprando otro ordenador, me habéis ahorrado unos
buenos Euros.

Muchas gracias: MaximoEsfuerzo y tauro0221.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.