buondi scusate il ritardo... (cit...) 
ho cambiato entrambi gli hdd di questa macchina e ci ho messo un po 
ho provato a compilare l' esempio da te coretto ma dà
Arduino:1.8.9 (Windows Store 1.8.21.0) (Windows 10), Scheda:"Arduino/Genuino Uno"
In file included from C:\Users\crist\Documents\Arduino\menu\menu.ino:4:0:
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:59:102: note: #pragma message: LiquidMenu: Configured for Parallel. Edit 'LiquidMenu_config.h' file to change it.
#pragma message ("LiquidMenu: Configured for Parallel. Edit 'LiquidMenu_config.h' file to change it.")
^
menu:8:20: error: no matching function for call to 'LiquidMenu::LiquidMenu(LiquidCrystal_I2C&)'
LiquidMenu menu(lcd);
^
In file included from C:\Users\crist\Documents\Arduino\menu\menu.ino:4:0:
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:784:3: note: candidate: LiquidMenu::LiquidMenu(LiquidCrystal&, LiquidScreen&, LiquidScreen&, LiquidScreen&, LiquidScreen&, uint8_t)
LiquidMenu(DisplayClass &liquidCrystal, LiquidScreen &liquidScreen1,
^
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:784:3: note: candidate expects 6 arguments, 1 provided
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:770:3: note: candidate: LiquidMenu::LiquidMenu(LiquidCrystal&, LiquidScreen&, LiquidScreen&, LiquidScreen&, uint8_t)
LiquidMenu(DisplayClass &liquidCrystal, LiquidScreen &liquidScreen1,
^
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:770:3: note: candidate expects 5 arguments, 1 provided
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:758:3: note: candidate: LiquidMenu::LiquidMenu(LiquidCrystal&, LiquidScreen&, LiquidScreen&, uint8_t)
LiquidMenu(DisplayClass &liquidCrystal, LiquidScreen &liquidScreen1,
^
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:758:3: note: candidate expects 4 arguments, 1 provided
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:747:3: note: candidate: LiquidMenu::LiquidMenu(LiquidCrystal&, LiquidScreen&, uint8_t)
LiquidMenu(DisplayClass &liquidCrystal, LiquidScreen &liquidScreen,
^
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:747:3: note: candidate expects 3 arguments, 1 provided
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:738:3: note: candidate: LiquidMenu::LiquidMenu(LiquidCrystal&, uint8_t)
LiquidMenu(DisplayClass &liquidCrystal, uint8_t startingScreen = 1);
^
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:738:3: note: no known conversion for argument 1 from 'LiquidCrystal_I2C' to 'LiquidCrystal&'
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:722:7: note: candidate: constexpr LiquidMenu::LiquidMenu(const LiquidMenu&)
class LiquidMenu {
^
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:722:7: note: no known conversion for argument 1 from 'LiquidCrystal_I2C' to 'const LiquidMenu&'
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:722:7: note: candidate: constexpr LiquidMenu::LiquidMenu(LiquidMenu&&)
C:\Users\crist\Documents\Arduino\libraries\LiquidMenu\src/LiquidMenu.h:722:7: note: no known conversion for argument 1 from 'LiquidCrystal_I2C' to 'LiquidMenu&&'
C:\Users\crist\Documents\Arduino\menu\menu.ino: In function 'void setup()':
menu:107:13: error: no matching function for call to 'LiquidCrystal_I2C::begin()'
lcd.begin();
^
In file included from C:\Users\crist\Documents\Arduino\menu\menu.ino:5:0:
C:\Users\crist\Documents\Arduino\libraries\LiquidCrystal_I2C/LiquidCrystal_I2C.h:58:8: note: candidate: void LiquidCrystal_I2C::begin(uint8_t, uint8_t, uint8_t)
void begin(uint8_t cols, uint8_t rows, uint8_t charsize = LCD_5x8DOTS );
^
C:\Users\crist\Documents\Arduino\libraries\LiquidCrystal_I2C/LiquidCrystal_I2C.h:58:8: note: candidate expects 3 arguments, 0 provided
exit status 1
no matching function for call to 'LiquidMenu::LiquidMenu(LiquidCrystal_I2C&)'
Questo report potrebbe essere più ricco di informazioni abilitando l'opzione
"Mostra un output dettagliato durante la compilazione"
in "File -> Impostazioni"
inoltre ho corretto le 4 linee di codice che scrivevano sempre in "1, 0"
[code]
#include <Wire.h>
#include <LiquidMenu.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 20, 4);
LiquidMenu menu(lcd);
const byte led = 13;
union ambienta {
struct {
float Temp ;
float Umid ;
float _Ph ;
float _Ec ;
float _Th2o;
} Amb ;
byte arr[20];
} Ambientale;
const byte startingScreen = 1;
LiquidLine param1(1, 0, "Temp : ", Ambientale.Amb.Temp );
LiquidLine param2(1, 1, "Umid : ", Ambientale.Amb.Umid);
LiquidLine param3(1, 2, "PH : ", Ambientale.Amb._Ph);
LiquidLine param4(1, 3, "Temp : ", Ambientale.Amb._Ec);
LiquidScreen scherm1(param1, param2, param3, param4);
byte leggitast() {
int val = (analogRead(A0));
if (val < 100) {
return 0;
}
if ( (val > 810) && (val < 850) ) //841
{
return 1 ;
}
if ( (val > 315) && (val < 360 )) //333-4
{ return 2 ;
}
if ( (val > 580) && (val < 625) ) ///617
{ return 3 ;
}
if ( val > 710 && val < 760 ) //745
{ return 4 ;
}
if ( (val > 180) && (val < 190) ) //184-185
{ return 5 ;
}
}
void WaitBtnRelease()
{
while ( analogRead(A0) > 100) { }
}
// Checks all the buttons.
void buttonsCheck() {
if (leggitast() == 3) {
menu.next_screen();
WaitBtnRelease();
}
if (leggitast() == 4) {
menu.previous_screen();
}
if (leggitast() == 1) {
// Calls the function identified with
// increase or 1 for the focused line.
menu.call_function(2);
}
if (leggitast() == 2) {
menu.call_function(1);
}
if (leggitast() == 5) {
// Switches focus to the next line.
// venu.switch_focus();
}
}
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
pinMode(led, OUTPUT);
lcd.begin();
//lcd.init();
lcd.backlight();
menu.init();
// men1.attach_function(1, blink_switch);
// men1.attach_function(2, blink_switch);
menu.add_screen(scherm1);
menu.update();
}
void loop() {
// put your main code here, to run repeatedly:
buttonsCheck();
}
/*
float Ambientale.Amb._Tg () {
}
*/
[/code]