Подстановка слова в Serial.print вместо значения выхода
- Войдите на сайт для отправки комментариев
Сб, 02/11/2019 - 16:34
Доброго дня.
Пишу код про кнопку, на мониторе порта проверяю - вывожу значение 1 или 0 кнопки.
Захотел поменять на слова "нажата" или "отжата". И не получается ((
Код, который прекрасно работает:
int buttonPin = A0; boolean button; boolean prev_button; void setup() { pinMode(buttonPin, INPUT_PULLUP); Serial.begin(9600); prev_button = 1; } void loop() { button = digitalRead(buttonPin); if (button != prev_button) { delay(5); Serial.print("Кнопка сработала, сейчас: "); Serial.println(button); prev_button = button; } }
и вот когда не получается:
int buttonPin = A0; boolean button; boolean prev_button; void setup() { pinMode(buttonPin, INPUT_PULLUP); Serial.begin(9600); prev_button = 1; } void loop() { button = digitalRead(buttonPin); if (button != prev_button) { delay(5); Serial.print("Кнопка сработала, сейчас: "); if (button = 1) { Serial.println("отжата"); } else { Serial.println("нажата"); } prev_button = button; } }
Подскажите, что я упустил?
ошибка в 19 строке, в скобках у вас не логический оператор, а присваивание
ну конечно же! ))
спасибо!
два часа уже смотрю и не вижу, даже решился написать ..
ошибка в 19 строке, в скобках у вас не логический оператор, а присваивание
грабли новичков :))))))))))))))))
Пишите
if
(1 = button)
и компилятор не допустит такой дребедени в коде.если б я не знал об этом!
но не помогло )))