Клавиатура и блок индикации для приборов на базе микропроцессора К1801ВМ1. Схема подключения блоков индикации и клавиатуры к микропроцессору К1801ВМ1

Страницы работы

Содержание работы

Описание работы

КЛАВИАТУРА И БЛОК ИНДИКАЦИИ ДЛЯ ПРИБОРОВ

НА БАЗЕ МИКРОПРОЦЕССОРА К1801ВМ1

Применение в составе небольших измерительных приборов стандартных клавиатур и устройств отображения нецелесообразно. Экономичнее разработать малогабаритные специализированные клавиатуры и блоки индикации с минимально возможными аппаратными и программными затратами.

В работе рассматриваются принципы построения клавиатуры и блока индикации приборов для физического эксперимента, приводятся принципиальные схемы и алгоритмы работы блоков, ориентированные на применение 16-разрядного микропроцессора К.1801ВМ1, предлагаются аппаратный способ подавления дребезга контактов клавиш и организация работы клавиатуры по прерыванию. Предложенные принципы позволяют при примерно одинаковых аппаратных затратах сократить объем управляющих программ, исключив программные секции вычисления кода нажатой клавиши и подавления дребезга контактов.

Анализ работы приборов для физического эксперимента позволяет выделить три основных стадии их функционирования:

ввод исходных данных, необходимых для проведения эксперимента (габаритные размеры образцов, зондов, коэффициенты, позволяющие корректировать реальные характеристики датчиков и т. п.);

проведение самого эксперимента;

обработку полученного экспериментального материала, выдачу искомых физических характеристик исследуемого процесса, перевод прибора в исходное состояние.

Рис.1. Схема  подключения блоков индикации и клавиатуры к микропроцессору К1801ВМ1

В соответствии со стадиями функционирования прибора целесообразен следующий принцип управления работой клавиатуры и блока индикации. Всю первую и часть третей стадии, связанную с выдачей искомых физических характеристик либо с выводом на блок индикации точек полученной экспериментальной кривой, микропроцессор будет занят только управлением работой клавиатуры и блока индикации. Проведение эксперимента и обработка экспериментального материала — это выполнение функции клавиши «Пуск». Следовательно, основной режим работы микропроцессора в составе прибора — режим контроллера (устройства управлении) клавиатуры и блока индикации (рис. 1). В этом случае главная управляющая программа обеспечивает сканирование клавиш клавиатуры и динамическую индикацию. Функцию, соответствующую нажатой клавише, может выполнить программа, обслуживающая прерывание от клавиатуры.

Канальные приемопередатчики шины адресов-данных, регистр адреса и дешифратор адреса целесообразно выполнить общими для всех блоков прибора. Сигналы ВЫВ РУПР, ВЫВ РКЛ, ВЫВ РИ вырабатывает дешифратор адреса при обращении в канальном цикле ВЫВОД по адресу регистра управления, регистра клавиатуры и регистра индикации соответственно (рис. 2).

При указанной на схеме разрядности регистра клавиатуры М1, M3 можно организовать клавиатуру, содержащую 32 клавиши. Размер клавиатуры меняется при изменении разрядности регистра клавиатуры (с добавлением или уменьшением числа клавиш),

Микропроцессор сканирует клавиатуру, выводя в регистр клавиатуры двоичные коды от 00000 до 10111. Сигнал на выходе мультиплексора M6 появится только при нажатии клавиши и при занесении кода, соответствующего этой клавише, в регистр клавиатуры М1 М3. Дребезг контактов клавиш подавляется с помощью интегрирующий RC-цепочки. Благодаря триггеру Шмитта М2 установка и снятие сигнала происходят «чисто». Этот сигнал (как прерывающий) подается на вход IRQ3 микропроцессора К1801ВМ1 через схему привязки к временной диаграмме процессора.

Как показало макетирование клавиатуры, при использовании кнопок ПК-8 для надежного подавления дребезга достаточно иметь постоянную времени RС-цепи 2...3 мс. При номиналах, указанных на схеме, сигнал— ТПР КЛ установится с задержкой порядка 2 мс, а снимется — с задержкой порядка 10 мс, Сигнал — ТПР КЛ используется и для обнаружения момента отпускания нажатой клавиши (чтобы исключить повторное выполнение функции ранее нажатой клавиши), Этот сигнал выводится на канальные приемопередатчики и считывается в канальном цикле ВВОД при обращении к регистру управления.

Цифровым клавишам целесообразно присвоить коды от 00000 до 01001, представляющие собой двоично-десятичные коды цифр от 0 до 9. Коды от 01010 и далее лучше использовать для функциональных клавиш.

Индикатор имеет 12 разрядов. Из них 6 (И1...И6) отведены под мантиссу отображаемого числа, два (И7, И8) — под порядок, по одному (И11 и И12)—под минусы мантиссы и порядка, два разряда (И9, И10) — для индикации ошибок (при выполнении арифметических операций, канальных, ввода и т. п.). Шесть разрядов, отведенные под мантиссу, используются для ввода на индикатор содержимого памяти микропроцессора (проверочный режим) в восьмеричном коде. В этом случае запятая, знаки и порядок т индицируются. При необходимости некоторые разряды индикатора могут быть исключены. Индикация минусов мантиссы и порядка — статическая. Их работой управляют два разряда регистра управления М5 (третий разряд используется для запрещения прерывания клавиатуре). Регистр управления можно совместить с общим регистром управления (или состояний) прибора.

Регистр индикатора — 16-разрядный М7…М11. Четыре младших разряда (0...3) предназначены для занесения в регистр двоично-десятичного кода выводимой цифры, пятый разряд — для индикации запятой, четвертый— для гашения разрядов индикатора, а остальные десять разрядов—для динамической индикации. Для приведенного индикатора необходим буфер в ОЗУ прибора с количеством ячеек, равным числу цифровых разрядов индикатора. В этих ячейках (в нашем случае десяти) хранятся коды выводимой цифры, а также признаки запятой и гашения разряда.

В тексте программы (на рис. 3 приведен ее фрагмент) имя BUFI соответствует первой ячейке буфера индикатора, RKL — регистр клавиатуры, RI — регистр индикатора, RUPR — регистр управления.

Временная задержка в главной управляющей программе необходима для ожидания срабатывания схемы подавления дребезга. Необходимо, чтобы эта программная задержка была больше аппаратной.

В главной управляющей программе перед фрагментом сканирования клавиатуры и динамической индикации необходимо предусмотреть секцию инициализации (должны быть выполнены установка указателя стека, а также начальная установка всех. ячеек и флажков, используемых в программе, обслуживающей прерывание блока клавиатуры).

При выполнении функции клавиши «Пуск» необходимо также сразу после входа в прерывающую программу заблокировать клавиатуру, а перед выходом из программы снова разрешить прерывание клавиатуре. Такая последовательность действий устраняет возможность прерывания эксперимента при случайном нажатии какой-либо клавиши. Если продолжительность эксперимента не превышает несколько сот миллисекунд, то можно не запрещать прерывание клавиатуре.

Описанные клавиатура и блок индикации были разработаны для прибора, измеряющего теплофизические характеристики твердых материалов, однако примененный подход может быть полезен при разработке широкого класса приборов для физического эксперимента.


Рис, 4. Принципиальная схема клавиатуры и олока индикации

Похожие материалы

Информация о работе