КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Процедура ввода цифры с клавиатуры. Опрос матрицы двоичных датчиков
Ввод символов с клавиатуры. Опрос группы упорядоченных двоичных датчиков В МП-контроллерах, требующих оперативной информации и ее отображения, возникает необходимость разработки аппаратной и программной частей интерфейса МП, для связи с оператором широкое распространение получили следующие средства ввода-вывода информации в МП-системах: разнообразные клавиатуры, линейные дисплеи на семисегментных светодиодных индикаторах, а также алфавитно-цифровые и графические дисплеи. При проектировании интерфейса ввода-вывода МП-контроллера необходимо решать задачу об оптимальном (по ряду критериев) распределении функции между аппаратными и программными средствами интерфейса. В общем случае необходимо исходить из того, что применение специализированных БИС упрощает разработку и обеспечивает высокое быстродействие системы, но сопряжено с увеличением стоимости, объема и потребляемой мощности МП-контроллера. По способам аппаратной реализации различают два типа клавиатур: 1. Кодирующие. У клавиатур этого типа схемным путем на выходе формируется код, соответствующий нажатой клавише. Примером могутслужить оцифрованные переключатели (на 10 или 16 позиций). 2. Некодирующие. Представляют собой матрицу двоичных переключателей, включенных на пересечении строк и столбцов матрицы (чаще всего 4х4 или 5х5). Идентификация и кодирование нажатой клавиши в таких клавиатурах выполняются программой. Переключатели 4х4 предназначены для ввода шестнадцатеричных кодов данных и команд, а 5х5, кроме этого, имеют еще и девять функциональных клавиш для управления режимом работы МП-контроллера.
Процедура ввода числа с клавиатуры состоит из ряда частных процедур: ожидания нажатия клавиши, сканирования, устранения дребезга контактов, ожидания освобождения нажатой клавиши, обнаружения одновременного нажатия двух и более клавиш, определения веса нажатой клавиши (идентификация). Особенности реализации этих процедур при работе с клавиатурой вызваны тем, что группы клавиш объединены в матрицу 4х4 (рис. 61). Вертикальные линии К1 (колонки или столбцы) являются выходными, а горизонтальные линииCi (строки матрицы) - входными Для МП-контроллера. Один вывод каждой клавиши соединен с одной Из колонок Ki, а другой - с одной из строк Ci матрицы. Аналогичным способом в матрицу могут быть включены автономные двоичные датчики объекта управления, когда их много. Сканирование. Частная процедура сканирования служит для обнаружения нажатой клавиши и последующей ее идентификации. Процедура состоит в последовательной выборке и считывании кода столбца строк матрицы клавиатуры. БСА представлена на рисунке 62.
Рисунок 61 – Структура клавиатуры 4 х 4 и схема подключения ее к МП-контроллеру; ША - первый разряд шины адреса Выборка столбца осуществляется выдачей в выходной порт слова выборки, формирующего в каждый момент времени значение логического 0 только на одной из вертикальных линий матрицы KI (активный столбец). На всех остальных вертикальных линиях матрицы должен быть сформирован уровень логической единицы. Столбцы выбираются последовательно, начиная с КО. Для этого МП-контроллер обеспечивает последовательную выдачу через порт 1 слов выборки бегущий нуль, т.е. последовательность кодов 1110, 1101, 1011, 0111, формируемую операциями сдвига. Для матриц большой размерности используется аппаратный способ формирования слов выборки бегущий нуль. К выходному порту подключается дешифратор, последовательность слов выборки будет иметь вид 00, 01, 10,11 и может быть сформирована программным счетчиком. После каждой новой генерации слов выборки горизонтальные линии должны быть опрошены МП-контроллером. Если при опросе горизонтальная линия Ci приобретет значение 0 (активная строка), то имеется возможность программным путем определить нажатую клавишу, так как сигнал на входной горизонтальной линии будет иметь значение 0 только в том случае, если нажатая клавиша соединяет ее с вертикальной линией матрицы, на которой в данный момент времени присутствует уровень 0. МП-контроллер выполняет сканирование матрицы клавиатуры до тех пор, пока не обнаружит нажатую клавишу, после чего реализуется переход к частной процедуре устранения дребезга контакта. Рисунок 62 – Схема алгоритма частной процедуры сканирования Фрагмент программы сканирования:
В результате выполнения фрагмента программы SCAN в регистре 0 хранится код активной строки, т.е. код, содержащий нуль в разряде, соответствующем номеру строки, на пересечении которой с активным столбцом обнаружена нажатая клавиша и единицы во всех остальных разрядах. Устранение дребезга контактов при вводе символа с клавиатуры реализуется программой временной задержки величиной 10-50 мс, после чего МП-контроллер переходит к частной процедуре ожидания освобождения нажатой клавиши. Поскольку столбец, в котором обнаружена нажатая клавиша, известен, частная процедура ожидания освобождения нажатой клавиши в клавиатуре выполняется аналогично одноименной процедуре для группы кнопок, т.е. путем многократного считывания строк матрицы. На рисунке 63. представлена БСА, а программа имеет вид:
Дата добавления: 2015-04-29; Просмотров: 546; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |