Программируемый кухонный таймер
Автор: kostya13 Введение Данное устройство представлет собой программируемый таймер, выполненный на микроконтроллере ATTINY2313 и снабженный светодиодным семисегментным индикатором. (А внутре у ней неонка и думатель) :) Я старался сделать управление как можно простым и удобным. Так как на кухне обычно используется несколько типовых значений таймера, то их можно запрограммировать на определенные кнопки и затем выставлять время одним нажатием. Назначение клавишам предустановленных значений, позволяет одним нажатием установить время больше 9 минут, а так же одним нажатием переустановить таймер на новое значение. Такие операции гораздо быстрее, чем многократное нажатие на клавиши "+" "-" или кручение ручкой (особенно если надо переустановить таймер на то же время). Например пельмешки варятся 7 минут, яйца 10, а блинчики надо переворачивать через 2 минуты. Можно настроить эти таймеры на кнопки 1, 2 и 3 и после включения сутройства, например, просто нажать 2, чтобы влючить таймер для варки яиц. Если вы решили, что с сегодняшнего дня яца будете варить 11 минут, ничего страшного, можете тут же перепрограммировать кнопку 2 на 11 минут. Схема достаточно проста:
Характеристики Диапазон отсчета от 1 до 99 минут. После включения устройство находится в режиме ожидания. В любой момент можно переустановить таймер, нажав нужную кнопку. При удержании цифровой кнопки более 4 секунд, произойдет запись текущего значения таймера в ячейку с номером кнопки. Новые значения записываются в eeprom память. Нажатия на кнопки и операция записи сопровождаются звуковой индикацией. Звук окончания периодически повторяется после окончания счета, на случай если не был услышен первый сигнал. Таймер будет пищать пока его не выключат или не запустят новый отсчет. Работает устройство от 2 батареек AA.
В качестве корпуса мне попалась нерабочий пульт сигнализации с очень подходящей клавиатурой: Программное обеспечение Программа написана для компилятора gcc, поэтому в Windows используется пакет WinAVR. Программа позволяет настраивать частоту и длительность звучания для звука клавиш и звука окончания отсчета. Можно даже составить простенькую мелодию. Так же настраивается время реакции на кнопи (встроенный антидребезг контактов). Сборка программы осуществляется командой Фьюзы установленны по умолчанию: На страничке https://www.engbedded.com/fusecalc можно посомтреть более подробную расшифровку значений Компилятор для Windows можно взять здесь: Какие пакеты нужны для сборки в Linux можно почитать здесь: Для прошивки я использовал программу avrdude.
Для прошивки я использовал программу avrdude. Аппаратное обеспечение Таймер выполнен на микроконтроллере ATTINY2313, причем задействованы все возможные выводы контроллера. Тактуется внутренним генератором, частота работы 1МГц. В качестве индикатора выбран двухсимвольный светодиодый индикатор с общим АНОДОМ. Для схемы подойдет любая модель, главное, Транзисторы обычные маломощные n-p-n структуры. Я взял КТ315. Можно любой аналог. Для вывода звука, можно применять небольшой динамик сопротивлением 8 Ом и мощностью 0,25Вт.
Выводы контроллера, управляющие сегментами (с 12 по 18) подключены напрямую т.к. питание низкое и вдобавок Клавиатура матричная, телефонного типа. В принципе, можно сделать из 12 отдельных кнопок. Все схемы нарисованы в программе kicad. Скачть программу можно здесь:
Печатная плата сделана под готовый корпус, поэтому будет врядли полезна, но учитывая простоту схемы Ссылки Если у вас установлен Mercurial, можно просто клонировать проект: В проекте имеется как исходный код, готовая прошивка для этого кода.
Все вопросы в Форум.
|
|
|||||||||||||||
|
||||