Stap 7: De Code
#define trigPin 7
#define echoPin 6
#define leidde 13
#define led2 12
#define led3 11
#define led4 10
#define led5 9
#define led6 8
#define zoemer 3
int geluid = 250;
VOID Setup {}
Serial.begin (9600);
pinMode (trigPin, OUTPUT);
pinMode (echoPin, INPUT);
pinMode led (, uitvoer);
pinMode (led2, OUTPUT);
pinMode (led3, OUTPUT);
pinMode (led4, OUTPUT);
pinMode (led5, OUTPUT);
pinMode (led6, OUTPUT);
pinMode (zoemer, OUTPUT);
}
void loop {}
lange duur, afstand;
digitalWrite (trigPin, laag);
delayMicroseconds(2);
digitalWrite (trigPin, hoge);
delayMicroseconds(10);
digitalWrite (trigPin, laag);
duur = pulseIn (echoPin, hoge);
afstand = (duur/2) / 29.1;
Als (afstand < = 30) {}
digitalWrite (led, hoog);
geluid = 250;
}
else {}
digitalWrite(led,LOW);
}
Als (afstand < 25) {}
digitalWrite (led2, hoge);
geluid = 260;
}
else {}
digitalWrite (led2, laag);
}
Als (afstand < 20) {}
digitalWrite (led3, hoge);
geluid = 270;
}
else {}
digitalWrite (led3, laag);
}
Als (afstand < 15) {}
digitalWrite (led4, hoge);
geluid = 280;
}
else {}
digitalWrite(led4,LOW);
}
Als (afstand < 10) {}
digitalWrite (led5, hoge);
geluid = 290;
}
else {}
digitalWrite(led5,LOW);
}
Als (afstand < 5) {}
digitalWrite (led6, hoge);
geluid = 300;
}
else {}
digitalWrite(led6,LOW);
}
Als (> 30 afstand || afstand < = 0) {}
Serial.println ("buiten het bereik");
noTone(buzzer);
}
else {}
Serial.Print(distance);
Serial.println ("cm");
Toon (zoemer, geluid);
}
delay(500);
}
Zodra je dat gedaan hebt, en u uw Arduino op uw computer aangesloten hebt, voer de code en je bent klaar. Als je heb gevolgd alle richtingen, hoe dichter je hand krijgt om de HC-SRO4, de LEDs moeten geleidelijk tot licht en hoe dichter uw hand krijgt, de zoemer zal produceren een hogere Toon elke keer. Als u vragen hebt, voel je vrij om me e-mail op datruckk