{
МИКРОКОНТРОЛЛЕРЫ
\
Необходимые пояснения по программе - на этот раз минимальные:
1. В этом участке мы последовательно (64 раза) считываем сигнал с входной линии матрицы клавиатуры и
заносим ее в битовый образ.
2. В этом участке мы проверяем идентичность предыдущего и текущ его битового образа и, в случае их
отличия, переходим в режим успокоения. Когда это произойдет, мы с помощью команды хог (с применением
эталонного образа) определяем, какие биты матрицы клавиатуры изменились.
3. В этом участке мы формируем терминальные символы. Способ, которым они формируются, был подроб-
но описан в статье, посвященной работе с прерываниями. Код терминального символа при вызове автомата
будет равен 2 * Номер_кнопки, если кнопка бьФа отпущена, и 2 * Н омер_кнопки + 1, если кнопка была нажата.
4. А это - замена эталонного образа текущим.
5. А это - подпрограмма чтения битового образа и'одновременного сравнения его с предыдущим образом.
Предлагаем читателю разобраться в ней самостоятельно, так же, как и в двух остальных подпрограммах.
6. Это - необходим ая для правильной работы команда. Почему ее здесь необходимо использовать, чита-
тель узнает из следующей статьи, посвященной вопросам параллельного программирования.
7. А это - пр о гр а м м и стски й тр ю к: перезагрузив регистр #5 новым режимом адресации, мы обеспечиваем
его автоматический сдвиг на следующий адрес при выполнении следующей команды. В начале же тела цикла
способ адресации регистра IRO вновь меняется на INDIRECT.
Нелишне напомнить, что для работы с матрицей
клавиатуры промышленностью выпускаются специа-
лизированные микросхемы, например КР580ВВ79.
Стоимость ее практически равна стоимости всего ус-
тройства по схеме рис. 13, так что применение мик-
роконтроллера в данном случае обходится деш евле.
В более простых случаях (меньшее количество кно-
пок) матрицу клавиатуры можно опрашивать одновре-
менно с выводом данных на динамическую индикацию
(см. рис. 14). Программу обработки матрицы клавиа-
туры для этого варианта подключения предлагаем чи-
тателю в качестве домашнего задания. В качестве под-
сказки можно отметить, что ф ормировать текущ ий
образ матрицы клавиатуры можно двумя способами -
либо в течение цикла динамической индикации, либо
однократно при перезапуске нового цикла динамичес-
кой индикации (см пояснение <7> к фрагменту про-
граммы динамической индикации). Рекомендуем чи-
тателю попробовать реализовать домашнее задание
обоими способами.
С е р ге й А б р а м о в
|
г. Оренбург |
__________
I
Окончание. Начало в N23-4/2006
Осваиваем
программируемые логические
матрицы фирмы ALTERA
П рим ер р а зр а б о тки у с тр о й с тв а
Рассмотрим практическую схему
трехразрядного счетчика с динами-
ческой индикацией (рис. 10). Блок
питания собран на микросхеме 03
типа 1.М317 и обеспечивает необхо-
димое для 01 напряжение. Выход-
ной ток разрядов индикатора может
бьпъ порядка 80 мА при всех вклю-
ченных индикаторах, поэтому разря-
ды индикаторов ком м утирую тся
44 |-----------------
транзисторами V 1 1.
..\/ТЗ. Для экс-
периментальной модели выбрана
схема внутреннего генератора,
внешние цепи которого представ-
ляют собой элементы И16, т е , С2,
но в рабочей схеме генератор луч-
ше делать внешним. По мнению ав-
тора, ПЛИС не очень хорошо рабо-
таю т с ем костны ми нагрузкам и.
Разъем Х1 необходим для подклю-
чения к программатору.
Рассмотрим внутреннюю струк-
туру проекта (рис. 11). Все компо-
ненты создавались заново, по при-
веденной выше методике и сохра-
нялись в собственной библиотеке
компонентов.
На
схем е
ко м п о н е н т
0_3г_сотти1а1ог - это трехразряд-
ный коммутатор, который переклю-
чает по очереди разряды индикато-
ра, а также выдает управляющие
I Радиолюбитель - 0 5 /2 0 0 6
предыдущая страница 45 Радиолюбитель 2006-05 читать онлайн следующая страница 47 Радиолюбитель 2006-05 читать онлайн Домой Выключить/включить текст