Problema con diplay lcd 20x4

Salve, di recente sto avendo un problema nell'uso del diplay LCD 20x4. In precedenza lo utilizzavo senza alcun problema, adesso dopo la compilazione risulta la seguente dicitura:

LiquidCrystal_I2C (uint8_t lcd_Addr, uint8_t backlighPin, t_backlighPol pol);

^~~~~~~~~~~~~~~~~

C:\Users\Franck\Desktop\lcd\lcd.ino: In function 'void setup()':

lcd:9:11: error: no matching function for call to 'LiquidCrystal_I2C::begin()'

lcd.begin();

^

In file included from C:\Users\Franck\Desktop\lcd\lcd.ino:1:0:

C:\Users\Franck\Documents\Arduino\libraries\LiquidCrystal_I2C/LiquidCrystal_I2C.h:110:17: note: candidate: virtual void LiquidCrystal_I2C::begin(uint8_t, uint8_t, uint8_t)

virtual void begin(uint8_t cols, uint8_t rows, uint8_t charsize = LCD_5x8DOTS);

^~~~~

C:\Users\Franck\Documents\Arduino\libraries\LiquidCrystal_I2C/LiquidCrystal_I2C.h:110:17: note: candidate expects 3 arguments, 0 provided

lcd:12:1: error: expected ';' before '}' token

}

^

Più di una libreria trovata per "LiquidCrystal_I2C.h"
Usata: C:\Users\Franck\Documents\Arduino\libraries\LiquidCrystal_I2C
Non usata: D:\Programmi\Arduino1.8.10\Arduino\libraries\LiquidCrystal_I2C
Non usata: D:\Programmi\Arduino1.8.10\Arduino\libraries\Arduino-LiquidCrystal-I2C-library-master
exit status 1
no matching function for call to 'LiquidCrystal_I2C::begin()'

mentre il codice di prova è:

#include <LiquidCrystal_I2C.h>


 LiquidCrystal_I2C lcd (0x27, 20, 4);


void setup() {
  // put your setup code here, to run once:
lcd.begin();
lcd.setCursor(0,0);
lcd.print ("prova")
}

void loop() {
  // put your main code here, to run repeatedly:

}

virtual void begin(uint8_t cols, uint8_t rows, uint8_t charsize = LCD_5x8DOTS);

Io vedo che la funzione begin ha bisogno di almeno 2 parametri: cols et rows.

C'è anche un altro errorino:

lcd:12:1: error: expected ';' before '}' token

Francois88:
... Più di una libreria trovata per "LiquidCrystal_I2C.h" ...

Purtroppo tu hai installato diverse versioni della libreria LiquidCrystal_I2C (ne esistono svariate versioni, incompatibili una con l'altra) e ora il compilatore sta andando ad utilizzare una versione che ha una sintassi differente da quella che usavi tu in precedenza. Ripulisci il sistema e lascia solo quella che usavi in precedenza.

Guglielmo

Altrimenti togli tutte le librerie e metti la ottima libreria di Testato...

vi ringrazio adesso provo!!!!

Niente da fare. Ho tolto tutte le cartelle della libreria degli LCD dalla cartella librerie, lasciando soltanto la LiquidCrystal_I2C.

Di recente ho aggiornato la versione di arduino passando dalla 1.8.10 alla 1.8.12. Centra qualcosa?

Francois88:
... lasciando soltanto la LiquidCrystal_I2C.

... della versione sbagliata ed incompatibile con il tuo programma! Quindi ... modifica il programma per adattarlo hai metodi della libreria che hai in linea.

Guglielmo

Grazie Finalmente ho risolto,

Grazie forum!!!