Официальный сайт компании Arduino по адресу arduino.cc
Не срабатывает digitalWrite
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Сб, 08/06/2013 - 15:41
Всем привет.
В VirtualBreadBoard 4.3.8 собрана схема:
При запуске схемы по умолчанию загорается led. Код программы:
const int button = 0;
const int led = 1;
void setup() {
pinMode(button, INPUT);
pinMode(led, OUTPUT);
}
void loop() {
digitalWrite(led, LOW);
int state = digitalRead(button);
if (state == LOW) {
digitalWrite(led, HIGH);
} else {
digitalWrite(led, LOW);
}
delay(1);
}
Почему функция digitalWrite не делает его LOW и он светится при старте?
При каком еще старте? И с чего вы взяли что digitalWrite(led, LOW); не выключает светодиод? Еще как выключает. Да вот только если у вас нажата (или не нажата) кнопка то светодиод сразу включается digitalWrite(led, HIGH);, а вы попросту не замечаете как светодиод выключается на доли секунды.
а вы попросту не замечаете как светодиод выключается на доли секунды.
а я согласен, давайте выпишем ему рецепт к окулисту... не может различить милисекундное отключение светодиода :)
Тогда уж - к мозгоправу...
delay(1); - это зачем вообще?
Тогда уж - к мозгоправу...
delay(1); - это зачем вообще?
БРАВО! но я бы сначала не касался кода, фиг бы с ним. Я бы для начала пытался найти землю на кнопке. Там в выборе инструментов есть горшочек с цветком, вот второй конец кнопки заземлите в него :), что бы при нажатии кнопки происходило хоть что то.