Вопрос: Ультрасоник без библиотеки.
- Войдите на сайт для отправки комментариев
Чт, 21/03/2013 - 20:35
Доброе время суток.
Пытаюсь применить на практике вот такой код:
//Устанавливаем контакты для первого датчика
#define T1 12
#define E1 13
void setup()
{
Serial.begin(9600);
pinMode(T1, OUTPUT);
}
void loop()
{
Serial.print("D1 = ");
Serial.print(Ultrasonic(T1, E1));
Serial.println("cm");
delay(100);
}
int Ultrasonic(byte Trig_pin, byte Echo_pin)
{
digitalWrite(Trig_pin, HIGH);
delayMicroseconds(10);
digitalWrite(Trig_pin, LOW);
return pulseIn(Echo_pin, HIGH, 20000)/29.0/2;
}
Все работает прекрасно, но есть одна непонятка. Почему то при растоянии свыше 120 см показания составляют 5 см. И что то я не могу допереть в ем причина. С библиотекой такого не происходит.
Уважаемый maksim наставте на путь истиный.
У меня при расстоянии 120 см - 120 см
а значит у вас что-то не то с датчиком или акустикой в помещении.
А может у нас датчики различаются? Хотя при применении библиотеки такого трабла не наблюдается.
Покажите лог.
Теперь к сожалению только завтра, если вы не против.
Загрузил скетч с другого компа, заработал гад. Че за глюк? Лано буду разбираться.
maksim сори что побеспокоил напрасно.