Представляю вторую версию двухканального циклического таймера. Были добавлены новые функции и изменилась принципиальная схема. Циклический таймер позволяет включать и выключать нагрузку, а также выдерживать паузу на заданные интервалы времени в циклическом режиме. Каждый из выходов таймера имеет 2 режима работы - "Логический" и "ШИМ". Если выбран логический режим устройство позволяет управлять с помощью контактов реле освещением, отоплением, вентиляцией и другими электроприборами. Нагрузкой могут выступать любые электрические приборы мощность нагрузки которых не превышает максимального тока реле. Тип выхода "ШИМ" позволяет например подключить через силовой транзистор двигатель постоянного тока, при этом есть возможность установить скважность ШИМ, чтобы двигатель вращался с определенной скоростью.

Принцип работы таймера показан на графике ниже:

Возможности устройства
- 2 канала;
- 2 режима выхода(Логический, ШИМ);
- Регулировка скважности ШИМ;
- 3 частоты ШИМ(32, 4 и 0,5кГц);
- Максимальная установка таймера 1, 2 и паузы 1, 2 - 99 минут 59 секунд;
- Максимальное количество циклов - 99;
- Управление подсветкой дисплея через меню;
- Сохранение настроек в памяти микроконтроллера;
- Прошивки на русском и английском языке.

Схема устройства

Таймер построен на базе микроконтроллера ATmega328. Для более точного отсчета времени тактирование осуществляется от внешнего кварца на 8МГц. Дисплей используется с контроллером HD44780 или его аналог, 16 символов, 2 строки. После первого включения резистором R1 необходимо отрегулировать контрастность дисплея. Подсветка дисплея имеет 3 режима работы - включена, выключена и "Авто". Если выбран режим "Авто" и кнопки не нажимались в течение 10 секунд то подсветка отключается.

Настройка осуществляется с помощью 4-х кнопок: "Меню/Вперед", "Назад", "+", "-". Если в режиме меню кнопки не нажимались в течение 60 секунд, таймер автоматически переходит в ждущий режим без сохранения настроек. Каждое нажатие кнопки подтверждается сигналом зуммера. Зуммер применен обычный без встроенного генератора, высокоомный. Если сигнал не нужен его можно отключить в меню.

Запускается таймер при помощи кнопки "Старт", останавливается автоматически или при нажатии на кнопку "Стоп". В режиме ожидания на дисплее высвечивается информация об установленном времени таймера 1, 2 и времени паузы 1, а также количество циклов. В рабочем(запущенном) состоянии на индикаторе ведется обратный отсчет времени таймера 1, затем паузы 1, затем таймера 2 и паузы 2, а также количества оставшихся циклов. Если значение цикла равно нулю, цикл будет повторяться бесконечно, а на дисплее появится соответствующий знак.

Настройка таймера

Для входа в меню нажмите кнопку "Меню/Вперед", далее необходимо настроить параметры Таймера 1, кнопками "+" или "-" вводим необходимое значение для минут, причем разряд минут мигает 2 раза в секунду, снова нажимаем кнопку "Меню/Вперед", вводим необходимое значение для секунд, разряд секунд мигает также 2 раза в секунду. Таким же способом настраиваются Таймер 2 и Пауза 1 и Пауза 2, т.е. кнопками "Меню/Вперед" и "Назад" можно перемещаться по меню, а кнопками "+" или "-" вводить необходимые значения. Настройки сохраняются врючную с подтверждением в меню "Сохранить настройки". Обязательно должны быть выставлены значения для Таймера 1 и Паузы 1 или для Таймера 2 и Паузы 2 или для Таймера 1 и Таймера 2 иначе таймер не запустится.

Версия таймера V2.1:

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

Версия таймера V3.0:

- Схема незначительно изменилась;

- Версия с миллисекундами, т.е. минимальная выдержка равна 0,01с, максимальная 99,99с.

Версия таймера V4.0:

- Схема незначительно изменилась;

- Добавлен экран отображения общего времени, переключение между экранами только в режиме отсчета, осуществляется кнопками "+" и "-", причем если количество циклов равно нулю т.е. бесконечность, переключение на экран общего времени не происходит.

Биты конфигурации микроконтроллера:

Low: 0xCD, High: 0xD9, Extended: 0xFF


Файлы к статье "Двухканальный циклический таймер на Atmega328"
Описание:

Файл прошивки для микроконтроллера

Размер файла: 59.73 KB Количество загрузок: 537 Скачать

Комментарии  

0 #1 DENISCHERNYUK 12.12.2019 15:47
Доброго времени суток . Интересует несколько вопросов . 1: Какие пределы регулировки скважности( можно ли остановить двигатель полностью ). 2: Если вдруг выключат в доме электричество -таймер перейдёт в режим стоп ? И последний вопрос , дайте пожалуйста ссылку где продают такие дисплеи с кириллицей . Всем помогающим спасибо заранее .
Сообщить модератору
0 #2 AntonChip 13.12.2019 23:37
1. Регулировка ШИМ от 0 до 100%
2. Если в момент включения электропитания кнопка старт будет замкнута таймер запустится
Сообщить модератору
0 #3 Кинкон Дилан 03.11.2020 04:44
Сделайте пожалуйста версию с миллисекундами. Шаг 0.1 сек а лучше 0.01.
Сообщить модератору
0 #4 AntonChip 08.11.2020 13:40
Цитирую Кинкон Дилан:
Сделайте пожалуйста версию с миллисекундами. Шаг 0.1 сек а лучше 0.01.

Здравствуйте, прошивку изменил, схема тоже немного поменялась, шаг установки 10мс, прошивку прикрепил к файлам для статьи
Сообщить модератору
0 #5 Кинкон Дилан 08.11.2020 23:20
AntonChip , спасибо Вам! :-)
Сообщить модератору
0 #6 Кинкон Дилан 08.11.2020 23:38
AntonChip, прошивка для латиницы или кириллицы? Желательно латиницу.
Сообщить модератору
0 #7 AntonChip 09.11.2020 08:18
Цитирую Кинкон Дилан:
AntonChip, прошивка для латиницы или кириллицы? Желательно латиницу.

пока только латиница
Сообщить модератору
0 #8 Кинкон Дилан 13.11.2020 10:15
AntonChip, скажите пожалуйста, если установить минимальное время цикла в 10мс, то при нажатии на кнопку "пуск" по времени более 10мс, первый цикл отработает в 10мс? Если нет может быть сделать запуск цикла после нажатия и отпускания кнопки "пуск"?
Сообщить модератору
0 #9 Вадим_ 13.03.2022 07:09
Здравствуйте! Возможно переделать программу в 2х канальный счетчик импульсов с частотой до 2..3кГц от 2х независимых внешних устройств? Два выхода на реле, с установкой количества считаемых импульсов (не более 64000) - пауза1, Вых1, пауза1, Обнуление и независимо -пауза2, Вых2, пауза2, обнуление в 1...99(и бесконечно) цикле для каждого канала, Вывести на отдельные ножки сигналы паузы (как на реле), сигналы нечетных циклов (1,3,5... - тригер) и окончания циклов на отдельные ножки?
Сообщить модератору
0 #10 AntonChip 13.03.2022 15:53
Цитирую Вадим_:
Здравствуйте! Возможно переделать программу в 2х канальный счетчик импульсов с частотой до 2..3кГц

Исходя из вышеизложенных параметров имеет смысл написать программу с нуля
Сообщить модератору
0 #11 Вадим_ 15.03.2022 01:33
Здравствуйте! Что от меня потребуется для этого? Я готов! bjk(СОБАК)bk,ru напишите, как с Вами связаться?
Сообщить модератору