#include <Wire.h>
#include <U8g2lib.h>
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
U8G2_SH1106_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0); // Utiliza el constructor correcto para tu pantalla
const int fotoresistorPin = 34; // Pin analógico al que está conectada la fotoresistencia
const int LDRPin = A0;
void setup() {
Serial.begin(115200);
// Inicializar el sensor OLED
u8g2.begin();
// Inicializar el sensor de luz
pinMode(fotoresistorPin, INPUT);
pinMode(LDRPin, INPUT);
}
void loop() {
int lightIntensity = (LDRPin);
// Escala la lectura a un rango de 0 a 4095 para 3.3V
int scaledIntensity = map(lightIntensity, 0, 1023, 0, 4095);
// Leer el valor del fotoresistor
int valorFotoresistor = analogRead(fotoresistorPin);
// Mostrar el valor de la fotoresistencia en el monitor serial
Serial.print("Valor del fotoresistor: ");
Serial.println(valorFotoresistor);
// Mostrar el valor de la fotoresistencia en la pantalla OLED
u8g2.firstPage();
do {
u8g2.setFont(u8g2_font_ncenB24_tr);
u8g2.setCursor(10, 20);
u8g2.print(" ");
u8g2.print(valorFotoresistor);
} while (u8g2.nextPage());
delay(1000); // Pausa de 1 segundo entre lecturas
// Simular una variación de luz cambiando el valor de la fotoresistencia
valorFotoresistor = random(0,2000);
}