ультразвук
- Войдите на сайт для отправки комментариев
Чт, 30/03/2017 - 16:13
const int Echo = 8;
const int Trig = 9;
void setup()
{
pinMode(Echo, OUTPUT);
pinMode(Trig, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
Serial.begin(9600);
}
unsigned int time=0;
unsigned int distance=0;
void loop()
{
digitalWrite(Trig, HIGH);
delayMicroseconds(10);
digitalWrite(Trig, LOW);
time=pulseIn(Echo, HIGH);
distance=time/58;
Serial.println(distance);
if (distance>50)
{
digitalWrite(4, HIGH);
analogWrite(5, 100);
digitalWrite(7,HIGH);
analogWrite(6, 100);
}
else
{
digitalWrite(4, HIGH);
analogWrite(5, 0);
digitalWrite(7,HIGH);
analogWrite(6, 0);
}
delay(100);
}
по этой проге не работает,
а вот по этой проге все работает. Пожалуйста обозначте ошибку.
const int Trig = 8;
const int Echo = 9;
void setup()
{
pinMode(Trig, OUTPUT);
pinMode(Echo, INPUT);
pinMode( 4 , OUTPUT);
pinMode( 7 , OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
}
unsigned int time_us=0;
unsigned int distance_sm=0;
void loop()
{
digitalWrite(Trig, HIGH); // Подаем сигнал на выход микроконтроллера
delayMicroseconds(10); // Удерживаем 10 микросекунд
digitalWrite(Trig, LOW); // Затем убираем
time_us=pulseIn(Echo, HIGH); // Замеряем длину импульса
distance_sm=time_us/58; // Пересчитываем в сантиметры
// Выводим на порт
if (distance_sm<50) // Если расстояние меньше 50 сантиметром
{
digitalWrite( 4 , HIGH ); //остановка если впереди препятствие
analogWrite(5, 0);
analogWrite(6, 0);
digitalWrite( 7 , HIGH );
}
else
{
digitalWrite( 4 , HIGH );//ехать если нет препятствия
analogWrite(5, 100);
analogWrite(6, 100);
digitalWrite( 7 , HIGH );
}
delay(100);
}
по этой проге не работает,
а вот по этой проге все работает. Пожалуйста обозначте ошибку.
Что работает? Что не работает? Что делается? Что должно делаться? ХЗ!
Ошибку обозначу без пролбем: ошибка в том, как описана проблема и как задаётся вопрос.
как минимум.
+1 к возгласу ЕвгенийП
1. Кто/что не позволил прочитать то, что выдает
Serial.println(distance) ?2. Читаем описание pulseIn()
спасибо