Ультразвуковой датчик + светодиод.
- Войдите на сайт для отправки комментариев
Пт, 25/03/2016 - 18:47
Здравствйте, нужна помощь, только начинаю заниматься ардуино, подскажите что не так. Задумка была такова, когда объект ближе чем 50 см, то загорается лампочка, если нет, то не включается или же вообще отключена.
В моём случае светодиот просто загорается и горит, скорее всего я не правильно прописал (echoPin <= 50).
int echoPin = 9;
int trigPin = 8;
int red = 2;
void setup() {
Serial.begin (9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(red, OUTPUT);
if
(echoPin <= 50)
{
digitalWrite(red, HIGH);
}
else
{
digitalWrite(red, LOW);
}
}
void loop() {
int duration, cm;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
cm = duration / 58;
Serial.print(cm);
Serial.println(" cm");
delay(100);
}
http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukomment...
Да, Вы неправильно прописали,
1. не echoPin <= 50 (echoPin - всего лишь константа, задающая номер пина для датчика), а cm <= 50 (cm - расстояние, измеренное датчиком).
2. if должен находиться не в функции setup(), а где-то после строки cm = duration / 58.
3. Советом Евгения обязательно воспользуйтесь, так удобнее и вопрошающему, и отвечающему.
Спасибо большое за помощь, всё работает, в следующий раз учту совет.