#define Microphone 15
#include <ESP32Servo.h>
const int servoPin = 18;
Servo servo;
int lastState = HIGH;
int lastState2 = LOW;
int value;
int contvalue = 0;
int pos = 0;
void setup() {
// put your setup code here, to run once:
servo.attach(servoPin, 500, 2400);
Serial.begin(115200);
delay(1000);
pinMode(Microphone, INPUT);
servo.write(pos);
}
void loop() {
// put your main code here, to run repeatedly:
microphone();
}
void motorvibration(){
for (pos = 0; pos <= 180; pos += 1) {
servo.write(pos);
delay(1);
}
// for (pos = 180; pos >= 180; pos -= 1) {
// servo.write(pos);
// delay(1);
// }
}
void microphone(){
int sample = analogRead(Microphone);
if (sample < 2052){
value = 0;
}
else {
value = (sample - 2047) * 10;
}
// Serial.print("Sample: ");
// Serial.println(sample);
Serial.print("Value: ");
Serial.println(value);
if (value > 500) {
contvalue = contvalue + 1;
}
if (contvalue >= 5) {
motorvibration();
pos = 0;
servo.write(pos);
contvalue = 0;
}
else {
delay(180);
}
}