В блоках 5, 6 производится программная проверка пассивного состояния сигнала Strob, т.е. определение момента перехода этого сигнала из высокого уровня в низкий. Это делается для того, чтобы длительность сигнала Strob Ts была строго выдержана. Программная проверка готовности какого-либо устройства (канала 1) называется полингом. Альтернативным полингу является ввод/вывод по прерываниям. Для реализации полинга сигнал Strob с помощью внешней перемычки необходимо подать на любой из разрядов входного порта Input (см. табл. П9.1), например, Input0.
В блоке 7 производится ввод содержимого счетчика канала 2. Это делается последовательным считыванием двух байт из регистра с адресом 1102Н сначала младшего байта, а затем старшего байта содержимого счетчика канала 2, которое обозначим через Х.
В блоке 8 производится преобразование Х в Nx. Это можно сделать по формулам
Nx = 9999H - X (П9.6)
или
Nx = FFFFH - X (П9.7)
Формула П9.6 используется, если канал 2 запрограммирован (в блоке 2) на двоично-десятичный формат, а формула П9.7 - если канал 2 запрограммирован на двоичный формат. В последнем случае Nx получается в двоичном формате и его необходимо перевести в двоично-десятичный формат с помощью специальной подпрограммы. Формулы П9.6, П9.7 получены с учетом того, что счетчик канала 2 при подсчете импульсов частотного сигнала работает на вычитание. Это означает, что значение Х является остатком, а искомое значение Nx - вычитаемым. Уменьшаемое (9999Н или FFFFH) загружается в счетчик канала 2 перед запуском сигнала Strob (см. блок 3).
В блоке 9 производится вывод значения отсчета на индикатор с гашением незначащих ведущих нулей Nx. Положение десятичной точки определяется по следующему правилу. Как показывает формула П9.1, при Ts = 10 мсек и 1 кГц <= Fx < 10 кГц в счетчике окажется 10 <= Nx < 100. Это означает, что запятая должна выводится между двумя младшими байтами Nx. Это положение остается в силе и для всех других значений частоты Fx.
В блоке 10 вводится задержка для уменьшения частоты вывода значений отсчетов на индикатор, что уменьшает мелькание индикатора.
П9.4. Улучшение алгоритма поддержки измерителя частоты
Алгоритм функционирования программы поддержки измерителя частоты (см. рис. П9.5.) имеет очевидный недостаток и допускает улучшение. Недостаток заключается в том, что в течение сравнительно длительного промежутка времени Ts (длительности строба) процессор выполняет рутинную операцию - программную проверку пассивного состояния сигнала Strob. Этот недостаток может быть устранен выполнением блоков 8, 9 сразу после выполнения блока 4. В этом случае на проверку пассивного состояния сигнала Strob уйдет меньше времени на длительность выполнения блоков 8 и 9.
ПРИЛОЖЕНИЕ 10
Ввод частотных сигналов в МПС по прерываниям
П10.1. Аппаратная часть измерителя частоты
В п. П9.4 показано, что полинг (программный опрос готовности какого-либо устройства) приводит к непроизводительному расходованию процессорного времени. Устранить этот недостаток можно применением ввода/вывода по прерываниям.
Под прерываниями будем понимать переход из основной программы на подпрограмму-обработчик, который выполняется, в частности, в ответ на аппаратный запрос обслуживания прерываний. В МПС для обслуживания аппаратных запросов прерываний, как правило, используются специальные контроллеры.
В УОУ "Электроника-580" в качестве контроллера прерываний используется ИМС К580ВН59. Функциональная схема его подключения к магистрали УОУ приведена на рис. П10.1. Подробное описание ИМС К580ВН59 приведено в [1...4], ниже приводится описание особенностей применения этого контроллера в УОУ.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.