Arduino — таймер с клавиатурой

Ранее я уже выкладывал вариант таймера с использованием LCD KeyPad shield. Минималистичный интерфейс моего таймера, при частой смене времени работы, может оказаться не так уж и удобен.  Так-же исходя из пожеланий читателей, была принята попытка сделать таймер более дружелюбный к человеку.

И так, в моей конструкции были применены следующие, найденные в запасах, модули:

— Arduino Nano (можно использовать любую Arduino, Nano был взят по просьбе читателя)

— Экран 1602 + плата интерфейса I2C, которые впоследствии были спаяны вместе

— Матричная клавиатура

— Модуль с реле 🙂 как и в предыдущей конструкции модуль на 2 реле, хотя и задействовано всего одно.

Ваш набор модулей может отличаться, но это не критично.

В конечной конструкции удобнее использовать мембранную клавиатуру, на которой все кнопки подписаны и выводы сделаны с удобной стороны. Например вот такую:

Исходя из обозначений и расположения клавиш этой клавиатуры, я и отталкивался при реализации функционала.

При включении таймера, мы сразу же оказываемся в режиме ввода времени.

Нужное число просто набираем на цифрами на клавиатуре. Если вдруг ошиблись, то нажатием клавиши [ # ] стираем последнюю набранную цифру.

Нажатием клавиши [ * ] мы переходим в режим обратного отсчета, включив при этом управляющее реле .

В этом режиме мы можем наслаждаться уменьшающимися цифрами оставшегося времени. Ну или нажатием клавиши [ # ] мы можем перейти в режим паузы.

В этом режиме отключается управляющее реле и таймер ждет наших дальнейших действий. Дальнейшее развитие событий может пойти по одному из двух вариантов:

— нажимаем [ # ] — включается управляющее реле и таймер продолжает дальше отсчитывать секунды.

— нажимаем [ * ] — и возвращаемся в режим ввода времени.

Вот в общем то и весь функционал. Получившегося «паука» можно разместить в любой имеющийся корпус подходящих размеров.

Скетч с необходимыми библиотеками можно скачать ОТСЮДА.

Комментариев в скетче должно быть достаточно для исправления под имеющиеся у вас модули.