Помогите пожалуйста разобраться с оператором if.
- Войдите на сайт для отправки комментариев
Чт, 10/03/2016 - 22:58
Здравствуйте. Может вопрос глупый, сегодня первый раз взялся за arduino. Показалось оператор if работает странно, составил вот такой скетч:
int x = 27; void setup() { pinMode (5, OUTPUT); pinMode (6, OUTPUT); digitalWrite (5, LOW); digitalWrite (6, LOW); } void loop() { if (x == 25){digitalWrite (5, HIGH);} else {digitalWrite (5, LOW);} if (x != 25){digitalWrite (6, HIGH);} else {digitalWrite (6, LOW);} }
Насколько понимаю должен загореться LED на 6 ноге, но выходит на оборот загорается на 5. А если выставить x = 25, то на 6. Помогите пожалуйста разобраться.
Использую Arduino Nano3. Подключение стандартное, с платы взято питание 5v и через резисторы 220Ом подключено на два светодиода. Которые подключены к D5, D6.
... узник замка "IF" .
Когда на выходе лог 0 через светодиод течет ток с 5v-через резистор-через ногу арды на минус.
таким образом low- светится.
так что с if все правильно, проблема с пониманием работы электрических цепей.
Устал уже постить эту ссылку.
товарисчи модераторы ПОЖАЛУЙСТА качните ее и выложите в факах большими буквами куданить в аппаратные вопросы. А лучше ссылку на язык и эту ссылку вместе в топ в приклееное.
если СД подключен 5 V - резистор - пин
то он зажигается выставлением на пине LOW
если СД подключен пин - резистор - GND
то он зажигается выставлением на пине HIGH
разницу видишь ?
у тибя - вариант 1
строки 6 и 7 - включить оба СД
строка 11 - если х = 25 то выключить СД на пине 5 , если нет - то включить СД на пине 5
строка 13 - если х <> 25 то выключить СД на пине 6 , если нет - то включить СД на пине 6
....думай , анализируй :)
Устал уже постить эту ссылку.
товарисчи модераторы ПОЖАЛУЙСТА качните ее и выложите в факах большими буквами куданить в аппаратные вопросы. А лучше ссылку на язык и эту ссылку вместе в топ в приклееное.
это не поможет :(
Все понял, большое спасибо за разъяснения и ссылку.