Ajuda urgente!!!!!!!!! erro nos dados do lcd

Olá, sou novo no fórum e tenho um problema muito serio com meu projeto.
A ideia é fazer um luxímetro (medidor de luz) porém os valores que aparecem no "lcd" não são os mesmos que os do monitor serial. Os valores que aparecem no lcd estão errados.
Por favor, me ajudem o mais rápido possível, desde já agradeço.

Este é o código:

#include <LiquidCrystal.h>

LiquidCrystal lcd(12,11,5,4,3,2);
double Light (int RawADC0){
double Vout=RawADC0*0.0048828125;
int lux=(2500/Vout-500)/10;
return lux;
}
void setup() {
Serial.begin(9600);
lcd.begin(16,2);
lcd.setCursor(0,0);
lcd.print("Luximetro");
}
void loop() {

lcd.setCursor(11,1);
lcd.print((int(Light(analogRead(0)))));
Serial.println((int(Light(analogRead(0)))));
lcd.setCursor(14,1);
lcd.print("lx");
delay(500);

}

O que exatamente está sendo mostrado em seu LCD?

Tu efectivamente não estás a dar os mesmos dados para o lcd e para a porta série. Como tal é de esperar ver essa diferença.

Outra coisa a ter em conta é que as tuas variáveis não fazem sentido na função Light...
Ainda outra coisa a pensar seria conjugar os dois cálculos por forma a não teres de multiplicar um valor tão pequeno... de certeza que chegaste a 0.0048828 através duma fracção e seria melhor usá-la aqui.
Experimenta isto:

#include <LiquidCrystal.h>

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

int Light (int RawADC0){
double Vout=(int) RawADC0*0.0048828125;
int lux=(int) (2500/Vout-500)/10;
return lux;
}
void setup() {
 Serial.begin(9600);
  lcd.begin(16,2);
  lcd.setCursor(0,0);
  lcd.print("Luximetro");
  }
void loop() {
  int reading = Light(analogRead(0));

  lcd.setCursor(11,1);
  lcd.print(reading);
  Serial.println(reading);
  lcd.setCursor(14,1);
  lcd.print("lx");
delay(500);
 
  }