我正在将超声波传感器HC-SR04与Arduino UNO接口连接,但是HC-SR04总是返回零,即使在许多人建议使用NewPing库之后。
最初,我没有使用NewPing库进行编码,但是得到了相同的错误。后来我看到许多建议使用NewPing库的人说它可以解决此类问题,但对我不起作用。
以下是使用NewPing库的代码:
#include<NewPing.h>
const int trigPin1 = 2; //pins for US sensor
const int echoPin1 = 3;
const int trigPin2 = 4;
const int echoPin2 = 5;
NewPing sonar1(trigPin1, echoPin1);
NewPing sonar2(trigPin2, echoPin2);
void setup() {
Serial.begin(9600);
pinMode(trigPin1, OUTPUT);
pinMode(echoPin1, INPUT);
pinMode(trigPin2, OUTPUT);
pinMode(echoPin2, INPUT);
}
void loop() {
float distance1 = sonar1.ping_cm();
float distance2 = sonar2.ping_cm();
Serial.print("Distance for user sensor1 = ");
Serial.println(distance1);
Serial.print("Distance for sensor2 = ");
Serial.println(distance2);
}
输出始终打印为0。 请帮助。