Иногда требуется просто задать временной интервал, без особой микроскопической точности. Например, для приготовления пищи, где погрешность в несколько секунд за полчаса, час не играет важной роли. Исходя из этих соображений в качестве тактового генератора выбран внутренний RC-генератор. Стабильность которого зависит от температуры и изменения напряжения питания, поскольку  микроконтроллер сохраняет свою работоспособность при напряжении 1,8-5,5 В. В качестве источника питания применил 3-х вольтовую батарейку (или 2 элемента по 1,5 В).
 

Ставилась задача максимально упростить конструкцию при минимуме внешних  деталей и элементов управления и индикации (как можно проще). Программа написана на ассемблере в AVR Studio.
Для управления режимами таймера имеется пара кнопок. Первая «SET» для установки временного интервала, вторая «RESET» для сброса в любой момент если потребуется «переиграть» ситуацию и выставить другой временной интервал. А так же звуковой зуммер, в качестве звуковой индикации о состоянии таймера в разный период работы.
Таймер сделан с минимальным 5 минутным дискретным интервалом, таких интервалов можно набрать сколько угодно (до 255) если удерживать кнопку в нажатом состоянии.
 

Принципиальная схема кухонного таймера:

Схема кухонного таймера
 
После отпускания кнопки  начинается  запуск таймера и  обратный отсчёт, особенность таймера — звуковая индикация (глаза и руки не участвуют в контроле, а только слух), при установке «пикает» столько раз сколько нужно раз набрать 5-ти минутных интервалов. Например: нужен интервал 30 минут, значит надо нажать кнопку  «SET» и удерживая её в нажатом состоянии, набрать «пиликаний» на 6 раз и отпустить кнопку. С момента отпускания кнопки «SET», зажигается светодиодный индикатор, свидетельствующий о том, что таймер запущен, и гаснет только по окончании всего цикла, также с момента запуска начинается обратный отсчёт, зуммер «пикает» по прошествии очередного дискретного 5-тиминутного интервала столько раз сколько их ещё осталось до завершения полного цикла таймера. А когда весь цикл пройден, в конце цикла звучит длительный «пиликающий» сигнал на протяжении около 10 секунд оповещающий о финале.
После этого, таймер переходит в режим ожидания перейдя по команде sleep в энергосберегающий режим Power down где потребляемый ток составит меньше микроампера в программе задействован, внутренний RC-генератор тактовая частота которого выбрана 128 / 8 кГц.
 

Работа схемы проэмулирована в PROTEUS:

Эмуляция в Proteus
 

Программа для микроконтроллера в AVR Studio:

AVR Studio
 

FUSE-биты микроконтроллера выставлены так:

Fuse-биты микроконтроллера
 
Обсудить проект «Кухонный таймер на ATtiny13» на форуме.
 
Автор: Владимир, vladimir@radioded.ru
Просмотров всего: 9 021, сегодня: 5

Напишите комментарий