Фильтр по тематике

Таймер на микроконтроллере ATTINY2313 в среде Atmel Studio 6.1

В публикации представлено описание двухканального таймера, программное обеспечение для которого разработано в среде Atmel Studio 6.1.

01.04.2019 1178 0
Таймер на микроконтроллере ATTINY2313 в среде Atmel Studio 6.1

Прежде чем переходить к разговору о таймере, необходимо дать ему хотя бы самое простое определение, например такое: таймер (реле времени) – устройство, предназначенное для коммутации (включения/выключения) внешних цепей питания или управления с нормированными интервалами времени. Автоматизация без таймеров просто невозможна. Основной нормативный отечественный документ, определяющий общие технические условия для реле времени, – ГОСТ 22557-84. Согласно данному документу, эти устройства классифицируют следующим образом:

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

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

Без преувеличения можно сказать, что применение микроконтроллеров вывело разработку подобных устройств на качественно новый уровень: можно легко скорректировать параметры и заданные функции, изменяя при этом фактически только программное обеспечение микроконтроллера. Задачу значительно упрощает использование интегрированных средств разработки, таких как Atmel Studio 6.1.

Atmel анонсировала программную среду Atmel Studio 6.1 в мае 2012 года. Инсталляционный пакет можно скачать с официального сайта компании [1] совершенно бесплатно. Среда Atmel Studio 6.1 – это современный продукт, позволяющий производить все этапы разработки программ для микроконтроллеров серий AVR и ARM. Программный пакет AVR Studio разрабатывается с 2004 года. Начиная с версии 6.0 программа сменила название на Atmel Studio. Она позволяет работать как на ассемблере, так и на C/C++.

Открыть проект в Atmel Studio 6.1 очень просто. После запуска программы нужно выбрать пункт New Project – на экране появится окно построителя. Далее следует выбрать язык проекта. Затем в поле Name: необходимо выбрать имя проекта, а в поле Location: задать путь к месту на жёстком диске, где проект будет храниться.

Для перехода к следующему этапу нужно нажать кнопку OK, затем выбрать тип микроконтроллера, задействованного в проекте (например, ATTINY2313), после чего снова нажать кнопку OK. Теперь можно набирать текст программы или копировать его из другого проекта.

Принципиальная схема двухканального таймера с обратным отсчётом времени на базе микроконтроллера семейства AVRI представлена на рисунке.

Значение задаваемого времени в устройстве – от 1 до 999 (минут или секунд) с дискретностью задания 1 (минута или секунда). Обратный отсчёт времени в минутах или секундах для каждого канала задаётся пользователем. Каналы независимые, но запуск обратного отсчёта времени происходит одновременно для двух каналов. Канал управления нагрузкой № 1 собран на твердотельном реле DA2. Нагрузка подключается к соединителю Х3. Канал управляется с вывода 11 микроконтроллера DD1. Канал управления нагрузкой № 2 собран на твердотельном реле DA1. Нагрузка подключается к соединителю Х2. Канал управляется с вывода 9 микроконтроллера DD1. С порта Р1 микроконтроллер DD1 управляет клавиатурой (кнопки S1…S8) и динамической индикацией. Динамическая индикация собрана на транзисторах VT1…VT3, цифровых 7-сегментных индикаторах HG1…HG3. Резисторы R5…R12 токоограничительные для сегментов индикаторов HG1…HG3. Коды для включения индикаторов HG1…HG3 при функционировании динамической индикации выводятся в порт PB микроконтроллера DD1. Для функционирования клавиатуры задействован вывод 7 микроконтроллера. Сетевое напряжение поступает на соединитель Х1 устройства. Напряжение питания +5 В – на соединитель Х4. Цифровая часть принципиальной схемы таймера гальванически развязана от сети.

В интерфейс устройства входят клавиатура (кнопки S1…S8), лампочки H1, Н2 и блок индикации (дисплей) из трёх цифровых 7-сегментных индикаторов HG1…HG3. Кнопки клавиатуры имеют следующее назначение:

  • S1 ( D ) – увеличение значения при установке времени каналов № 1 и 2 таймера;
  • S2 ( Ñ ) – уменьшение значения при установке времени каналов № 1 и 2 таймера;
  • S3 (C) – кнопка включения/выключения таймера для двух каналов одновременно; при её нажатии начинается работа таймеров каналов – идёт обратный отсчёт заданного времени в обоих каналах;
  • S4 (ИН1) – кнопка инвертирования нагрузки (вкл/выкл) для канала №1;
  • S5 (мин/сек1) – кнопка выбора времени счёта (минуты или секунды) для канала № 1;
  • S6 (ИН2) – кнопка инвертирования нагрузки (вкл/выкл) для канала № 2;
  • S7 (мин/сек2) – кнопка выбора времени счёта (минуты или секунды) для канала № 2;
  • S8 (Режим) – кнопка выбора режима работы таймера: канал № 1 или канал № 2 (в режиме задания времени при нажатии на данную кнопку осуществляется выбор канала; при отсчёте заданного времени нажатие на данную кнопку запускает просмотр текущих значений; в режиме «Канал № 1» задаётся время для канала № 1; после нажатия кнопки S3 (C) индицируется обратный отсчёт времени (в минутах или секундах) – как только заданное значение времени станет равно нулю, нагрузка № 1 инвертируется; первоначальное состояние нагрузки задаётся кнопкой S4 (ИН1); аналогично работает канал управления № 2).

Разряды индикации интерфейса имеют следующие назначения:

  • 1-й разряд (индикатор НG3) отображает единицы минут (единицы секунд);
  • 2-й разряд (индикатор НG2) отображает десятки минут (десятки секунд);
  • 3-й разряд (индикатор НG1) отображает сотни минут (сотни секунд).

В режиме «Канал № 2» у индикатора НG1 горит точка h. Если отсчёт времени канала идёт в секундах, то заданное время уменьшается с каждой секундой. Если отсчёт времени канала идёт в минутах, то в обоих каналах с периодом 1 с мигает точка h у индикатора НG3.

Фактически весь алгоритм работы таймера реализован в процедуре обработки прерывания по совпадению таймера Т1. Основные фрагменты программы:

  • определение времени отсчёта (минуты или секунды) для канала № 1 (начало процедуры прерывания);
  • определение времени отсчёта (минуты или секунды) для канала № 2 (метка LК3);
  • уменьшение времени канала № 1 (метка L4);
  • увеличение времени канала № 1 (метка m0);
  • уменьшение времени канала № 2 (метка LL4);
  • увеличение времени канала № 2 (метка mL0);
  • опрос клавиатуры (метка m1);
  • вывод значения времени каналов на дисплей (метка ms1).

Фрагмент программы для кнопок уменьшения и увеличения задаваемого значения времени представлен в листинге 1, где flag1, flag2 – флаги состояний кнопок; pusk1, pusk11 – флаги уменьшения значения времени для каналов № 1 и 2 соответственно; pusk2 – флаг увеличения значения времени.

Данный фрагмент программы на ассемблере представлен в листинге 2. Flo, flo1 – регистры, где определены биты управления.

Разработанная программа на C++ занимает порядка 1,5 Кбайт памяти программ микроконтроллера. Потребление тока по каналу напряжения +5 В, не более 50 мА. В схеме, представленной на рисунке, применены конденсаторы С1, С2, С4, С5 типа К10-17а, конденсаторы С3, С6 типа К50-35. Номинальный ток предохранителей FU1, FU2 – 1,1 А. Тип – ВП1-1,1А (1,1А/250В). Держатели плавких вставок типа ДВП4-1в. Номинальный ток предохранителя можно выбрать исходя из номинального тока подключаемой нагрузки. Ответные части (розетки) к соединителям Х1…Х3 типа PHU-2. Ответная часть к соединителю Х4 – розетка типа HU-2. Исходный текст программы для двухканального таймера и hex-файл представлены в дополнительных материалах к статье на сайте журнала www.soel.ru. Для изменения параметров и функций представленного устройства (изменения программного обеспечения) текст нужно скопировать в открытый проект Atmel Studio 6.1, а затем после компиляции новый hex- файл зашить в микроконтроллер.

Литература

  1. www.atmel.com
  2. Голубцов М.С., Кириченкова А.В. Микроконтроллеры AVR: от простого к сложному. – М.: СОЛОН-Пресс, 2005. – 304 с.

Скачать

DOPmaterialy.zip / ZIP, 4 КБ

Если вам понравился материал, кликните значок — вы поможете нам узнать, каким статьям и новостям следует отдавать предпочтение. Если вы хотите обсудить материал —не стесняйтесь оставлять свои комментарии : возможно, они будут полезны другим нашим читателям!

01.04.2019 1178 0
Комментарии
Рекомендуем
К 130-летию со дня рождения великого советского физика Игоря Евгеньевича Тамма. Часть 4. История возникновения  концепции поляритонов

К 130-летию со дня рождения великого советского физика Игоря Евгеньевича Тамма. Часть 4. История возникновения концепции поляритонов

В прошлом году в журнале «Современная электроника» были опубликованы три статьи, посвящённые юбилею выдающегося российского физика-теоретика Игоря Евгеньевича Тамма (СОЭЛ № 7–9, 2025). В частности, были описаны современные быстродействующие электрооптические модуляторы, поверхностные состояния Тамма, запрещённые фотонные зоны и фотонные кристаллы. В этих статьях умышленно не затрагивались темы поляритонов, оптических состояний Тамма (ОСТ) и плазмон-поляритонов Тамма (ППТ). Поскольку ключевой вклад в раннюю разработку этих явлений в основном принадлежит российским учёным, целесообразно посвятить их открытию более подробные отдельные статьи. Ниже рассмотрены два основных типа гибридных фотонных частиц: экситон-поляритоны и фонон-поляритоны.  
24.04.2026 СЭ №4/2026 188 0
Телевизор с электронно-лучевой трубкой: разработки С.И. Катаева и их значение

Телевизор с электронно-лучевой трубкой: разработки С.И. Катаева и их значение

«…Наступит время… когда миллионы таких приборов, таких "электрических глаз" будут всесторонне обслуживать общественную и частную жизнь, науку, технику и промышленность…» Б. Розинг Семён Исидорович Катаев (1904–1991 гг.), советский учёный и изобретатель в области телевидения, доктор технических наук, профессор, заслуженный деятель науки и техники – незаслуженно обделён вниманием популяризаторами истории электроники и телевидения в нашей стране. Тем не менее И.С. Катаев внёс значительный вклад в развитие инженерной мысли в СССР при разработке и усовершенствовании электронно-лучевых трубок (ЭЛТ), ставших на многие годы ключевой технологией, лежащей в основе экранов телевизоров и оборудования различного назначения. Катаев дополнил изобретение Зворыкина и по праву может считаться ещё одним «отцом» отечественного телевидения. В найденных документах роль Катаева прослеживается чётко, и в статье мы хотим это показать.
23.04.2026 СЭ №4/2026 177 0
Электронные системы диагностики, стимуляции и воздействия на человека на примере BAMH и управления –  на примере AE-Skin

Электронные системы диагностики, стимуляции и воздействия на человека на примере BAMH и управления – на примере AE-Skin

Путь будущих разработок в области современной электроники пролегает от визуального отображения окружающего пространства до тактильного. В этой связи представляют интерес система Bioinspired Adaptable Multiplanar mechano-vibrotactile Haptic (BAMH) – пневматически активируемый роботизированный электронный комплекс с интерфейсом из мягкого материала и система AE-Skin, обеспечивающая интерфейс между кожей человека и физическими поверхностями. Принцип её действия достаточно известен и заложен в управлении интерактивными экранами. В первой части статьи рассматриваются особенности новых разработок в области медицинской электроники и перспективы тактильного воздействия на кожу человека для лечения и изменения настроения. Во второй части представлен подробный разбор AE-Skin и примеры её совершенствования во всех сферах жизни человека: от управления посредством электронных тактильных датчиков миниатюрной формы до устройств на основе новых технологий, воспринимающих движения руками без прикосновения и без применения пироэлектрических детекторов, как управляющие сигналы для РЭА.
17.04.2026 СЭ №4/2026 225 0

ООО «ИнСАТ»  ИНН 7734682230  erid = 2SDnjdWbKyt
ООО «ИнСАТ»  ИНН 7734682230  erid = 2SDnje2F5cn
  Подписывайтесь на наш канал в Telegram и читайте новости раньше всех! Подписаться