#include <Servo.h>
Servo servo;
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C mrlcd (0x27,16,2);
int degrees;
int redPin = 8;
int greenPin = 7;
int blue = 5;
const int trigPin = 10;
const int echoPin = 11;
long duration;
int distanceCm, distanceInch;
void setup() {
pinMode(redPin, INPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, INPUT);
servo.attach(6);
Serial.begin(9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
mrlcd.init();
mrlcd.clear();
mrlcd.backlight();
mrlcd.setCursor(0,0);
mrlcd.write("degree");
Serial.begin(9600);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distanceCm = duration * 0.034 / 2;
delay(100);
Serial.println(distanceCm);
if(distanceCm<=200){
mrlcd.clear();
mrlcd.setCursor(0,0);
mrlcd.print(distanceCm);
servo.write(0);
setColor(100, 0, 0);
delay(1000);
}
}
void setColor(int r, int g, int b) {
analogWrite(redPin, r);
analogWrite(greenPin, g);
analogWrite(bluePin, b);
}