Главная » Микроконтроллеры
Призовой фонд
на январь 2017 г.
1. 1000 руб.
Radio-Sale
2. Регулируемый паяльник 60 Вт
Паяльник
3. 600 руб.
От пользователей
4. Тестер компонентов LCR-T4
Паяльник

Контроль 15-ти контактов одним входом PIC-микроконтроллера

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

В данном небольшом проекте используется всего лишь один вывод микроконтроллера для контроля нажатия до 15 кнопок. Используемый микроконтроллер должен иметь на борту встроенный компаратор с выбираемыми значениями для внутреннего источника опорного напряжения VREF. Большинство 8-битных PIC микроконтроллеров среднего семейства имеют один или два внутренних компаратора, что вполне подходит для выполнения нашего проекта.

Алгоритм работы следующий:

1. Состояние простоя, Vref = (1 / 24).Vdd. Vcin- = 0 < Vref --- Cout = 1

2. Нажата любая кнопка --- Vcin->Vref --- Cout = 0 --- Вызов прерывания

3. Внутри прерывания, увеличивается Vref = (i / 24).Vdd, где i = от 2 до 15, пока Vref > Vсin- --- Cout = 1 далее --- была нажата кнопка Btn(i-1).

(если Vref остается < Vсin-, тогда i = 16 --- была нажата кнопка Btn15)

4. Четыре светодиода будут отображать двоичный код нажатой кнопки.

Схема контроля нажатия 15 кнопок
Рисунок 1 Схема контроля нажатия 15 кнопок

На Рисунке 1 показан 8-битный микроконтроллер PIC12F683, контролирующий 4-битный светодиодный дисплей, который отображает какая из кнопок была нажата. Программа обработки прерывания от компаратора мгновенно реагирует на любую нажатую кнопку. Подпрограмма проверяет по кругу значения VREF, пока на выходе компаратора COUT не появляется высокий потенциал, который будет означать, что одна из кнопок была нажата.

Полностью завершенный программный код на ассемблере с комментариями имеет всего лишь 100 слов. Он не слишком оптимизирован, поэтому вы сможете с легкостью его адаптировать для любого другого микроконтроллера.

Оригинал статьи

Теги:

Опубликована: 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (1) | Я собрал (0) | Подписаться

0
Юрий #
А что будет если нажать, случайно, сразу две?
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется сила тока?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Pickit 2 - USB-программатор PIC-микроконтроллеров
Pickit 2 - USB-программатор PIC-микроконтроллеров
Автомобильный GPS-трекер с GSM/GPRS и дистанционным управлением Discovery V8
вверх