как программно реализовать след. алгоритм
- Войдите на сайт для отправки комментариев
Ср, 15/05/2013 - 21:15
Подскажите пожалуйста, как реализовать след. алгоритм:
К uno подключена матричная клавиатура. При долгом нажатии на клавишу 5, попадаем в под меню программы, которое должно либо увеличивать или умешьшать значение переменной при нажатии соответственно клавишь 3 и 4, после установки нужного значения, жмем, к примеру, клавишу А и выходим в основоне тело программы, ну короче как то так.
Пробовал так но это совершенно не работает:
if (customKey == '5'){ do { if (customKey == '3') { tone(16, 900, 300); valTemp+= 0.1; Serial.println(""); Serial.println(valTemp); } if (customKey == '4') { tone(16, 900, 300); valTemp-= 0.1; Serial.println(""); Serial.println(valTemp); } } while (customKey == '6'); }
Почему, при входе в цилк (при нажатии 5) не обрабатываются нажатия клавиш и 3 и 4, т.е. клавиш, зпрограммированных на проверку на нажатие внутри цикла?
Потому что внутри цикла нет обновления переменной customKey
Потому что внутри цикла нет обновления переменной customKey
А как сделать обновления переменной внутри цикла?
customKey = random();
будет на каждом шаге случайное число поллучать)
или customKey = analogRead(0);
с 0-левого пина будет брать значение
как ты читаешь код с клавы?
типа такого сделай
customKey = customKeypad.getKey();
вставь в цикл
перед } while
или после do{
Получилось! Спасибо! Я программер очень плохой, всегда удивляюсь, ну как это можно понять логически самому?:)
берешь бумагу, рисуешь блок схему алгоритма, потом садишься кодить)