#include <VARSTEP_ultrasonic.h>
#define buzzer 10
#define GLED 11
#define TRIGGER 9
#define ECHO 8
VARSTEP_ultrasonic sonor(TRIGGER, ECHO);
float distance;
void ReadSensor()
{
distance=sonor.distance_cm();
Serial.print("distance: ");
Serial.println(distance);
}
void setup()
{
pinMode(buzzer,OUTPUT);
pinMode(GLED,OUTPUT);
digitalWrite(buzzer,LOW);
digitalWrite(GLED,HIGH);
Serial.begin(9600);
delay(500);
}
void loop()
{
ReadSensor();
if(distance<100)
{
alarm();
}
}
void alarm()
{
int melody [14][2] = {{440,100},{587,300},{523,200},{0,600},{440,100},{587,300},{523,200},{440,100},{587,300},{523,200},{440,100},{587,300},{466,200},{0,1900}};
for (int i=0; i<14; i++){
if (melody[i][0] == 0){
noTone(buzzer);
}
else {
tone(buzzer, melody[i][0]);
}
delay(melody[i][1]);
}
noTone(buzzer);
}