#include<Esp32Time.h>
#include<Wire.h>
#<Adafruit_GFX.h>
#<Adafruit_SSD1306.h>
Adafruit_SSD1306 Negin(128,64,& Wire,-1);
long duration;
int distance,Allowed;
int LED1=32; //Red
int LED2=33; //Green
int Volume=4;
const int trig=25;
const int echo=26;
void setup() {
pinMode(trig,OUTPUT);
pinMode(echo,INPUT);
Serial.begin(115200);
pinMode(LED,OUTPUT);
Negin.begin(SSD1306_SWITCHCAPVCC,0X3C);
Negin.setTestColor(WHITE);
Negin.ColorDisplay();
}
void loop() {
Negin.clearDisplay();
Negin.SetTextsize(2);
Allowed=analogRead(Volume);
Allowed=map(Allowed,0,4095,0,298);
Serial.println(Allowed);
distance=c();
Negin.setCursor(0,0);
Negin.print("distance:");
Negin.setCursor(10,0);
Negin.print(distance);
Negin.setCursor(0,1);
Negin.print("Allowed(cm):");
Negin.setCursor(13,1);
Negin.print(Allowed);
if(distance<Allowed){
digitalWrite(LED1,HIGH);
digitalWrite(LED2,LOW);
}
else{
digitalWrite(LED1,LOW);
digitalWrite(LED2,HIGH);
}
delay(500);
}
int c(){
digitalWrite(trig,LOW);
delayMicroseconds(2);
digitalWrite(trig,HIGH);
delayMicroseconds(10);
digitalWrite(trig,LOW);
duration=pulseIn(echo,HIGH);
distance=duration*(0.034/2);
return distance;
}