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

Многоканальный счётчик на микроконтроллере

В статье описан шестиканальный счётчик, каждый канал которого может осуществлять прямой, обратный или реверсивный счёт. Поясняется алгоритм работы устройства, схемотехника и программное обеспечение.
01.02.2013 339 0
Многоканальный счётчик на микроконтроллере

Структурная схема шестиканального счётчика представлена на рисунке 1. Счётчик состоит из семи функциональных узлов: платы клавиатуры

и шести счётных каналов (№ 1 – 6).

Фактически каждый счётный канал представляет собой независимый счётчик, который разработан на ба

зе микроконтроллера фирмы Atmel AT89C405124PI. Принципиальная схема одного канала (счётчика № 1) показана на рисунке 2. Счётчики № 1 – 6 идентичны по схеме и конструкции. Принципиальная схема платы клавиатуры представлена на рисунке 3.

Интерфейс устройства содержит галетный переключатель SA1, клавиату

ру (кнопки S1 – S5), световые полосы HL1 – HL4 и блок индикации (дисплей) из пяти цифровых семисегментных индикаторов HG1 – HG5. Галетный переключатель SA1 платы клавиатуры имеет шесть положений «1», «2», …, «6». Если SA1 установлен в положение «1», то клавиатура (кнопки S1 – S5) подключены к счётчику № 1. В этом случае можно задать параметры для счётчика № 1. Если SA1 установлен в положении «2», можно задать параметры счётчика № 2, и т.д.

Рассмотрим подробно работу и схему счётчика № 1. Алгоритм работы данного счётчика следующий. Увеличение результата счёта (числа, отображаемого на индикаторах устройства) на единицу (инкремент) происходит в момент перехода входного сигнала из лог. 1 в лог. 0 на выводе 9 микроконтроллера DD2. При этом на выводе 11 микроконтроллера DD2 должен присутствовать сигнал лог. 1. Соответственно, уменьшение результата счёта на единицу (декремент) происходит в момент перехода входного сигнала из лог. 1 в лог. 0 на выводе 11 микроконтроллера DD2. При этом на выводе 9 должен присутствовать сигнал лог. 1. Любые другие комбинации уровней и их перепадов состояние счётчика не изменяют.

Алгоритм работы счётчика предусматривает задание уставки № 1 и управление внешним исполнительным устройством № 1 (сигнал «выход 1» в соединителе Х1 или вывод 7 микроконтроллера DD2). При инициализации на выводе 7 микроконтроллера DD2 устанавливается лог. 1. Если текущее значение счётчика равно заданной уставке, то включаются звуковая (пьезоэлектрический излучатель ВА1) и световая сигнализация (индикатор HL4), на выводе 3 микроконтроллера DD2 устанавливается лог. 0, включая исполнительное устройство.

В устройстве три режима работы: «счёт», «установка счётчика», «уставка № 1». В режиме «счёт» осуществляется прямой и обратный счёт импульсов, поступающих на выводы 9, 11 микроконтроллера DD2. Текущее значение отображается на дисплее устройства и сравнивается с уставкой № 1. В режиме «уставка № 1» устанавливается значение счётчика. В режиме «установка счётчика» может быть введено любое необходимое значение счётчика. В режимах «установка счётчика» и «уставка № 1» запрещается прямой и обратный счёт счётчика, независимо от комбинации уровней на входе счётчика и их перепадов.

Кнопки клавиатуры (S1 – S5 на рис. 3) имеют следующее назначение:

●             S1 (Р) – выбор режима работы устройства в замкнутом цикле («счёт», «установка счётчика», «уставка № 1»); после подачи питания устройство сразу переходит в режим «счёт», и каждое нажатие данной кнопки переводит устройство в следующий режим;

●             S2 () – увеличение на единицу значения каждого разряда в режимах «уставка счётчика», «уставка № 1»; каждое нажатие на данную кнопку увеличивает на единицу выбранный разряд;

●             S3 () – уменьшение на единицу значения каждого разряда в режимах «установка счётчика»; каждое нажатие на данную кнопку уменьшает на единицу выбранный разряд;

●             S4 (В) – выбор разряда при установке текущих значений в режимах «установка счётчика», «уставка № 1»; в выбранном разряде (индикаторы HG1 – HG5), включается точка h. При первом нажатии на кнопку точка h включается у первого разряда (индикатора HG5), при втором нажа

тии – у второго разряда (индикатор HG4), и т.д.;

●             S5 (С) – обнуление счётчика независимо от его текущего состояния. Данная функция применима ко всем режимам работы устройства. Кроме того, эта кнопка принудительно выключает световую и звуковую сигнализацию и отключает исполнительное устройство (вывод 7 DD2 устанавливается в лог. 1). Для функционирования клавиатуры задействован вывод 8 (P3.4) микроконтроллера DD2.

Разряды индикации интерфейса имеют следующее назначение (справа налево по рисунку 2):

●             1й разряд (индикатор НG 5) отображает единицы во всех режимах;

●             2й разряд (индикатор НG 4) отображает десятки во всех режимах;

●             3й разряд (индикатор НG 3) отображает сотни во всех режимах;

●             4й разряд (индикатор НG 2) отображает тысячи во всех режимах;

●             5й разряд (индикатор НG 1) отображает десятки тысяч во всех режимах.

Индикаторы интерфейса управления имеют следующее назначение:

●             HL1 – индикатор режима «счёт»;

●             HL2 – индикатор режима «установка счётчика»;

●             HL3 – индикатор режима «уставка № 1»;

●             HL4 – индикатор световой сигнализации.

Сразу после подачи питания на выводе 1 микроконтроллера DD1 посредством RCцепи (R6С1) формируется сигнал аппаратного сброса микроконтроллера DD2. При инициализации во все разряды портов микро

контроллера DD1 записываются лог. 1. Счётчик № 1 сразу переходит в режим «счёт» (горит индикатор HL1).

В режиме «счёт» при совпадении текущего значения счётчика с уставкой № 1 на 10 с включается прерывистая звуковая ВА1 и световая HL4 сигнализации с интервалами включения и выключения 1 с; сигнал «выход 1» устанавливается в лог. 0. Если текущее значение счётчика равно или больше уставки № 1, то «выход 1» устанавливается в лог. 0.

Рассмотрим функциональные узлы счётчика № 1. Основой устройства является микроконтроллер DD2, рабочая частота которого задаётся генератором с внешним резонатором ZQ1 на 10 МГц. Динамическая индикация реализована на транзисторах VT1 – VT5, цифровых семисегментных индикаторах HG1 – HG5 и управляется с порта P1 микроконтроллера DD2 и выходов регистра DD1. Коды для включения индикаторов поступают в порт Р1 микроконтроллера DD2. Регистр DD1 управляет внутренними исполнительными устройствами: звуковой сигнализацией (пьезоэлектрический излучатель ВА1), световой сигнализацией (индикатор HL4) и семисегментными индикаторами HG1 – HG5. Резисторы R7 – R14 ограничивают ток через сегменты индикаторов.

Программное обеспечение микроконтроллера было разработано в среде mVision2. В памяти данных микроконтроллера по адресам с 30Н по 39Н организован буфер отображения для динамической индикации. По своему функциональному назначению, в зависимости от режима работы устройства, адресное пространство буфера поделено на две функциональные группы. По адресам 30Н – 34H хранится текущее значение счётчика; они выводятся на индикацию в режимах «счёт» и «установка счётчика». По адресам 35Н – 39H хранится значение уставки № 1, которое выводится на индикацию в режиме «уставка № 1».

Каждый байт из функциональной группы в цикле подпрограммы обработки прерывания таймера TF0 после перекодировки выводится в порт Р1 микроконтроллера DD2. В подпрограмме обработки прерывания вначале происходит опрос входов Р3.5 и Р3.7. Если на входе Р3.5 присутствует лог. 0, устанавливается флаг INKR, который разрешает увеличивать текущее значение счётчика. Если на входе Р3.7 присутствует лог. 0, устанавливается флаг DEKR, который разрешает уменьшать текущее значение счётчика.

После опроса входов Р3.5 и Р3.7 начинается опрос клавиатуры. Перед работой с клавиатурой необходимо установить в соответствующее положение галетный переключатель SA1. Нажатием кнопки S1 сдвигается влево единица в регистре R2 микроконтроллера DD2, тем самым задаётся один из трёх режимов работы. При инициализации в регистр R2 записывается число 00000001. При нажатии кнопки S2 устанавливается бит KNOPB, который разрешает увеличение задаваемого значения, отображаемого на индикаторах HG1 – HG5. При нажатии кнопки S3 устанавливается бит KNOPM, разрешающий уменьшение задаваемого значения. Нажатием кнопки S4 сдвигается влево единица в регистре R3 микроконтроллера DD2, тем самым выбирается разряд для изменения задаваемого значения.

При инициализации в регистр R3 записывается число 00000001. При нажатии на кнопку S5 в адреса с 30Н по 34Н записываются нули, т.е. счётчик обнуляется. Кроме того, сбрасывается флаг звуковой и световой сигнализации BUDS1, – сигнализации выключаются. В регистр R0 записывается первый адрес функциональных групп. В режимах «счёт», «установка счётчика» – это 30Н, в режиме «уставка № 1» – это 35Н. Каждые 3 мс в подпрограмме обработки прерывания инкрементируется регистр R0.

Частота счёта определяется частотой прерывания от таймера Т0, а также временем обработки подпрограммы обработки прерывания. В основной программе осуществляется инкремент и декремент счётчика, установка текущего значения счётчика, ввод уставки и сравнение текущего состояния счётчика с уставкой. На рисунке 4 представлена фотография макета одного канала устройства. Клавиатура установлена на плате счётчика.

Разработанная на ассемблере программа занимает не более 1 Кб памя

ти программ микроконтроллера. В устройстве использованы резисторы

С233Н0,125, подойдут любые другие с той же мощностью рассеивания и допуском 5%. Конденсаторы С1, С4 – типа К5035. Конденсаторы С2 – С4 – К1017. Индикаторы HG1 – HG5 – зелёного цвета типа HDSPF501. Индикаторы HL1 – HL4 – типа KB2300EW красного цвета. Можно подобрать другие, более яркие, или с другими габаритами. Пьезоэлектрический излучатель ВА1 НРМ14АХ можно заменить на НРА17АХ или НРА14АХ.

Питающее напряжение поступает на плату устройства через соединитель Х2. Потребление тока по каналу +5 В не превышает 600 мА. В устройстве нет никаких настроек и регулировок. Если монтаж выполнен правильно, оно начинает работать сразу после подачи питания.

Незадействованные программные ресурсы микроконтроллера можно использовать, например, для изменения алгоритма работы счётчика. Коды «прошивки» микроконтроллера DD2 в формате Intel HEX приведены в листинге 1, который находится в дополнительных материалах к статье на интернетстранице журнала (www.soel.ru).

© СТА-ПРЕСС

Скачать

456933.rar / RAR, 31 КБ

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

01.02.2013 339 0
Комментарии
Рекомендуем
Проверяемое автономное управление: архитектура контроля решений ИИ в киберфизических и распределённых системах Электроника и автоматизация

Проверяемое автономное управление: архитектура контроля решений ИИ в киберфизических и распределённых системах

В статье рассматривается архитектура SEACS (Self-Evolving Autonomous Control System), предназначенная для построения проверяемого контура автономного управления в распределённых и киберфизических системах. В отличие от подходов, где успешный вызов модели или выполнение команды трактуется как завершение задачи, SEACS разделяет наблюдение, оценку состояния, выбор решения, исполнение и последующую проверку фактического результата. Рассматриваются механизмы управления риском и доверием, гистерезиса, задержки повторных воздействий, резервных сценариев и передачи решения человеку. Отдельное внимание уделено воспроизводимым испытаниям, требованиям к данным и метрикам, а также ограничениям исследовательского прототипа.
30.10.2026 СЭ №8/2026 214 0
К 130-летию со дня рождения великого советского физика Игоря Евгеньевича Тамма. Часть 7. Оптические уровни  и плазмон-поляритоны Тамма Электроника и автоматизация

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

Эта статья завершает серию публикаций о научном наследии Игоря Тамма, в которой была проанализирована эволюция идей Тамма и его учеников от 1930-х годов до наших дней. Среди различных направлений, которыми в различные периоды своей жизни занимался Игорь Тамм, мы остановились на тематике, связанной с взаимодействием света с электронами на границе металла и диэлектрика. Данное направление, начавшееся с разработки теории «таммовских поверхностных состояний», логически продолжилось открытием оптических состояний Тамма (Optical Tamm States – OTS), а затем плазмон-поляритонов Тамма (Tamm Plasmon-Polaritons – TPP). Именно этим двум явлениям посвящена настоящая статья.
28.10.2026 СЭ №8/2026 229 0

Реклама
Реклама.  ООО «Остек-СМТ»  ИНН 7731481045  erid = 2SDnjchs19E
Реклама
Реклама.  ООО «Остек-СМТ»  ИНН 7731481045  erid = 2SDnjdHxidA
  Подписывайтесь на наш канал в Telegram и читайте новости раньше всех! Подписаться