I2C LCD de 16x2 no me sale nada [SOLUCIONADO]

Hola a todas y todos, he adquirido un i2c con el chip PCF8574t y he buscado y descargado infinidad de librerías y no consigo con ningún ejemplo que funcione…

las conexiones están en el arduino UNO
SCL - A5
SDA - A4

El codigo es el ejemplo que trae la librería que me he bajado http://playground.arduino.cc/Code/LCDi2c

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x20,16,2);  // set the LCD address to 0x20 for a 16 chars and 2 line display

void setup()
{
  lcd.init();                      // initialize the lcd 
 
  // Print a message to the LCD.
  lcd.backlight();
  lcd.print("Hello, world!");
}

void loop()
{
}

gracias…

Pd: es en osx un Mac… El ordenador…

mmm.

hola lo primero.

estas seguro que estan en A4 y A5?????

mirate este tutorial

ya que me parece que realmente estan al lado del pin aref (no ves las letras porque estan los pines del icsp de la interface del USB)

junto al aref esta SDA y al lado junto al boton de reset SCL En la mia estan ahi

la comunicación serie del lcd es 0x27

 #include <Wire.h> 
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2); 

void setup()
   {
   Wire.begin();
   lcd.begin();
   lcd.clear(); 
       // Print a message to the LCD.
   lcd.setCursor(0,0);
   lcd.backlight();
   lcd.print("Hello, world!");
   delay(2000);
   lcd.noBacklight();//apaga después de dos segundos
   }

void loop(){
}

gracias por contestar a los dos… me baje las librerías del ejemplo y nada… he cambiado a los conectores a como me dices… y el código he puedo el de la pagina es:

/*Prueba de LCD por protocolo I2C 
Mostraremos un mensaje y lo borraremos continuamente haciendo parpadear el backlight*/
// Importamos las librerias necesarias 
#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h>  // F Malpartida's NewLiquidCrystal library
 
/*-----( Declare Constants )-----*/
#define I2C_ADDR    0x27  // Direccion I2C para PCF8574A que es el que lleva nuestra placa diseñada por MJKDZ
//definimos las constantes para esta placa
 
#define  LED_OFF  0
#define  LED_ON  1
 
//mjkdz i2c LCD board
//                    addr, en,rw,rs,d4,d5,d6,d7,bl,blpol
LiquidCrystal_I2C lcd(I2C_ADDR, 4, 5, 6, 0, 1, 2, 3, 7, NEGATIVE);
 
void setup()  
{
  lcd.begin (16,2);  // inicializar lcd 
// Activamos la retroiluminacion
  lcd.setBacklight(LED_ON);
}
 
void loop()
{
 
// Reset the display  
 //
 lcd.clear();
  lcd.setBacklight(LED_OFF);//Backlight OFF 
  delay(500); 
 
  lcd.backlight(); //Backlight ON 
  lcd.setCursor(0,0);
  lcd.print("Hola Geekytheory"); 
  lcd.setCursor(0,1);
  lcd.print("LCD por I2C"); 
  delay(2000); 
}

se pone negra y me da pantallazos de unas décimas… y así todo el rato

Bueno he cambiado la dirección por la 0x27 como me dices…ya que en 0x20 no pasaba nada…

por cierto el código que me pasas no me compila da errores… debe de ser para otra librería…

de nuevo muchas gracias… pero esto me esta haciendo tirar la toalla…

he probado el sketch en una placa leonardo, no tengo UNO y un display i2c igual al tuyo

esto es correcto si tienes la uno v3 en las anteriores no estaban
SCL - A5
SDA - A4

te dejo la libreria que uso.

no cargues lcd.

LiquidCrystal_I2C.zip (15.7 KB)

a ver si te puedo ayudar un poco aunque no controlo mucho la libreria esa.

por lo pronto veo algunas cosas que me desconciertan.

en el Void setup
para activar el Backlight usas la siguiente instrucción

lcd.setBacklight(LED_ON);

eso enciende el backlight luego en el void loop usas

lcd.setBacklight(LED_OFF);

y con esto se apaga

pero luego para encenderlo de nuevo empleas otra instrucción y no pasas variable

lcd.backlight(); // que igual funciona pero no sé

yo de ti cambiaria esa linea y pondría esta

lcd.setBacklight(LED_ON);

en teoría creo que funcionaría así

ya nos dirás

gracias gracias y mil gracias… instale la librería esta y Funciona!!! Gracias… estaba muy quemado…

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup()
{
	// initialize the LCD
	lcd.begin();

	// Turn on the blacklight and print a message.
	lcd.backlight();
	lcd.print("Funciona! Gracias");
        lcd.setCursor(0,1);
        lcd.print("Derty-2");
}

void loop()
{
	// Do nothing here...
}

Derty-2:
he probado el sketch en una placa leonardo, no tengo UNO y un display i2c igual al tuyo

esto es correcto si tienes la uno v3 en las anteriores no estaban
SCL - A5
SDA - A4

te dejo la libreria que uso.

no cargues lcd.

Hola a todos, mi nombre es Hugo, resulta que a través de mercado libre me compre esta pantalla LCD de16*2 y este conector I2C de mala muerte que no he podido hacer funcionar, ya he leído muchos post’s en internet, este en especial http://arduino-info.wikispaces.com/LCD-Blue-I2C, que parece ser el mas completo, luego llegué hasta aquí, baje la librería que dicen, me fui a C:\Program Files (x86)\Arduino\libraries restarue la librería original (Que respaldé por seguridad), dentro de ella vacié los archivos de la que descargue y algunos se reemplazaron. El código puse exactamente el mismo de arriba que al otro compañero si le funciono y nada.

Adjunto imágenes de la pantalla, el adaptador, y las conexiones que hice, ojala puedan ayudarme, dado que tengo que ahorrar conexiones en mi arduino para continuar con mi proyecto.

En algunos post también algo de que en lugar de conectar al pin 5 y 4 del arduino conectaban a 2 pins junto al reset, también lo intente pero no funciono nada.

En otro post lei que no se debían de soldar todas las conexiones del adaptador a la pantalla, que d3, d2, d1 y d0 no se debían soldar, no se si ese sea mi error por lo que no me funcione.

Bueno de antemano gracias a quien me oriente y/o ayude. Saludos a todos.





junxcosio que libreria instalaste tengo el mismo problema

Yo intenté de todo (incluso lo que recomendaron aquí) y sólo consigo que se encienda o apague la pantalla. Lo único que se ve en ella es la línea superior de blanco y la inferior de negro (que tengo entendido que es la configuración por defecto para controlar el contraste)

hola muchas gracias, buscaba y buscaba y no me funcionaba mi LCD con esta libreria funciona perfecto, es necesario instalarla desde el menu programa, include Library, Add .ZIP Library. ya me sentia frustrado por no lograr hacerlos funcionar, funcionando en un arduino leoanardo.

buenas tardes gente tengo un problema el cual me compila el sketch todo bien pero me sale la primer letras de la frase o pala que quiero que me muestre el lcd lo tengo con el i2c y un arduino uno con cualquier sketch me lo hace.

buenas tardes queria hacerle una consulta el cual me esta surguiendo con cualquier sketch para el i2c+lcd me visualiza la primer letra del la frase o palabra que quiero visualizar en el lcd alguien si le paso me podria decir como lo soluciono gracias!!!!

Hola a todos, me pasa igual, bajé la biblioteca que mostraron en el foro, cargué el código y no me prende el fondo de la pantalla, y solo me muestra la primera letra de lo que trato de mostrar, lo que vi es que toca moverse espacio por espacio e imprimir el caracter que iría en ese espacio.
si alguien sabe como nos pueden ayudar de antemano muchas gracias

No vayas preguntando por cada post I2C sobre tu tema Carlos_Andres, se paciente y espera la respuesta en tu hilo.

EL problema de que sale solo el primer carácter es que en la libreria LiquidCrystal_I2C.cpp hay que cambiar el return 0, por return 1, mira el ejemplo LiquidCrystal_I2C/LiquidCrystal_I2C.cpp at master · johnrickman/LiquidCrystal_I2C · GitHub

A mi me funciono, espero que les sirva

donoskr:
EL problema de que sale solo el primer carácter es que en la libreria LiquidCrystal_I2C.cpp hay que cambiar el return 0, por return 1, mira el ejemplo LiquidCrystal_I2C/LiquidCrystal_I2C.cpp at master · johnrickman/LiquidCrystal_I2C · GitHub

A mi me funciono, espero que les sirva

Muchas gracias, Donoskr,

Llevaba unas cuantas horas intentando dar con la solución hasta que leí tu mensaje y lo solucioné. La solución que has indicado ha sido la correcta en mi caso.

¡Muchas gracias de nuevo!