Примеры с сайта AVR+ Electronics - Работа с матричной клавиатурой 4х4.
Зміст статті
Работа с матричной клавиатурой 4х4.
Сегодня поговорим о работе МК с матричной клавиатурой. Собственно матричная клавиатура представляет собой n-количество кнопок подключённых матрицей, тем самым уменьшается количество используемых пинов МК, но для работы нужно использовать динамический опрос. Что касается динамического опроса, всё что нужно от МК, это поочередно опускать столбцы матрицы в лог.0 и слушать строки, когда происходит нажатие кнопки, вычисляем в каком столбце и в какой строке было нажатие. А далее, обрабатываем полученные данные, как хотим. Для наглядного примера я написал программу под клавиатуру 4х4. Программа как обычно под Codevision. Вот схема:
|
Что касается программы, там всё просто. Программа сканирует клавиатуру и по нажатию кнопок 0…9 отправляет значение по UART. 15 клавиша это перейти на строку ниже. Если будет большая загрузка МК, программу обработку кнопок желательно запускать по прерыванию. Можно было это всё завести от внешних прерываний, но тогда надо использовать ещё одну ножку. Ну, вот собственно и всё, исходник можно скачать здесь: 4d1854_key.zip (исходный код, прошивка, proteus).