#include <ESP32Servo.h>
Servo myservo; // create servo object to control a servo
// twelve servo objects can be created on most boards
const int servoPin = 23;
int value;
double angle;
int redPin = 18;
int greenPin = 17;
int bluePin = 16;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
Serial.println("Hello, ESP32!");
myservo.attach(servoPin);
pinMode(bluePin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(redPin, OUTPUT);
}
void loop() {
value = analogRead(12);
angle = map (value, 0, 1023, 0, 180);
Serial.println(angle);
delay (15);
myservo.write (angle);
if (value <90)
{
setColor (0,255,0);
}
else{
setColor (255,0,0);
}
delay (15);
}
void setColor (int red, int green, int blue)
{
#ifdef COMMON_ANODE
red = 255 - red;
green = 255 - green;
blue = 255 - blue;
#endif
analogWrite(redPin, red);
analogWrite(greenPin, green);
analogWrite(bluePin, blue);
}