problema software lc

salve , ho un problema con lcd arduino uno 16x2 ho acquistato, IIC / I2C Modulo Interfaccia Seriale Per Display lcd 1602 arduino , per togliere una marea di fili , ho attaccato i fili come da manuale ho inserito il software ma in arduino non compare nessuna scritta solo la prima riga con 16 quadratini, c’è qualcuno che ha avuto il solito problema. grazie
allego il software

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

LiquidCrystal_I2C lcd(0x27,16,2); // set the LCD address to 0x27 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(“Test Display I2C”);
lcd.setCursor(0,1);
lcd.print(“Versione 1.0”);

}

void loop()
{
}

Che sigla ha l'integrato sul modulo I2C?

... oppure ... un link al modulo che hai acquistato ?

Guglielmo

si scusate è il linke del modulo che ho acquistato

è possibile che machi questa libreria < LCD.h > , non la trovo su internet

wirefree:
si scusate è il linke del modulo che ho acquistato

Quale link ? Non hai messo nessun link !

Comunque, con la libreria I2C non è che colleghi i 4 fili e tutto è okay.
I2C vuole sapere l'indirizzo I2C del dispositivo, inoltre NON tutti i modulini I2C sono configurati allo stesso modo.
Se il venditore non ti dice qual'è l'indirizzo I2C puoi scoprirlo con lo sketch I2CScanner

ok grazie ora provo a contattare il venditore per farmi dare l'indirizzo 12C

questo è il like dove lo acquistato :

http://www.ebay.it/itm/182061123898?_trksid=p2060353.m1438.l2649&ssPageName=STRK%3AMEBIDX%3AIT

grazie del vostro aiuto

con il programma i2c scanner mi da questo risultato:

scanning...
No I2c devices found

hai usato i pin giusti? che arduino usi?

Non è specificato se il modulo comprende le resistenze di pull-up che, ti ricordo, sono OBBLIGATORIE sul bus I2C. Le hai messe ?

QUI un tutorial su detto bus.

Guglielmo

Da quanto appare nella foto, l'IC è il PCF8574 che di default ha indirizzo 0x27.

Se lo scanner I2C non trova l'indirizzo, vuol dire che i collegamenti non sono giusti:

SDA A4
SCL A5
VCC +5V
GND GND

Meglio ancora se usi gli appositi pin SDA/SCL se hai una scheda R3.

cerco di rispondere alle vostre domande , inazitutto grazie del vostro supporto,

uso arduino uno compatibile

i collegamenti su arduino erano invertiti, “scusate la mia distrazione”, infatti ora con lo sketch I2CScanner da come risultato 0x27

le resistenze sul bus sda e scl non lo messe

il risultato è lo stesso , si vede la prima riga con 16 rettangoli neri e si accende e si spende la retroilluminazione
lo sketch che utilizzo è questo:

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// Imposta l’indirizzo del display a 0x27 con 16 caratteri per 2 linee
LiquidCrystal_I2C lcd(0x27,16,2);
void setup()
{
lcd.init();// inizializza il display
lcd.backlight();//accende la retroilluminazione
}
void loop()
{
// Scrittura dei testi sul display
lcd.setCursor(0, 0);
lcd.print(“1234567812345678”);
delay (1000);
lcd.setCursor(0, 1);
lcd.print(“ABCDEFGHILMNOPQR”);
delay (1000);
lcd.setCursor(0, 0);
lcd.print(“8765432187654321”);
delay (1000);
lcd.setCursor(0, 1);
lcd.print(“8888888888888888”);
delay (1000);
}

aggiornamento : ho provato a mettere i due resistori sul bus sda scl , viene consigliato resistori da 1800 ohm,

io avevo a disposizione 2000 ohm , ma il disconso non cambia

  1. quale Liquid_Crystal_I2C hai scaricato ? Io uso quella di malpartida.
    https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/Home

  2. quando passi l’indirizzo 0x27, e la dimensione, poi ci sono altri parametri da passare se il modulino collega i pin del chip PCF8574 in maniera non “standard” o come la libreria se lo aspetta.
    Io ho 3 moduli simili al tuo e due usano pin collegati in maniera diversa.

Uso libreria diversa, quindi scrivo:
nella setup: lcd.begin(16,2); (la dimensione la dichiari nella begin)

poi per uno di quei moduli scrivo:
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
mentre per l’altro
LiquidCrystal_I2C lcd(0x27, 4, 5, 6, 0, 1, 2, 3, 7, NEGATIVE); // mjkdz module

Infatti, prova TUTTE le varianti che trovi qua: https://arduino-info.wikispaces.com/LCD-Blue-I2C

ciao nid69ita , ho scaricato la libreria dal linke consigliato da te :NewliquidCrystal_1.3.4.zip

con questo sketch :

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
#define CONTRAST_PIN 9
#define BACKLIGHT_PIN 7
#define CONTRAST 125

void setup()
{
// Switch on the backlight and LCD contrast levels
pinMode(CONTRAST_PIN, OUTPUT);
pinMode(BACKLIGHT_PIN, OUTPUT);

digitalWrite(BACKLIGHT_PIN, HIGH);
analogWrite (CONTRAST_PIN, CONTRAST);

lcd.begin(16,2); // initialize the lcd

lcd.home (); // go home
lcd.print(“Hello, ARDUINO “);
lcd.setCursor ( 0, 1 ); // go to the next line
lcd.print (” WORLD!”);
}

void loop()
{

}

la retroilluminazione ora è perfetta , ma tutto come prima

Ho completato ora mio post precedente.
Prova: LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
a me funziona ed è quello che suggeriscono al link che ti ha dato @Sukko

vi faccio sapere, vediamo se riesco grazie ancora

scusate non sono molto esperto mi sono perso potete corrreger voi il software inserendo le istruzioni nel modo corretto mi da errrore e non me vengo fuori :

#include <LiquidCrystal.h>

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

#define CONTRAST_PIN 9
#define BACKLIGHT_PIN 7
#define CONTRAST 125

void setup()
{
// Switch on the backlight and LCD contrast levels
pinMode(CONTRAST_PIN, OUTPUT);
pinMode(BACKLIGHT_PIN, OUTPUT);

digitalWrite(BACKLIGHT_PIN, HIGH);
analogWrite (CONTRAST_PIN, CONTRAST);

lcd.begin(16,2); // initialize the lcd

lcd.home (); // go home
lcd.print(“Hello, ARDUINO “);
lcd.setCursor ( 0, 1 ); // go to the next line
lcd.print (” WORLD!”);
}

void loop()
{

}

di nuovo grazie della vostra pazienza