Arduino使用HC-SR04超声波测距
对于距离测试的方法有很多种,而使用超声波来测距是很常见的,下面使用到的超声波模块HC-SR04,可测量范围为2-400cm,下面是其照片如下:
其有4根PIN,分别是VCC、Trig、Echo、GND,将其分别接到Arduino UNO R3板卡的5V、Digital PIN7、Digital PIN8、GND。
下面是相应的源码:
int echoPin = 8;
int trigPin = 7;
int ledPin = 13;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
long duration, cm;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
cm = msToCm(duration);
if (cm > 20) {
digitalWrite(ledPin, LOW);
} else {
digitalWrite(ledPin, HIGH);
}
delay(500);
}
long msToCm(long ms) {
return ms / 29 / 2;
}
转载请注明: