Мой ультразвуковой датчик показывает 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);
}

И у меня также есть отображение для проводов: провода

0 ответов

Другие вопросы по тегам