Прервать цикл
- Войдите на сайт для отправки комментариев
Втр, 21/01/2014 - 09:56
Приветствую.
Вот код:
for (int j = 0; j <= 1; j++) {
boolean autoloop = true;
while(autoloop) {
lcd.print("Ololo");
if (button.update()) {
if (button.read() == HIGH) {
autoloop = false;
}
}
Подскажите, пожалуйста, как грамотно прервать цикл for после первой итерации при нажатии на кнопку?
Спасибо.
Например, так, хотя непонятно, зачем здесь этот фор нужен. Непонятная задача, непонятное решение:
boolean autoloop = true; for (int j = 0; ( j <= 1 ) && autoloop; j++) { while(autoloop) { lcd.print("Ololo"); if (button.update()) { if (button.read() == HIGH) { autoloop = false; break; } } } }у Вас по какрму условию for заканчивается?
for (int j = 0; j <= 1; j++) { boolean autoloop = true; while(autoloop) { lcd.print("Ololo"); if (button.update()) { if (button.read() == HIGH) { autoloop = false; j = 2; } }В общем задача такова:
Есть 7 фаз работы. Для каждой фазы устанавливаются два значения, кроме первой фазы. Для нее выставляется только одно значение из этих двух. По нажатию на тактовую кнопку осуществляется переход к следующей фазе. Вот как должно выглядеть:
Фаза0 Значение1
Фаза1 Значение1
Фаза1 Значение2
Фаза2 Значение1
Фаза2 Значение2
Фаза3 Значение1
Фаза3 Значение2
.....
Вот я и начал извращаться с двумя циклами. Первый цикл for (его я здесь не показывал) прогоняет фазы, а второй цикл for (код приведен выше) выставляет Значение1 и Значение2. А прерывание в цикле я хотел сделать именно для первой фазы, чтобы не выставлялось Значение2. Вот такой извращенский метод :) Если кто-то сможет посоветовать адекватное решение, то буду только благодарен.
Спасибо.
http://ru.wikipedia.org/wiki/%D0%90%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%...
Если разберетесь, можно сделать простенькую и короткую программу. Но легко вряд ли будет.
http://habrahabr.ru/post/160105/
забавная статья
http://gnu.linuxcenter.ru/pub/Arduino_Decimilia_100-106.pdf
http://ru.wikipedia.org/wiki/%D0%90%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%...
Если разберетесь, можно сделать простенькую и короткую программу. Но легко вряд ли будет.
http://habrahabr.ru/post/160105/
забавная статья
http://gnu.linuxcenter.ru/pub/Arduino_Decimilia_100-106.pdf
Спасибо за ссылки, посмотрел. А в pdf что там может быть полезного? Пока что-то не увидел.
Там есть статья с примером машины состояний на Ардуино, ищите "Arduino: Набор барабанщика", 16 страница. Может поможет быстрее въехать
Сделал вообще по-простому тупо - два массива. В одном названия фаз с повторениями, во втором - соответствующие первому значения :) Очень тупо и деревянно, но работает.
Спасибо всем за помощь.