GND부분은 GND에 결합했고
TRIG핀은 P24 ECHO핀은 P23에 결합했습니다.
TRIG핀인 P24는 wiringPi에서 5번핀
ECHO핀인 P23는 wiringPi에서 4번핀에 해당합니다.
#include<stdio.h> #include<wiringPi.h> #define trigPin 5 #define echoPin 4 int main(void) { int distance = 0; int count = 0; wiringPiSetup(); pinMode(trigPin, OUTPUT); pintMode(echoPin, INPUT); for(;;) { digitalWrite(trigPin, LOW); usleep(2); digitalWrite(trigPin, HIGH); usleep(20); digitalWrite(trigPin, LOW); while(digitalRead(echoPin) == LOW); long startTime = micros(); while(digitalRead(echoPin) == HIGH); long travelTime = micros() - startTime; int distance = travelTime / 58; printf("Distance: %dcm\n", distance); count++; delay(1000); printf("count: %d\n\n",count); } }
pinMode를 통해 trigPin을 OUTPUT에 echoPin을 INPUT으로 설정해줍니다.
trigPin을 통해 센서에게 요청하면 echoPin을 통해 값을 받을 수 있습니다.
digitalWrite를 통해 trigPin으로 요구사항을 보내고 digitalRead를 통해 받습니다.
이를 이용해 초음파의 travel time을 구해 거리를 측정합니다.