/*
PROJETO: leitura do LDR (aula engenharia FIAP 2023)
DESCRICÃO: leitura analógica do LDR, e seus resultados
em tensão, resistência e luminosidade
ANDREI MORENO XAVIER
RM: 551318
// tudo que é criado fora das funções chama-se global
// e tudo que é global pode ser utilizado em qualquer ponto do código
// já o que é criado dentro de uma função é chamado de LOCAL
// e tudo que pe local só pode ser utilizado naquele local em que foi criado
/***************************************************************************
VARIAVEIS GLOBAIS
***************************************************************************/
int valorLDR = 0;
float tensao = 0;
float resistencia = 0;
float lux = 0;
const float gamma = 0.7;
const float rl10 = 50;
int LDR = A0;
/***************************************************************************
CONFIGURAÇÕES INICIAIS
***************************************************************************/
void setup() {
pinMode(LDR, INPUT);
Serial.begin(9600);
}
/***************************************************************************
FUNÇÃO PRINCIPAL
***************************************************************************/
void loop () {
valorLDR = analogRead(LDR); //leitura analógica do LDR
Serial.print("Valor do LDR: ");
Serial.println(valorLDR);
tensao = valorLDR / 1024. * 5;
Serial.print("Tensão: ");
Serial.println(tensao);
resistencia = 2000 * tensao / (1 - tensao / 5);
Serial.print("Resistência: ");
Serial.println(resistencia);
lux = pow(rl10 * 1e3 * pow(10, gamma) / resistencia, (1 / gamma));
Serial.print("Lux: ");
Serial.println(lux);
delay(500);
}