Многие радиолюбители-конструкторы собирают различные конструкции, в состав многих электронных устройств собранных ими входит узел управления - клавиатура, которую применяют для ввода различной информации. Она должна иметь защиту от "дребезга" контактов кнопок, а также автоматически повторять код нажатой клавиши при ее удержании более определенного времени. В статье описана простая клавиатура, обладающая перечисленными возможностями.
Клавиатура может быть организована как матрица размерности M x N или набором кнопок с одним общим выводом. В первом случае она позволяет объединить много клавиш при малом числе соединительных линий. Однако ее реализация весьма трудоемка и требует применения шифратора, например, диодного, содержащего большое число элементов, или микропроцессора, микроконтроллера.
Эти устройства не только сложны. Они формируют код, непростой для дешифрации. Клавиатура же с общим выводом гораздо проще в изготовлении. Ее целесообразно применять, когда не требуется большое число клавиш. Шифратор для такой клавиатуры применим простой диодный, хотя он может выдавать неверную информацию при одновременном нажатии нескольких клавиш.
Рис.1.
Более эффективны устройства с последовательным опросом каждой кнопки. Подобную клавиатуру собирают на счетчиках с дешифратором или мультиплексорах. Опрос производят постоянно или при нажатии на кнопку. Во втором случае, когда одновременно нажато несколько кнопок, выдается код клавиши, имеющий больший приоритет, что предотвращает конфликтные ситуации.
При нажатии кнопки на выходе клавиатуры формируются код клавиши и стробирующий сигнал для записи этого кода. В течение некоторого времени клавиатура не должна реагировать на другие нажатия и отпускания клавиш, что необходимо для подавления "дребезга" контактов, который нарушит работу всего устройства. Задержку можно формировать с помощью интегрирующей RC-цепи или одновибратора.
Возможность повторения кода при длительном нажатии клавиши легко обеспечить, применив в элементе задержки одновибратор. В этом случае, когда задержка после нажатия клавиши истекает, а клавиша остается нажатой, одновибратор снова запускается и весь цикл повторяется.
Схема одного из таких вариантов клавиатуры, реализованной на микросхемах ТТЛ, приведена на рисунке 1. Предлагаемая шестнадцатикнопочная клавиатура выполняет функции, перечисленные выше.
Пока не нажата ни одна кнопка, импульсы с тактового генератора на элементах DD3.1 и DD3.2 поступают на вход двоичного счетчика DD4. Мультиплексор DD1, на адресные входы которого подан цифровой код со счетчика DD4, последовательно перебирает входы, к которым подключены контакты клавиатуры. Если какая-то кнопка окажется нажатой, на соответствующем входе мультиплексора будет напряжение низкого уровня.
В момент, когда на адресных входах мультиплексора окажется код, соответствующий нажатой кнопке, на его выходе появится напряжение высокого уровня, которое запустит одновибратор DD2. Одновибратор выдаст сигнал низкого уровня на выход "Строб" и запретит дальнейшую работу генератора. На выходе счетчика DD4 будет присутствовать код, соответствующий нажатой кнопке.
В течение времени, определяемого номиналами элементов R1, R2 и С1, нажатие любых кнопок не вызовет изменения цифрового кода на выходе счетчика DD4. По истечении этого времени на выходе одновибратора DD2 появится напряжение высокого уровня, разрешающее работу генератора. Если за это время кнопка не будет отпущена, цикл повторится. При одновременном нажатии нескольких кнопок будет сформирован код одной из них, что не должно вызвать сбоев в работе системы.
Настройка
Налаживание устройства заключается в установке подстроечным резистором R2 необходимого временного интервала, в течение которого на выходе счетчика DD4 присутствует код нажатой кнопки. Описываемая клавиатура может быть применена в кодовых замках, системах охраны для ввода пароля, в электронных переключателях и в другой аппаратуре. Надежность устройства несколько повысится, если каждый вход мультиплексора DD1 (D0-D15) соединить через резисторы сопротивлением 10 кОм с плюсовым проводом питания.
С. Кулешов