int trig= 2;
int echo= 3;
void setup() {
// initialize serial communication:
Serial.begin(9600);
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
}
void loop()
{
digitalWrite(trig, LOW);
delayMicroseconds(2);
digitalWrite(trig, HIGH);
delayMicroseconds(10);
digitalWrite(trig, LOW);
long val= pulseIn(echo, HIGH) * 17 / 100;
Serial.println(val);
delay(100);
}
음속 = 340 m/s
=> 1초에 340 m 를 이동
=> 1초에 340000 mm 를 이동
=> 1마이크로초에는 0.34 mm 이동
(1 마이크로초는 1/1000000 초)
초음파의 이동시간 * 0.34 = 거리 (mm)
하지만 이것은 초음파가 왕동한 시간이니까 반으로 나눈다.
=> microsecond * 34 / 2 / 100