#include <Arduino_GFX_Library.h>
#define TFT_SCK 18
#define TFT_MOSI 23
#define TFT_MISO 19
#define TFT_CS 22
#define TFT_DC 21
#define TFT_RESET 17
#define ldrPin 2
const int ledPin = 13;
const float gama = 0.7;
const float rl10 = 50;
void setup() {
Serial.begin(115200);
pinMode(13, OUTPUT);
}
void loop()
{
int ValueLDR = analogRead(ldrPin);
ValueLDR = map(ValueLDR, 4095, 0, 1024, 0);
float voltage = ValueLDR / 1024.*5;
float resistance
= 2000 * voltage / (1-voltage/5);
float brightness = pow(rl10*1e3*pow(10,gama)/resistance,(1/gama));
Arduino_ESP32SPI bus = Arduino_ESP32SPI(TFT_DC, TFT_CS, TFT_SCK, TFT_MOSI, TFT_MISO);
Arduino_ILI9341 display = Arduino_ILI9341(&bus, TFT_RESET);
display.begin();
display.fillScreen(WHITE);
display.setCursor(0, 40);
display.setTextSize(2);
display.setTextColor(GREEN);
if(brightness < 100)
{
digitalWrite(13, HIGH);
display.println("LDR->DARK, LED->ON");
display.println("brightness");
display.print(brightness);
}
else
{
digitalWrite(13, LOW);
display.println("LDR->BRIGHT, LED->OFF");
display.println("brightness");
display.print(brightness);
}
delay(1000);
}