| ||
|
|||||||||
Cайт и форум для электриков HARDW.net |
Клавиатурная матрица 3х4. Подключаем к КР1878ВЕ1Здесь используется опрос клавиатуры "змейкой", то есть подается логический 0 на строку клавиатуры и проверяются по очереди состояния линий ввода микроконтроллера подключенных к столбцам клавиатуры, если логический 0 не обнаружен ни на одном столбце, то переходят к проверке следующей строки клавиатуры. Как только обнаружено нажатие кнопки, по смещению (счетчику) key_code в таблице sym_set находится код нажатой кнопки. Таблица используется для настройки программы на конкретный вид клавиатуры (размещение на ней кнопок). Защита от автоповтора (при длительном удержании кнопки) и от дребезга, реализована на основе стека нажатых кнопок (при прощлых опросах клавиатуры) key1, key2 и key_code. Если при опросе клавиатуры нажатие кнопки не обнаружено, то код кнопки key_code=12. При каждом опросе клавиатуры, перед выходом из подпрограммы keyboard, проводится процедура key1=key2, key2=key_code. Кнопка считается нажатой, если key1=12 и key2 не=12 и key2=key_code. Существует так же матричный метод опроса клавиатуры, его алгоритм описан в документе AVR240: 4x4 Keypad-Wake up on Keypress на сайте www.atmel.com . Описанный выше алгоритм при большем времени выполнения по сравнению с матричным опросом требует меньшего количества команд на реализацию и работает при фиксированной конфигурации порта: младшая тетрада порта - выход, старшая - вход. На схеме не показана схема сброса (обычная интегрирующая цепочка см. описание МК) и питание микроконтроллера. keyboard.mic - сама программа (в кодировке win-txt) Схема электрическая: Алгоритм работы: От редакции (Sanchos): Если это использовать в том виде в котором нарисовано, то никаких проблем не будет. Если вы не уверены в том, что не будут нажаты одновременно две и более кнопок или если этот же порт используется ещё и для индикации то в каждую линию матрици нужно припаять резюк сопротивлением 220 - 510 ом (они ограничат сквозные токи). Не опрашивайте кнопки слишком часто - появляется неустойчивость к дребезгу контактов. Источник: sanchos-iz.narod.ru Клавиатурная матрица 3х4. Подключаем к КР1878ВЕ1 Просмотров сегодня: 6186, всего: 6186 |
|
|||||||||
| |||||||||
|