Это мой третий проект на AVR: кухонный таймер. Аппаратная часть основана на микроконтроллере Atmel ATtiny2313, питание от батареи 3.6V, для настройки используется вращающийся регулятор(энкодер) с кнопкой, три семисегментных светодиодных индикатора и пьезозуммер для сигнализации. Программное обеспечение использует некоторые более сложные функции контроллера AVR: прерывание таймера и глубокий режим пониженного энергопотребления. Корпус выполнен из дерева.

Схема очень проста. Светодиодные индикаторы в таймере имеют общий анод и с десятичной точкой расположенной слева. Сегменты подключаются через резисторы 200 Ом к выводам контроллера, а общие аноды через транзисторы. Значения резисторов R9-R11, возможно, потребуется корректировать для нормальной яркости дисплея, основанной на реально имеющихся образцах индикаторов и напряжения питания. Для точности отсчета времени в устройстве можно использовать внешний кварц на частоту 1МГц, который подключается к выводам XTAL1-2, но перед этим выставить соответствующую конфигурацию фьюз-битов.

Экономичный кухонный таймер на Attiny2313 - схема

ATtiny2313 припаян непосредственно на печатную плату поэтому я включил 6-контактный разъем для программирования. Зуммер я использовал "CPM 121", со встроенным генератором, который работает от 3-15V. Пъезоизлучатель потребляет примерно 3,5 мА ,что лежит в пределах нагрузочной способности порта микроконтроллера.

Экономичный кухонный таймер на Attiny2313 - печатная плата

Экономичный кухонный таймер на Attiny2313 - расположение элементов

Извлеките батарею перед подачей питания для программирование контроллера!

После включения питания начинается тест индикаторов и зуммера. Нажатие кнопки энкодера переводит прибор в спящий режим. При повторном нажатии кнопки таймер пробуждается и переходит в режим установки времени. Поворот налево увеличивает время, поворот направо уменьшает время. Максимальное время около 99 минут + 59 секунд. Минимальное время составляет 5 секунд. Установка времени меньше 0 секунд выключает таймер. Нажатие на кнопку запускает таймер. Первые и последние 5 секунд отсчета таймер мигая индикаторами показывает оставшееся время. По окончании отсчета включается зуммер определенное количество раз (чем больше установленное время, тем чаще) и засыпает. Нажатие кнопки во время работы таймера, показывает оставшееся время в течение 5 секунд.

Для сокращения размеров таймера я использовал одну литиевую батарею напряжением 3.6V размера АА. Корпус состоит из передней панели сделанной из 4 мм фанеры, стенки вырезаны из одной части деревянного бруска. Чтобы сделать точные вырезы для ручки энкодера, индикаторов и зуммера был сделан трафарет на бумаге.

Описание прошивок:

econom_timer_at tiny2313 - стандартная прошивка для трехразрядного индикатора с ОА и точками слева от цифр;

econom_timer_at tiny2313_FYT-3631BG-11 - для трехразрядного индикатора с ОА и точками справа от цифр;

economic_timer_ attiny2313_up10to1min - для трехразрядного индикатора с ОА и точками справа от цифр, при настройке времени свыше 10 минут, разрядность шага энкодера 1 минута;

econom_timer_attiny2313_E30561_OK+OUT - прошивка под индикатор E30561_OK, на выходе(PA0) на время отсчета лог. единица.


Архив для статьи "Экономичный кухонный таймер на Attiny2313"
Описание: Файл прошивки микроконтроллера, макет печатной платы Eagle 5
Размер файла: 44.24 KB Количество загрузок: 3 245 Скачать