Автор: Петров Иван Евгеньевич.Кухонный таймер предназначен для отсчета установленного времени и подачи предварительных и по окончанию отсчета звуковых сигналов. Установка времени осуществляется инкрементальным энкодером. Время отображается на 2-х разрядном 7-и сегментном индикаторе с ОА. Таймер работает от 3-х пальчиковых батареек типа АА суммарное напряжение питание составляет 4,5В. Вне работы таймер находится в спящем режиме потребляя всего несколько мкА. В работе потребляет примерно 2-10 мА в зависимости от установленной яркости и зажжённых сегментов.Меню:- Настройка шага установки/отсчета времени энкодером: 1 сек - 1 мин.- Настройка яркости дисплея: автоматическая с приглушением яркости через 10 сек., ручной режим от 1 до 30.- Настройка сработки 1-го предварительного звукового сигнала: Выкл. / от 1 мин. до 9 мин.- Настройка количества сигналов по окончанию отсчета: Выкл. / от 1 до 99.- Настройка частоты зв. сигнала: От 1 до 4 кГц (опционально).- Настройка времени до автоматического отключения при неактивности: от 10 до 99 сек.- Сохранение всех настроек в энергонезависимой памяти ЕЕПРОМ.Таймер:- Точность: 1 секунда.- Диапазон: от 1-й секунды до 99 секунд / от 1-й минуты до 99 минут.- Дискретность: 1 сек. / 1 мин.- Шаг установки времени: 1 сек. / 1 мин.- Индикация: 2-х разрядный 7-и сегментник с ОА.- Звуковые сигналы: Отключаемые. 2-а предварительных и по окончанию счета установленного времени. За 10 сек до окончания счета имитация звука тик – так.- Управление: Минимальное и простое на энкодере.- Возможна корректировка времени счёта "на лету", во время счёта.- Режим управления: Пуск, пауза-стоп.- Контроль питания при каждом включении.- Питание: 3 батареи типа АА. 4,5 В, потребляемый ток в работе 2...10 мА в зависимости от яркости, в спящем режиме не более 10...20 мкА.- Компактная конструкция и простая схемотехника.Макетирование:Как и любое другое электронное устройство кухонный таймер прошел стадию макетирования и отладку программного кода. Все было спаяно на макетных платах и между собой соединенны проводками. Сердцем и мозгами :) на данном этапе является отладочная плата на базе 8-и битного микроконтроллера STM8S103F3P6 приобретенная на Алиэкспресс.Печатная плата:После того как все было проверено в железе, приступил к разработке печатной платы. Печатная плата проектировалась в САПР Altium Designer 15 версии. Здесь следует оговорится, что я не являюсь инженером-топологом и большого опыта разводки плат на данный момент нету, но есть большое желание научится :). Тем не менее, печатная платка на мой скромный взгляд получилась весьма симпатичная. Не стал заморачиваться с ЛУТом, а сразу заказал изготовление печатных плат в сервисе PCBWay.В собранном ввиде:Описание аппаратной части:Сердцем таймера является микроконтроллер STM8S103F3P6 в корпусе TSSOP-20. Изначально тактирование микроконтроллера было настроено от встроенного генератора, но в ходе тестирования был замечен значительный уход времени. Этого удалось избежать применив внешний кварц на 4МГц.Уровень напряжения на батарейках во время теста контролирует компаратор на LM393 выход которого подключен к порту PD2. Опорное напряжение для компаратора реализовано на TL431. На время теста питание на схему подается через ключ на полевике VT2 IRLML6402.Для подключения индикатора используется сдвиговый регистр на DD2 74HC595.Прошивка:Внимание! Прошивать необходимо с выпаянным резистором R3 потому что он подключен к порту SWIM и мешает программатору определить микроконтроллер. Я прошивал в программе STVP - ST Visual Programmer. Сразу после того, как загрузите прошивку на вкладке OPTION BYTE нужно настроить AFR0 в качестве альтернативной функции выбрать Port PC6 TIM1_CH1 и Port PC7 TIM1_CH2 и загрузите в МК. Отключите программатор и не забудьте резистор R3 запаять на плату. Более подробно о процессе загрузки ПО в микроконтроллер будет рассказанно в отдельной статье. После загрузки ПО таймер готов к работе.Настройка:После прошивки таймер работает с настройками по умолчанию, чтобы их изменить нужно войти в МЕНЮ. В выключенном состоянии нажмите и удерживайте кнопку энкодера не менее 1с до появления короткого звукового сигнала и символа буквы М. Далее, последовательно установите желаемые настройки в соответствии с описанием пунктов меню. Текущий пункт МЕНЮ отображается 1с на дисплее, после чего Вы можете его изменять по своему усмотрению вращая ручку энкодера влево или вправо, для перехода к следующему пункту меню нажмите кратковременно кнопку энкодера.Р1 – Время отсчета таймера. 0 – отсчет в минутах, 1 – отсчет в секундах. По умолчанию 0 – отсчет в минутах.Р2 – Яркость дисплея. 0 - автоматический режим с приглушением яркости через 10с. От 1 до 30 постоянный уровень яркости, где 1 - минимальная яркость, 30 - максимальная яркость. По умолчанию 0 – автоматический режим.Р3 – Время подачи первого предварительного звукового сигнала в минутах. 0 – выключено (предварительных сигналов не будет). 1 – 9 время в минутах. Например Вы хотите, чтобы за 2 минуты до окончания счета прозвучал первый предварительный звуковой сигнал? Нет проблем. Для этого вращением ручки энкодера влево и вправо выберите цифру 2. Предварительные звуковые сигналы звучат только в том случае если установленное время отсчета таймера превышает время установленное в данном пункте МЕНЮ. По умолчанию первый предварительный звуковой сигнал звучит за 2 минуты до окончания отсчета времени. Далее, за 1 минуту до окончания отсчета прозвучит еще раз такой же звуковой сигнал.Р4 – Количество звуковых сигналов по окончанию отсчета времени. 0 – Все звуковые сигналы выключены в том числе и предварительные. Тихий режим. От 1 до 99 количество звуковых сигналов. Длительность звукового сигнала 1с, время паузы 1с. По умолчанию 5 сигналов.Р5 – Частота звукового сигнала. От 1 до 4 кГц. По умолчанию 1кГц. Внимание! Данная опция доступна только в случае использования прошивки для работы с пассивным излучателем (без встроенного генератора). В случае использования активного буззера (с встроенным генератором) в этом пункте производится настройка времени до автоматического отключения.Р6 – Время до автоматического отключения в секундах. От 10 до 99 секунд. По умолчанию автоматическое отключение через 10 секунд бездействия. В случае использования прошивки с активным буззером данный пункт МЕНЮ выполняется в Р5. Нажмите еще раз на кнопку энкодера для сохранения настроек при этом на дисплее высветится надпись SP Save parameters и через 1с таймер перезагрузится и применит новые установки МЕНЮ. Все настройки сохраняются в энергонезависимой памяти EEPROM.Если в режиме МЕНЮ некоторое время не производится никаких действий таймер переходит в спящий режим. Для того чтобы откатится к настройкам по умолчанию в выключенном состоянии нажмите и удерживайте кнопку энкодера не менее 2с до появления на дисплее символов dF default они буду отображаться 2с после чего таймер перезагрузится.Эксплуатация:Что-бы включить таймер нажмите кратковременно на кнопку энкодера. Прозвучит приветственный звуковой сигнал с анимацией черточек на 7-и сегментных индикаторах. Далее появится надпись tb что означает тест батареек, если они разряжены то появится надпись Lb сокращение слов Low Battery и таймер перейдет в спящий режим. Необходимо заменить батарейки для дальнейшего использования.Если же с батарейками все в порядке таймер переходит в режим установки времени, в крайнем правом разряде светится цифра 0. Вращением ручки энкодера влево и вправо установите желаемое время отсчета. Кстати, изменить время отсчета можно когда угодно. Для начала отсчета нажмите кратковременно кнопку энкодера. Прозвучит короткий звуковой сигнал и начнет мигать точка в крайнем правом разряде. Если установлен режим с автоматическим приглушением яркости, то спустя 5 секунд дисплей приглушит яркость.Далее, в соответствии с установками МЕНЮ если активен первый предварительный звуковой сигнал он обязательно прозвучит в установленное время и такой же сигнал прозвучит ровно за 1 минуту до окончания отсчета. За 10 секунд до окончания отсчета звучат короткие звуковые сигналы, и когда время выйдет прозвучат длительные прерывистые звуковые сигналы и таймер автоматически отключится через заданное время установленное в пункте Р5/Р6 МЕНЮ в зависимости от используемой прошивки. Когда остается менее 1 минуты на дисплее отображаются секунды в 2-х разрядах.Если Вы уже запустили таймер, но вам понадобилось изменить время отсчета просто вращайте ручку энкодера влево или вправо при каждом повороте секунды обнуляются.Если таймер запущен и вам нужно приостановить отсчет времени нажмите кратковременно кнопку энкодера, при этом цифры в разрядах будут мигать. Для продолжения нажмите кратковременно на кнопку энкодера, прозвучит короткий звуковой сигнал и таймер продолжит отсчитывать время.Для остановки таймера нажмите и удерживайте кнопку энкодера до появления короткого звукового сигнала и обнуления времени. После чего таймер автоматически отключится.Описание файлов в архиве:Kitchentimer.s19 - прошивка под обычный пассивный электромагнитный буззер (без встроенного генератора).Kitchentimer_activ_buzzer.s19 - прошивка под активный 5В буззер (со встроенным генератором).Schematics.jpg - схема электрическая принципиальная.KitchenTimer_v1.0_TopLayer3D.jpg - 3D вид с лицевой стороны.KitchenTimer_пер_элем.xls - перечень элементов (обязательно проверьте распиновку индикатора перед покупкой).https://domdevice.com/content/uploads/2021/03/24/KitchenTimer_v1.0.zipВидео обзор: