Como desligar LCD 16X2 por um push button

Eai galera,tudo bem?

Queria saber se vocês podem me ajudar!

Qual método da biblioteca que posso usar ,ou como faz para desligar um LCD 16X2 por um botão
Já tentei de várias maneiras,vi um código na internet de um cara que conectava a penúltima saída do lcd no arduino e controla como backlight mas eu não consegui apagar a luz de fundo.
Espero a ajuda de vocês. :grin:

Qual é o shield que está a usar? Qual é a biblioteca?

tb tenho um caso e queria usar: LiquidCrystal_I2C

Tens de definir o que pretendes...

Queres que deixe de funcionar o backlight? ou queres que nao apareca nada no lcd? Ou ambos?

O backlight e controlado por uma resistencia... se a mesma estiver ligada a um pino do arduino e simples de conseguir, se nao estiver, tens de ver o esquema.

Quando ao LCD propriamente dito e estando a usar a liquidcrystal, e usar o comando descrito na pagina em baixo:

no meu caso actualmente tenho uma celula fotoelectrica como esta num espaço escuro quando n há luz desliga o backlight quando acendo a luz automaticamente acende o backlight.

Estou a pensar usar com um pushbutton

Este caso foi com a celula fotoelectrica

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2);


double Luz = 0;

void setup() {

lcd.init();
lcd.backlight();

  Serial.begin(9600); 

  pinMode (0, INPUT);
}

void loop() {
   Luz = (analogRead(0));
if(Luz < 700){lcd.setBacklight(0);} else {lcd.setBacklight(1);}

Fiz agora isto sem testar mas penso que com o botão sera algo deste genero

int BUTTON = 7;
int val = 0;
int old_val = 0;
int state = 0;


void setup()
{
 lcd.init();
 lcd.backlight();

  pinMode(BUTTON,INPUT);
}

void loop()
{ 
  val = digitalRead(BUTTON);
 if((val == HIGH) && (old_val == LOW))
   state = 1 -state;
   delay (10);
 
 old_val = val;
 if (state == 1)  
 {
   lcd.setBacklight(0);;
 }else{
   lcd.setBacklight(1);;
  }
}