void setup() {
Serial.begin(9600);
}
void loop() {
// Serial.println(returnCM(A0, A1));
//пищимо 3 ніжкою з частотою 1000
//з затримкою яку рахує map
//якщо 2cm->10писків 100сm->1писк
int cm = returnCM(A0, A1);
//пищимо 3 ніжкою з частотою 1000
//з затримкою яку рахує map
//якщо 2cm->10писків 100сm->1писк
if(cm<100){
tone(3, 100, 100);
delay(map(cm, 2, 100, 100, 1000));
}
}
// функція замість бібліотеьки для датчика
// поветраєСантиметри(номерНіжкиТрігер, номерНіжкиЕхо)
int returnCM(int trigPin, int echoPin)
{
long duration;
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(20);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
duration = duration / 59;
if ((duration < 2) || (duration > 200)) return 200;
return duration;
}