Печать

Многофункциональный таймер на Attiny2313

Опубликовано . Опубликовано в Устройства на AVR

Рейтинг:   / 7
ПлохоОтлично 
Многофункциональный таймер
Таймер собран на микроконтроллере ATtiny2313 и питается от батареек, по истечение установленного интервала он подает сигнал. Он также может контролировать внешние устройства, а также может работать как хронометр или устройство для ручного счета. 

Характеристики прибора

- Небольшой размер - 8,5 х 4,5 см;
- Работает от 3-х щелочных батарей типа АА;
- Срок службы батареи: ~ 4 года в режиме ожидания, больше 80 часов в активном режиме;
- 4-разрядный 7-сегментный дисплей в режиме, работает в динамическом режиме индикации;
- 3-х кнопочная клавиатура;
- Тональный зуммер;
- Выход для управления другими устройствами;
- Работа контроллера от внутреннего генератора;
- Низкая стоимость применяемых компонентов;

Выполняемые функции
- Сигнал зуммера звучит 30 с. с момента окончания отсчета;
- Максимальное время отсчета - 99 минут;
- Функция хронометра;
- Режим ручного счета;
- Автоматическое отключение после 20 с. бездействия;

Многофункциональный таймер - схема

Управление таймером

Первые две кнопки "Больше" и "Меньше" используются для установки начального значения. Третья кнопка "Пуск"  запускает/останавливает таймер. Последние 10 секунд отсчета отмечаются короткими звуковыми сигналами. Когда отсчет достигает нуля, таймер подает звуковой сигнал и индикатор мигает в течение 30 секунд. Нажатие на "Пуск" останавливает сигнал. При запуске таймера активируется выход PD6 микроконтроллера, если подключить к нему реле, то можно будет управлять любым внешним устройством.

При нажатии на "Больше" и "Меньше" одновременно индикатор обнуляется, эта функция работает во всех режимах, включая в режиме ручного счета.

Если запустить таймер на 00:00, он войдет в режим хронографа. Нажатием на кнопку "Пуск" можно сделать паузу. Выйти из режима можно нажав на  "Больше" и "Меньше" одновременно.

Автоматическое выключение (спящий режим) активируется после 20 секунд бездействия.

Если нажать на все три клавиши одновременно, частота обновления индикации будет меняться. Эта функция демонстрирует принцип действия динамической индикации.

Для включения режима ручного счета нужно нажать и держать клавиши "Пуск" и "Меньше" одновременно в течение примерно 15 с., после этого на индикаторе загорится "ноль". Увеличивают или уменьшают значение кнопками "Пуск" и  "Меньше". Для выхода из режима нажать "Пуск" и "Больше" одновременно.

При программировании контроллера выставить fuse-биты на работу от внутреннего генератора частотой 8MHz без предварительного делителя на 8, также желательно установить защиту по питанию на уровне 4,3В(BODLEVEL=100). Светодиодные индикаторы используются с общим анодом и точкой, располагать их так, как показано на рисунке, HG3,4 перевернуть. Сопротивление резистора R16 в дальнейшем можно уменьшить до 10k, если таймер не будет выходить из спящего режима.

Фото готового устройства (прислал Rath)

 

 

 

Обсуждение статьи на форуме

Файлы:
Дата 26.10.2010 Размер файла 130.1 KB Закачек 2952

Комментарии  

+1 #21 AntonChip 28.09.2011 22:02
Еще одна схема только на PIC electroavto.narod.ru/timer.html
Сообщить модератору
0 #22 kayot 04.02.2012 23:54
Доброго времени.
собрал все по схеме, зашил контроллер, при включении выдает четыре нуля на индикаторах, на кнопки не реагирует, а вот по прохождении 20 сек уходит в сон четко. что посоветуете??? программу заливал Pony Prog v.2,07
Заранее спасибо.
Сообщить модератору
0 #23 nikola_man 05.02.2012 10:25
по питанию МК, не разумней запитать МК от 6 батарей через стабилизатор, про bodlevel ничего не сказано ?
Сообщить модератору
0 #24 AntonChip 05.02.2012 16:22
Цитирую nikola_man:
по питанию МК, не разумней запитать МК от 6 батарей через стабилизатор, про bodlevel ничего не сказано ?

Стабилизатор будет кушать драгоценные миллиамперы, а стабилитрон можно поставить. Про BODLEVEL написал в статье. Спасибо
Сообщить модератору
+1 #25 Rath 28.03.2012 09:42
Привет всем.Собрал уже второй такой,всё хорошо работает,если бы не....Плохо запускается при переключении питания(при замене батареек,наприм ер).Каждый раз приходится подключать к прогеру(перепро шивать).Первый раз нормально запускается,пот ом опять морока.Уже думал поставить ионистор,но не хочется громоздить на плату лишнее.Исходник программы у меня есть,но в програмировании я новичок и мало чего понимаю в навороченных прогах.Да,ещё думаю,может такая лажа получается потому что у меня Attiny2313A,а не Attiny2313 как в схеме.
Сообщить модератору
+1 #26 AntonChip 28.03.2012 11:30
Можно поэкспериментир овать с VD1 и R16, и еще различие ATtiny2313A и ATtiny2313, ATtiny2313V

Поменялись уровни POR.
По архитектурным изменениям этот микроконтроллер рекордсмен серед всех A-вариантов. Новые возможности:
Sleeping BOD – регистр BODCR.
Регистр управления питанием PRR.
Буферный регистр USI – USIBR.
Прерывания по смене состояния вывода PCINT теперь работает на всех выводах, добавились регистры PCMSK1, PCMSK2 и соответствующие биты в GIMSK/GIFR.
Режим MASTER SPI у USART.
Бит RSIG в SPMCSR.
errata очистилась, новых известных ошибок нет.
Сообщить модератору
+1 #27 Rath 31.03.2012 11:02
Что-то только не делал по своим познаниям,изуве чил весь исходник.Получа ется если снимаешь питание во время работы таймера(когда индикатор светится),потом без проблем запускается.Есл и же снять питание во время спящего режима - больше не включишь никогда,только через программатор.Ре зистор и диод не пойму как могут помочь.Резистор у меня уже стоит 10кОм,и в работе когда питание постоянно включено,девайс без проблем работает,засыпа ет и просыпается.С моим индикатором ток в работе 30мА,во сне 18мкА.
Сообщить модератору
+1 #28 Rath 31.03.2012 11:11
Да,ещё хочу добавить.Нравит ься именно этот таймер из-за отсутствия необходимости включать-выключ ать питание,вследст вии чего - отсутсвия выключателя питания.Для женщины это очень важно :-) .Поменял батарейки и забыл про них на долгое время.И не привязан к розетке.
Сообщить модератору
+1 #29 AntonChip 31.03.2012 11:56
Rath, задал Ваш вопрос автору прибора, посмотрим что ответит, мне тоже интересно в чем тут дело
Сообщить модератору
+1 #30 Rath 04.04.2012 13:35
У автора не особо времени,наверно е... :-)
Сообщить модератору
0 #31 AntonChip 05.04.2012 16:57
Цитирую Rath:
У автора не особо времени,наверное... :-)

Похоже автора не найти, его сайт не обновлялся с 2008 года. Пришлось самому посидеть над исходником, кое что подчистил. Таймер пока гоняю, включается нормально. Кстати изменил прошивку под нормальный индикатор т. е. не перевернутый.
Сообщить модератору
0 #32 Rath 06.04.2012 12:33
А,можно поюзать ваш исходник?А то тёще девайс не могу закончить,он в смд,поэтому на проводах к прогеру висит уже месяц.А индикатор у меня вообще,с общим катодом(на шару несколько штук досталось),с двумя точками посередине от третьего и четвертого разрядов.Всё работает,только точки не могу замигать.
Сообщить модератору
0 #33 AntonChip 06.04.2012 16:02
Создал тему в форуме radioparty.ru/.../...
Сообщить модератору
0 #34 Виталий 01.07.2012 05:16
Пожалуйста, пришлите исходники - мне нужно считать только минуты и использовать 2-х разрядный индикатор с ОА - попробую изменить
Виталий
Сообщить модератору
0 #35 AntonChip 01.07.2012 09:25
Цитирую Виталий:
Пожалуйста, пришлите исходники

Исходники выложены в форуме
Сообщить модератору
0 #36 Виталий 01.07.2012 19:42
Как их там найти?
Сообщить модератору
0 #37 AntonChip 01.07.2012 19:53
Цитирую Виталий:
Как их там найти?
Нажимаете на ссылку, которая в 33-м комментарии, скачиваете вложение 1 поста темы
Сообщить модератору
0 #38 RusLanCk 30.08.2013 18:42
Цитирую admin:
Таймер пока гоняю, включается нормально. Кстати изменил прошивку под нормальный индикатор т. е. не перевернутый.


А можно вернуть прошивку под перевернутые индикаторы, но чтоб работала стабильно? А то схему уже собрал, а потом нашел на форуме про модификацию, но переделывать плату как-то не хочется, да и индикатора такого быстро найти. С оригинальной прошивкой завести таймер не получается: то только пищит, то моргают только точки, то вообще ничего не происходит. Модифицированну ю прошивку пробовал лить, но на индикаторе только мерцающий бред - надпись вида GEOB, реакции на нажатия кнопок нет.
попробовал поиграться с фьюзами CKSEL - доигрался: девайс перестал отвечать при попытке чтения или записи...
Помогите, плз, начинающему.

Заранее спасибо!
Сообщить модератору

Рекомендуем посмотреть