Блок управления пользователем функциями устройства (кнопки)

Блок представляет собой набор кнопок, при нажатии на которые выполняются определённые действия. Действия определяются прошивкой микроконтроллера ATMega1281.

Рассмотрим некоторые способы подключения кнопок.

. Подключение клавиатуры на сдвиговых регистрах. Часто возникает необходимость использования в своем проекте большого количества кнопок для различный целей. Максимальное количество кнопок ограничивается лишь максимально допустимым временем на сканирование клавиатуры. Помимо самих кнопок и идущих с ними резисторов, дополнительные элементы: сдвиговые регистры представленные микросхемой sn74198n. Сдвиговые регистры - вещь довольно удобная за счет своей дешевизны и универсальности. Их часто используют для подключения элементов по небольшому количеству выводов микроконтроллера. Рассмотрим пример подключения восьми кнопок на рисунке 2.2.

Рис. 2.2 Схема клавиатуры на сдвиговых регистрах[3].

Состоит такая схема из трёх блоков: блок клавиатуры, блок сдвиговых регистров и блок микроконтроллера. На таком сдвиговом регистре осуществляется последовательная и параллельная передача данных. Параллельной передачей данных называют метод передачи нескольких сигналов с данными одновременно по нескольким параллельным каналам, например порт целиком, сразу все восемь бит. При последовательной передачи данных биты пересылаются по одной линии связи, друг за другом, последовательно. Одним выводом кнопки подключены к входу сдвигового регистра. Одним выводом кнопки подключены к входу сдвигового регистра. Как только кнопка замыкается, на входе сдвигового регистра образуется логический ноль, так как он оказывается напрямую подключен к общему проводу. Такая схема не требует особых дополнительных затрат, так как подобный сдвиговый регистр стоит порядка 15 рублей, а размеры клавиатуры на плате зависят непосредственно от количества кнопок.

. Клавиатура на резистивных делителях. Идея такого способа, так же как и предыдущего является экономия ножек контроллера, либо избавление от их нехватки. Один из таких вариантов - поставить цепочку резисторов и кнопками замыкать их на землю. Такой вариант представлен на рисунке 2.3.

Рис. 2.3 Схема клавиатуры на резистивных делителях 1[3].

Работает данная схема примерно так:

Если не нажата ни одна кнопка, то выход Vout подтянут к Vref через резистор R1, соответственно Vout = Vref.

Если нажата кнопка S1, то она тянет Vout к земле, и на выходе Vout=0.

Если нажата кнопка S2, то схема преобразуется в резистивный делитель: верхнее плечо образует резистор R1, нижнее плечо - R2. Поскольку номиналы этих резисторов равны, то на выходе Vout = Vref / 2.

Если нажата кнопка S3, то в нижнее плечо включается резисторы R2 и R3, и коэффициент деления стал 2/3.

Кнопка S1 - 0 значение АЦП, S2 - 128 значение АЦП, S3 - 170 значение АЦП, S4 - 191 значение АЦП, S5 - 204 значение АЦП, значение АЦП 255 - кнопки отжаты. При восьми битном АЦП, другими словами при Vout = Vref его значение 255, к десятой кнопке будет не возможно распознавать какая кнопка нажата. Но и на это случай есть своё решение рисунок 2.4.

Рис. 2.4 Схема клавиатуры на резистивных делителях 2[3].

Если посмотреть глобально, то принцип остался такой же - одно плечо делителя неизменно, другое формируется из комбинации резисторов в зависимости от нажатых кнопок. Весь интерес в том, что подобрав значения резисторов, можно расширить диапазон изменения напряжения Vout (например, в прошлой схеме напряжения меньше чем Vref/2 получить не удавалось). Посмотрим подробнее на комбинации резисторов. При нажатии кнопки в верхнее плечо делителя подключается от 0 до 3 резисторов Ra, Rb, Rc и от 0 до 3 резисторов Rd, Re, Rf. Для упрощения расчетов примем значения Ra = Rb = Rc = R1, Rd= Re = Rf = R2. Для того чтобы не перепутать кнопки, соотношение резисторов R1/R2 должно быть не менее 4, R1=10k, а R2=40k. Теперь значения АЦП выглядят так:(3,3)=54, S(3,2)=57, S(3,1)=60, S(3,0)=64;(2,3)=68, S(2,2)=73, S(2,1)=78, S(2,0)=85;(1,3)=93, S(1,2)=102, S(1,1)=113, S(1,0)=128;

Перейти на страницу: 1 2

Прочтите также:

Инженерно-психологическое и эргономическое проектирование Монитора пациента
В настоящее время непрерывно расширяется область применения методов регистрации параметров биосигналов в практических и исследовательских задачах. Современный уровень научных достижений ...

Разработка цифрового датчика скорости
погрешность Поставленная задача звучит таким образом: Программным способом реализовать датчик угловой скорости вращения электродвигателя. В современных системах управлен ...

Разработка методики автоматизации процесса измерения температуры в печи универсальной испытательной установки УМЭ-10ТМ. Метрологические характеристики установки и расчет погрешностей измерения
Диапазон рабочих температур печи: 400ºС - 1000ºС. Погрешность измерения не более 1% от реального значения температуры. Для снятия, обработки и регистрации данных эксперимента ...

Основные разделы

2020 © Все права защищены! >> www.techeducator.ru