int Echo = D6;
int Trig = D5;
int Vcc = D4;
int duration=0, distance=0;
void setup() {
Serial.begin(9600);
pinMode(Vcc, OUTPUT);
pinMode(Trig, OUTPUT);
pinMode(Echo, INPUT);
delay(1000);
digitalWrite(Vcc,HIGH);
}
void loop() {
digitalWrite(Trig,HIGH);
delayMicroseconds(10);
digitalWrite(Trig,LOW);
duration=pulseIn(Echo,HIGH,4000);
//record the time duration between the trig and echo. 4000 is the number of microseconds to wait for the pulse to start
Serial.print("The duration is ");
Serial.print(duration);
Serial.print("µs");
distance=duration*0.0343/2;
//distance=duration time/2 * speed of sound(343 m/s = 0.0343 cm/µs), unit in cm
Serial.print(". The distance is ");
Serial.print(distance);
Serial.print("cm");
Serial.println("");
delay(200);
}
Loading
xiao-esp32-c3
xiao-esp32-c3