Трудности с кнопкой у новичка

Stan
Offline
Зарегистрирован: 12.10.2018

Только начал заниматься ардуино. Собрал несложную цепь из светодиодов. Написал для них различные функции. Теперь решил подключить кнопку. Хотел, чтобы при нажатии на нее, функции сменяли одна другую и получилось что-то вроде ёлочной гирлянды. Написал через условный оператор "if" Но столкнулся с проблемой. Как только функция начинает работать, данные с кнопки перестают считываться, и чтобы переключить режимы, приходится зажимать ее, чтобы попасть в момент, когда функция завершится, и снова произойдет чтение с кнопки. В общем, мне нужно уметь прерывать цикл, чтобы он сменялся другим. Если кто-то может пожалуйста помогите..

sadman41
Offline
Зарегистрирован: 19.10.2016

Помочь чем?

Stan
Offline
Зарегистрирован: 12.10.2018

Подскажите, как сделать, чтобы функция прерывалась, когда я нажимаю на кнопку.

sadman41
Offline
Зарегистрирован: 19.10.2016

Не вижу никакой функции. 

b707
Offline
Зарегистрирован: 26.05.2017

Stan пишет:
Подскажите, как сделать, чтобы функция прерывалась, когда я нажимаю на кнопку.

Это очень частый вопрос. Поищите - найдете в инете кучу обсуждений.

Вкратце принцип такой - вы должны так переписать функцию, чтобы в ней все время проверялась кнопка. И сразу предупрежу - если в ваших "елочных гирляндах" мигание светодиодов устроено на функции delay() - программу придется переписывать практически полностью.

Explorer
Offline
Зарегистрирован: 12.11.2014

сделай условия предусматривающие все варианты, можно сделать на case