#define echopin 8
#define trigpin 10
const int buzzer = 9;
int ledM = 7;
int ledK = 6;
int ledH = 5;
long duration;
int distance;
void setup() {
// put your setup code here, to run once:
pinMode(trigpin, OUTPUT);
pinMode(echopin, INPUT);
pinMode(buzzer, OUTPUT);
pinMode(ledM, OUTPUT);
pinMode(ledK, OUTPUT);
pinMode(ledH, OUTPUT);
Serial.begin(9600);
Serial.println("Ultrasonic Sensor HC-SRC04 Test");
Serial.println("With Arduino Uno R3");
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(trigpin, LOW);
delayMicroseconds(2);
digitalWrite(trigpin, HIGH);
delayMicroseconds(10);
digitalWrite(trigpin, LOW);
duration = pulseIn(echopin, HIGH);
distance = duration * 0.034/2;
Serial.print("distance: ");
Serial.print(distance);
Serial.println(" cm");
if(distance < 30){
digitalWrite(ledM, HIGH);
digitalWrite(ledK, LOW);
digitalWrite(ledH, LOW);
tone(buzzer, 1000);
delay(1000);
noTone(buzzer);
}
if(distance >= 31 && distance < 60){
digitalWrite(ledM, HIGH);
digitalWrite(ledK, LOW);
digitalWrite(ledH, LOW);
tone(buzzer, 950);
delay(1000);
noTone(buzzer);
}
if(distance >= 61 && distance < 90){
digitalWrite(ledM, HIGH);
digitalWrite(ledK, LOW);
digitalWrite(ledH, LOW);
tone(buzzer, 900);
delay(1000);
noTone(buzzer);
}
if(distance >= 91 && distance < 120){
digitalWrite(ledM, HIGH);
digitalWrite(ledK, LOW);
digitalWrite(ledH, LOW);
tone(buzzer, 850);
delay(1000);
noTone(buzzer);
}
if(distance >= 121 && distance < 150){
digitalWrite(ledM, HIGH);
digitalWrite(ledK, LOW);
digitalWrite(ledH, LOW);
tone(buzzer, 800);
delay(1000);
noTone(buzzer);
}
if(distance >= 151 && distance < 180){
digitalWrite(ledM, LOW);
digitalWrite(ledK, HIGH);
digitalWrite(ledH, LOW);
tone(buzzer, 750);
delay(1000);
noTone(buzzer);
}
if(distance >= 181 && distance < 210){
digitalWrite(ledM, LOW);
digitalWrite(ledK, HIGH);
digitalWrite(ledH, LOW);
tone(buzzer, 700);
delay(1000);
noTone(buzzer);
}
if(distance >= 211 && distance < 240){
digitalWrite(ledM, LOW);
digitalWrite(ledK, HIGH);
digitalWrite(ledH, LOW);
tone(buzzer, 650);
delay(1000);
noTone(buzzer);
}
if(distance >= 241 && distance < 270){
digitalWrite(ledM, LOW);
digitalWrite(ledK, HIGH);
digitalWrite(ledH, LOW);
tone(buzzer, 600);
delay(1000);
noTone(buzzer);
}
if(distance >= 271 && distance < 300){
digitalWrite(ledM, LOW);
digitalWrite(ledK, LOW);
digitalWrite(ledH, HIGH);
tone(buzzer, 550);
delay(1000);
noTone(buzzer);
}
if(distance >= 301 && distance < 330){
digitalWrite(ledM, LOW);
digitalWrite(ledK, LOW);
digitalWrite(ledH, HIGH);
tone(buzzer, 500);
delay(1000);
noTone(buzzer);
}
if(distance >= 331 && distance < 360){
digitalWrite(ledM, LOW);
digitalWrite(ledK, LOW);
digitalWrite(ledH, HIGH);
tone(buzzer, 450);
delay(1000);
noTone(buzzer);
}
if(distance >= 361 && distance < 400){
digitalWrite(ledM, LOW);
digitalWrite(ledK, LOW);
digitalWrite(ledH, HIGH);
tone(buzzer, 400);
delay(1000);
noTone(buzzer);
}
}