Soir, сформировал свою хотелку.
Выбор МК: не принципиально, если подойдёт Мега8, то пусть будет.
Органы управления: кнопка «Start/stop», кнопка «Set», кнопки «+» и «-».
Индикация: семисегментный LED индикатор, буззер со встроенным генератором.
Формат отображения в режиме «Часы» ХХ:ХХ, 24 часа.
Максимальная уставка в режиме «Таймер» 99 мин 59 сек.
При подаче питания устройство находится в режиме «Часы» с мигающим разделительным двоеточием.
1. Кнопки «+» и «-» не активны.
2. Кнопка «Set».
2.1 Удержание кнопки «Set» в нажатом состоянии более трёх секунд, переводит режим «Часы» в режим задания времени и на индикаторе мигают два левых разряда (часы). Кнопками «+» и «-» выставляется необходимое значение.
Кратковременное нажатие кнопки «Set» переводит устройство в режим задания минут (справа от двоеточия).
Следующее кратковременное нажатие выводит из режима установки времени.
2.2 Кратковременное нажатие кнопки «Set» в режиме «Часы» переводит устройство в режим программирования будильника. По аналогии с коррекцией времени.
Если установлены 00:00, то будильник отключен.
Сигнал будильника – пачки по три импульса через секунду, десять повторов (не принципиально).
Если возможно, сделать мигание уставки будильника на индикаторе с частотой 1 Гц во время звукового сигнала.
3. Кнопка «Start/stop».
3.1 Кратковременное нажатие в режиме «Часы» переводит устройство в режим «Таймер» и на индикаторе появляется уставка таймера.
3.1.1 Кратковременное нажатие кнопки «Set» переводит таймер в режим коррекции уставки – мигают два старших разряда (минуты), дальше алгоритм задания уставки по аналогии с алгоритмом задания времени и будильника.
3.1.2 Второе кратковременное нажатие кнопки «Start/stop» запускает таймер – обратный отсчёт на индикаторе и производит включение нагрузки в виде реле через биполярный транзистор.
3.1.3 Третье – приостанавливает (без сброса) отсчёт, если отсчёт не закончился, и возвращает к моменту старта, если отсчёт окончен и на индикаторе 00:00.
Сигнал окончания отсчёта таймера – пять секундных импульсов через секунду каждый.
Если возможно, сделать мигание 00:00 на индикаторе с частотой 1 Гц.
Если по истечению пяти минут после окончания отсчёта, кнопка «Start/stop» для повторного отсчёта нажата не была, то устройство автоматически переходит из режима «Таймер» в режим «Часы».
При выходе из режима «Таймер» уставка сохраняется в памяти.
При полном отключении питания, уставка таймера и текущее время в часах должно сохраняться.
На свободные пары выходов МК прошу добавить на каждую из них функцию «кнопка – выход»: нажал тактовую кнопку на одной ноге МК – с другой ноги МК на базу биполярного транзистора для коммутации реле подался высокий уровень, нажал ещё раз – реле отключилось.
Как-то нескромно получилось...

Заранее благодарен.