#define PIN_TRIG 3
#define PIN_ECHO 2
#define PIN_RED 9
#define PIN_GREEN 10
#define PIN_BLUE 11
void setup() {
Serial.begin(115200);
pinMode(PIN_TRIG, OUTPUT);
pinMode(PIN_ECHO, INPUT);
pinMode(PIN_RED, OUTPUT);
pinMode(PIN_GREEN, OUTPUT);
pinMode(PIN_BLUE, OUTPUT);
}
void loop() {
digitalWrite(PIN_TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(PIN_TRIG, LOW);
int duration = pulseIn(PIN_ECHO, HIGH) / 58;
Serial.print("Distance in CM: ");
Serial.println(duration);
if (duration <= 10) {
analogWrite(PIN_RED, 255);
analogWrite(PIN_GREEN, 0);
analogWrite(PIN_BLUE, 0);
} else if (duration > 10 && duration <= 20) {
analogWrite(PIN_RED, 255);
analogWrite(PIN_GREEN, 255);
analogWrite(PIN_BLUE, 0);
} else if (duration > 20 && duration <= 30) {
analogWrite(PIN_RED, 0);
analogWrite(PIN_GREEN, 255);
analogWrite(PIN_BLUE, 100);
} else if (duration > 30 && duration <= 40) {
analogWrite(PIN_RED, 0);
analogWrite(PIN_GREEN, 255);
analogWrite(PIN_BLUE, 0);
} else if (duration > 40 && duration <= 50) {
analogWrite(PIN_RED, 0);
analogWrite(PIN_GREEN, 255);
analogWrite(PIN_BLUE, 255);
} else if (duration > 50 && duration <= 60) {
analogWrite(PIN_RED, 0);
analogWrite(PIN_GREEN, 0);
analogWrite(PIN_BLUE, 255);
} else if (duration > 60 && duration <= 100) {
analogWrite(PIN_RED, 255);
analogWrite(PIN_GREEN, 0);
analogWrite(PIN_BLUE, 255);
} else {
analogWrite(PIN_RED, 0);
analogWrite(PIN_GREEN, 0);
analogWrite(PIN_BLUE, 0);
}
delay(1000);
}