Помогите новичку (вопрос по кнопкам)

Giltar
Offline
Зарегистрирован: 15.03.2017

здравствуйте, посоветуйте как можно реализовать срабатывание релле по удержанию кнопки в течении определенного времени и чтоб в случае отпускания кнопки до истечения времени удержания состояние сбрасывалось до исходного

kost82
Offline
Зарегистрирован: 30.11.2015

Я бы ввел переменную, например time (тип unsigned long), изначально приравняв ее 0. При первом нажатии кнопки (когда time == 0), я бы присваивал ей текущее значение времени выполнения программы (time = millis();). Затем в каждом цикле бы проверял не отпущена ли кнопка и не прошло ли заданное время. Если кнопка отпущена - сбрасываем time в ноль. Если не отпущена и прошло время - включаем реле. Как-то так. Возможно это не лучшая реализация, но это первое что пришло в голову.