Электросхемы в помощниках.
Приветствую Вас, Гость · RSS Четверг, 28.03.2024, 09:25












Главная » Файлы » AVR » AVR

Многофункциональный циклический таймер
28.01.2011, 09:31

Источник материала сайт http://c2.at.ua. 

Многофункциональность заключается в следующем: программно в одном устройстве реализовано четыре функции.
-
↳↰ циклический таймер с возможностью работать в двух настроенных отрезках времени бесконечно.
-
функция таймера, работать в двух настроенных отрезках времени однократно.
-
таймер обратного отсчета.
-
секундомер
 - автозапуск настраивается из меню в двух вариантах:
1) вариант после подачи питания 5V на схему МК отсчет начинается сразу
2) вариант после подачи питания 5V на схему МК отсчет начнется только после нажатия кнопки ▲ пуск.

Данные выбранного режима одного из четырех (циклический таймер, таймер цикл однократно, таймер обратного отсчета, секундомер, состояние автозапуска) сохраняются в энергонезависимой памяти МК автоматически, и после очередной подачи питания 5V на схему МК восстанавливаются автоматически.

Запись временных отрезков таймера №1 и таймера №2 записываются в энергонезависимую память МК в активном состоянии таймера (см. описание меню) и при каждой новой подаче питания 5V на схему МК, записанные раннее значения восстанавливаются автоматически.

Характеристики таймера:
- циклический таймер два независимых настраиваемых диапазона времени таймер №1 от 1сек до 96 часов (четверо суток) и таймер №2 отрезок времени от 1 сек и до 99 минут.
- функция таймера, работать в двух настроенных отрезках времени однократно. Диапазоны, таймер №1 от 1сек до 96 часов и таймер №2 от 1 сек и до 99 минут. Графически:
- таймер обратного отсчета, с интервалом времени в диапазоне от 1 секунды до 96 часов.
- секундомер от 1 секунды до 24 часов, и далее в часовом режиме с 0 секунд.

Схема многофункционального циклического таймера:




Управление:
В режиме основного экрана, кнопками ▲▼◄► оперативно производится такое управление:
▲ старт, пауза;
▼ сброс
► вход в меню
◄ возврат
При одновременном нажатии кнопок ◄ ▲ происходит запись в энергонезависимую память МК временных данных отображаемых на экране.
При одновременном нажатии кнопок ◄ ▼ производится чтение и вывод на экран ЖКИ, временных данных находящихся в энергонезависимой памяти МК.

Система меню:
Управление всеми функциями осуществляется при помощи 4-х кнопок, условно обозначенных символами:
▲▼◄► Навигацию по меню можно просто осуществлять с помощью подсказок.
Подсказка – символ, ▲▼◄► который соответствует определенной кнопке.
Для перехода из основного режима к системе меню, следует нажать кнопку ► меню.
Меню полностью русифицировано и отображаемые подсказки в виде символов ▲▼◄► будут вашими подсказками в данной навигации.

Графически, навигация по меню выглядит так:




Если спустя время, вы забыли, какой интервал у вас запрограммирован в памяти МК, можно зайти в меню, пункт «установленное время», отображает записанные раннее временные значения.

А так же, если войти в любой пункт меню и не нажимать ни одну кнопку в течение 30 секунд, произойдет возврат в основной режим автоматически.
Вся информация активных состояний отображается на ЖКИ.

 

 

Описание режимов работы.

 

 

↳↰ циклический таймер с возможностью работать в двух настроенных отрезках времени бесконечно.

В рабочем цикле принимают участие два таймера. На экране ЖКИ таймеры обозначаются как т №1 и т №2
Визуально работу циклического таймера можно отобразить таким графиком.



Для работы циклов время задается с точностью до секунды;
диапазон отсчета: таймер №1 от 1сек до 96 часов и таймер №2 от 1 сек и до 99 минут.

После установки нужных интервалов времени, необходимо сохранить эти значения в память МК (в соответствующем таймеру меню, кнопкой ► сохранить, или в режиме основного экрана, одновременно кнопки ◄ ▲.

В основном режиме нажав кнопку старт, таймер №1 начнет отсчет.
При достижении значения 00:00.00, включается исполнительное устройство, и отсчет продолжает таймер №2 (в это время обнуленные 00:00.00 показания таймера №1, будут восстановлены автоматически в соответствии с данными энергонезависимой памяти МК).

А также если таймер №1 находится в десяти секундном интервале до включения нагрузки, будет подан несколько раз сигнал зуммер ((РС5) 28 ножка МК).

Таймер №2 при достижении значения 00.00, выключается исполнительное устройство, и отсчет продолжает таймер №1 (в это время обнуленные 00.00 показания таймера №2, будут восстановлены автоматически в соответствии с данными энергонезависимой памяти МК).

И так будет продолжаться бесконечно…

Во время работы циклического таймера оперативно управлять работой таймеров можно с помощью кнопок
Кнопка ▲ пауза, отсчет остановится. (Состояние активности (PC0) 23 ножка МК не изменится) двойное нажатие кнопки пауза приводит к возобновлению остановленного отсчета.

Кнопка ▼ сброс, отсчет остановится, на экране ЖКИ показания обнулятся (но не в энергонезависимой памяти МК) и если было включено исполнительное устройство, ОТКЛЮЧИТСЯ.
Отображение на ЖКИ символов > + < означает, что при однократном нажатии кнопки старт начнется (продолжится) отсчет времени таймеров №1 или №2.

Также, если кратковременно пропадёт питание в сети (или просто на длительный период отключаем таймер от сети), тогда при появлении напряжения, устройство сохранит свои настройки и если была включена функция автозапуск, таймер включится снова и продолжит работу по замкнутому циклу.

-
функция таймера один цикл, будет работать в двух настроенных отрезках времени однократно.



Управление и настройки будут соответствовать описанному выше.

Таймер №1 начинает отсчет.

При достижении значения 00:00.00, включается исполнительное устройство, и отсчет продолжает таймер №2 (в это время обнуленные 00:00.00 показания таймера №1, будут восстановлены автоматически в соответствии с данными энергонезависимой памяти МК).

Таймер №2 при достижении значения 00.00, выключает исполнительное устройство,
Исполнительное устройство отключено, и отсчет больше не возобновляется, пока не будет нажата кнопка пуск ▲.

Аналогично тут работает и функция автозапуск.

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

Если через пользовательское меню, функция автозапуск была активирована, после подачи питания на схему таймера, таймер включится снова, и начнет работу по записанным раннее значения в память МК.
Работа таймера будет произведена однократно, по окончанию отсчета исполнительное устройство отключается.

-
таймер обратного отсчета



Тут принцип управления и применения функции ↬ автозапуск, практически не имеет отличий.
Но все же они есть. В работе принимает участие только таймер №1 .

При достижении значения 00:00.00, включается исполнительное устройство, и отсчет останавливается.
Исполнительное устройство будет включено до тех пор, пока не будет нажата кнопка ▼ сброс.

-
секундомер
Управляется кнопками старт ▲ пауза, ▼ сброс. Работа секундомера основана на формате отображения 24 часового цикла.

FUSE

Для программатора в PonyProg и CodeVisionAVR нужно убрать все галочки с настройки тактового генератора.
После прошивки программатором фьюзов от внешнего кварца, контроллер будет читаться программатором только с кварцем.

Внимание! что касается FUSE-битов. Это основной источник ошибок, приводящих к залочиванию контроллера.
- CKSEL3...0 должны быть НЕзапрограммированы.

В PonyProg и CodeVisionAVR стоят так:




Прошивка контроллера должна производится двумя файлами, нех. и еер.. Если вы пользуетесь программой PonyProg тогда е2р это, нех и еер в одном файле.

Комплектующие: ЖКИ 16х2 на базе контроллера HD44780,МК ATmega8 с любой буквой, внешний кварц 8 МГц, пьезодинамик с генератором.

Печатная плата



Монтаж рассчитан для работы с индикатором 1602В. ( Всегда проверяйте, подключение выводов питания индикатора по датшиту. Могут быть отличия у разных производителей)

Работу схемы можно протестировать в proteus'е:




Если при симуляции проекта в proteus'е некорректно отображаются символы кириллицы на ЖКИ, то для правильного отображения кириллицы на ЖК индикаторе распаковать библиотеку LCDrus.zip (приложена в архиве проекта) в папку models proteus'а.



Применение этого таймера: существует множество ситуаций, в которых таймер может оказаться полезным, а иногда - незаменимым. Разнообразие функций таймера как раз и позволит применить его, для какой либо автоматизации в бытовом хозяйстве, организуя нужные периодические или с задержкой включения света, насоса, компрессора. Думаю также, найдутся кулибины, которые применят этот таймер для кормления рыбок, хомячков, полива растений. Вы должны понимать и отдавать себе отчет, что доверять живых существ нескольким байтам интеллекта это может быть черевато…

 

 

Архив проекта: схема, прошивка, фьюзы, печатная плата, proteus.

 

 

 

Форум по таймеру....

 

 

Категория: AVR | Добавил: c2
Просмотров: 16464
Всего комментариев: 1
1 C@at  
Упрощенная версия циклического таймера, но с увеличеной настройкой диапазона времени для таймера №2. <br /> таймер №1 от 1сек до 96 часов (пауза или выкл) ---- таймер №2 от 1 сек _ 96 часов .( включено) Схема таже, отличие только в кварце теперь нужен внешний кварц 4 МГц.
http://c2.at.ua/load/avr/z_t/17-1-0-106

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Конструктор сайтов - uCoz
Copyright MyCorp © 2024