03 / Templates · intermediate
HC-SR04 DISTANCE METER
Open in PlaygroundTrigger an ultrasonic ping and measure the echo's round-trip time to compute distance, printed to the Serial Monitor.
intermediatesensorserialultrasonicdistance
sketch.inoArduino C++
30 lines
// HC-SR04 Ultrasonic — Distance Meter
// Prints the measured distance in cm every 500 ms.
const int TRIG_PIN = 9;
const int ECHO_PIN = 10;
void setup() {
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
Serial.begin(9600);
}
void loop() {
// Send a 10 µs pulse to trigger a ping
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
// Measure the echo pulse width (round trip)
long durationUs = pulseIn(ECHO_PIN, HIGH);
float distanceCm = durationUs / 58.0;
Serial.print("Distance: ");
Serial.print(distanceCm);
Serial.println(" cm");
delay(500);
}- Arduino Uno01
- HC-SR04 Ultrasonic02
| Component Pin | Arduino Pin |
|---|---|
| HC-SR04 VCC | 5V |
| HC-SR04 TRIG | Pin 9 |
| HC-SR04 ECHO | Pin 10 |
| HC-SR04 GND | GND |