Мой ультразвуковой датчик показывает 0 см
Я совершенно новичок в Arduino и хочу использовать ультразвуковой датчик для измерения расстояния. Теперь я посмотрел несколько уроков и использовал их для создания текущей версии. Но мне не повезло заставить его работать.\
Мой код выглядит нормально, он компилируется как следует. И я не думаю, что есть какие-либо проблемы с оборудованием.
Мой код выглядит следующим образом:
#define TRIGPIN 9
#define ECHOPIN 10
int ping()
{
// pause for 50ms between scans
delay(50);
// send ping
digitalWrite(TRIGPIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIGPIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIGPIN, LOW);
// read echo
long duration = pulseIn(ECHOPIN, HIGH);
// convert distance to cm
unsigned int centimetres = int(duration / 2 / 29.1);
return centimetres;
}
void setup()
{
// debug
Serial.begin(9600);
// set the trig pin to output (send sound waves)
pinMode(TRIGPIN, OUTPUT);
// set the echo pin to input (receive sound waves)
pinMode(ECHOPIN, INPUT);
}
void loop()
{
unsigned int distance = ping();
Serial.print("Distance: ");
Serial.println(distance);
delay(300);
}
И у меня также есть отображение для проводов: провода