В данном демонстрационном проекте мы рассмотрим задачу сопряжения элемента управления под названием энкодер с микроконтроллером PIC.

Для реализации демонстрационного проекта нам понадобятся:

  • 24-позиционный энкодер;
  • 16 светодиодов (3 мм);
  • драйвер светодиодов A6276;
  • микроконтроллер PIC18F2550.

Энкодер – современный и оригинальный элемент управления цифровыми устройствами, и по внешнему виду похож на переменный резистор (см. рисунок ниже). Другое название этого элемента управления – датчик угла, датчик поворота. Вращение вала сопровождается щелчками, например 24 щелчка на один оборот. Энкодер имеет 3 вывода – A, B, C и применяется для быстрого ввода данных в цифровые устройства. Некоторые модели имеют встроенную кнопку, которая срабатывает по нажатию на вал энкодера (добавляется еще один вывод). 

Энкодер

Энкодер

Принцип работы энкодера

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

Принципиальная схема (нажмите на рисунок, чтобы увеличить его)

Схема энкодера

Выводы энкодера A и B подключаются к портам микроконтроллера RB4 и RB5, вывод С энкодера подключается к «земле». Стоит заметить, что на сигнальные линии выводов A и B должны быть подключены подтягивающие резисторы. Энкодер не случайно подключен к указанным линиям ввода/вывода микроконтроллера: во-первых, порт B имеет встроенные подтягивающие резисторы и нам не придется подключать внешние, во-вторых, порт B микроконтроллера имеет очень полезную функцию – «interrupt-on-change» – прерывание по изменению уровня, что позволит нам отслеживать состояние энкодера.

16 обычных 3 мм светодиодов используются для визуализации вводимых данных и расположены они будут на печатной плате вокруг установленного энкодера. Светодиоды подключены к микросхеме A6276.

Микросхема A6276 представляет собой драйвер светодиодов с 16-битным последовательным вводом информации. Драйвер содержит 16-битный КМОП сдвиговый регистр, соответствующие защелки и драйверы для управления светодиодами и может управлять большим количеством светодиодов, чем это позволяет микроконтроллер. Кроме того, драйвером можно управлять по интерфейсу SPI, что дополнительно сокращает количество используемых линий ввода/вывода и делает проект масштабируемым. 

Подключение энкодера

Программное обеспечение микроконтроллера для решения нашей задачи относительно простое. Реализуется 3 режима работы (ввод информации) и обратная связь:

  • Режим позиционирования на 360° – в этом режиме светодиоды указывают текущую «позицию» энкодера, пользователь может поворачивать вал энкодера влево и вправо на любой угол;
  • Режим «Громкость/Уровень» – в этом режиме светодиоды указывают текущее значение между минимальным и максимальным уровнями диапазона ввода (как уровень громкости в аудиоустройствах);
  • Режим 3-позиционного ротационного тумблера – в этом режиме имеется только три выбираемых позиции, которые пользователь выбирает, поворачивая вал энкодера влево/вправо.

В архиве по этой ссылке находятся проект в среде MPLAB и исходным кодом на Hitech C, а также, принципиальная схема и топология печатной платы

Опубликовано в Разное

Вход

Топ

ЛАБОРАТОРНЫЙ БП…

Эта статья предназначена для людей, которые быстро могут отличить транзистор от диода,…

Выпрямители с…

При разработке регулируемого источника питания без высокочастотного преобразователя…

sPlan 7.0.0.9 Final…

Графический редактор с элементами, позволяющими легко рисовать электрические схемы. Очень…

Цифровой…

Цифровой вольтамперметр предназначенный для установки в блок питания для отображения…

Зарядное устройство…

Ещё одно зарядное устройство собрано по схеме ключевого стабилизатора тока с узлом…
P-CAD 2006

P-CAD 2006 + SP1 +…

Система P-CAD предназначена для проектирования многослойных печатных плат (ПП)…

Зарядное устройство…

Простое зарядное устройство с регулятором зарядного тока можно собрать по схеме…

Автоматическое…

Здравствуйте уважаемые пользователи, хочу представить вам ЗУ для автомобильных АКБ. Вот…

Приставка к…

Участник форума электромобилистов, Курманенко Геннадий Викторович из Днепропетровской…

sPlan 7.0.0.1…

Версия: 7.0.0.1 Разработчик: ABACOMПлатформа: PCСовместимость с Vista: даСистемные…

Регулировка…

Пропорциональное управление – залог тишины! Какая задача ставится перед нашей системой…

Автоматическое ЗУ…

Доброе время суток. Сегодня речь пойдет об ЗУ для АКБ. ( автоматическом зарядном…