Макет защиты от протечек на Ардуино
- Войдите на сайт для отправки комментариев
Втр, 10/01/2017 - 22:59
Вктратце на данной стадии замысел такой
На water level sensor поступает вода, загарается светодиод, по нажатию кнопки он отключается
Мой скетч
__________________________________________________________________________________________
#define BUTTON_PIN 3
#define LED_PIN 12
boolean buttonWasUp = true;
boolean ledEnabled = false;
int x;
void setup()
{
pinMode(LED_PIN, OUTPUT);
pinMode(BUTTON_PIN, INPUT_PULLUP);
pinMode(A0, INPUT);
Serial.begin(9600);
}
void loop()
{
boolean buttonIsUp = digitalRead(BUTTON_PIN);
if (buttonWasUp && !buttonIsUp) {
delay(10);
buttonIsUp = digitalRead(BUTTON_PIN);
if (!buttonIsUp) {
}
}
buttonWasUp = buttonIsUp;
x = analogRead(A0);
if (x > 100) { digitalWrite (LED_PIN, HIGH); }
if (x < 100) { digitalWrite (LED_PIN, LOW); }
}
подскажите что не так, ибо после подключения кнопки диод горит непереставая.
Заранее спасибо
Для начала: в скетче состояние светодиода зависит исключительно от уровня напряжения на входе А0, то есть от трёх последних строчек. На этот вход АЦП на макетке хоть что-нибудь подключено? Схему соединений хорошо бы набросать.
Зачем в скетче инициализация serial, если не используется вывод отладочной информации?
Для начала: в скетче состояние светодиода зависит исключительно от уровня напряжения на входе А0, то есть от трёх последних строчек. На этот вход АЦП на макетке хоть что-нибудь подключено? Схему соединений хорошо бы набросать.
Зачем в скетче инициализация serial, если не используется вывод отладочной информации?
На А0 подключен тот самый water level sensor
смотрим вверх
В коде
между фигурными скобками должно быть гашение светодиода. Плюс он гаснет при снижении значения АЦП меньше 100. Коль уж прицепили сериал - выводите туда переменные и значеня с АЦП для контроля.
И выкладывайте код правильно, с использованием кнопки code, большой код должен быть по умолчанию свёрнут.
уровень программирования маленький.. сам до такого не дойду)
Дык уровень повышать надо.
Вот код с добавленым гашением светодиода. Но! Он отработает только один раз (поскольку при изменении buttonWasUp на LOW входа в условие уже не будет), и то при условии, что в момент нажатия кнопки значение с АЦП меньше 100. Почему - разбирайтесь)
Большое спасибо, поразбираюсь)))