Здавалка
Главная | Обратная связь

Ввод данных с импульсного датчика скорости



В качестве выходных данных с импульсного датчика скорости поступает последовательность импульсов. Количество импульсов в единицу времени пропорционально измеряемой скорости. Таким образом, задача УСО заключается в подсчете импульсов, поступающих с датчика в течение заданного интервала времени.

Задача собственно подсчета может быть решена при помощи счетчика (нереверсивного).

Задача "отмеривания" интервала времени — с помощью программируемого таймера (ПТ).

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

Рис. 3.

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

Предварительный вид УСО, построенного в соответствии с этими принципами, представлен на рис. 4.

Рис. 4.

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

Импульс, формируемый на выходе OUT, подается на вход STB буферного регистра, и по заднему фронту его происходит "фиксация" значения, находящегося в счетчике (рис. 5).

Рис. 5.

Сам буферный регистр подключается к шине управления таким образом, чтобы к нему был возможен доступ по чтению как к УВВ (рис. 6).

Рис. 6.

В приведенной схеме для обращения к буферному регистру на шине адреса должен быть установлен адрес 0004h. Чтение данных из буферного регистра выполняется командой

IN AL, 0004h

Логично предположить, что после окончания подсчета и фиксации полученного значения в буферном регистре, счетчик должен быть сброшен (его значение должно быть установлено в 0). Для этой цели может быть использован второй канал программируемого таймера, работающий в режиме ждущего одновибратора с запуском по положительному фронту сигнала GATE1 (рис. 7).

Рис. 7.

Временная диаграмма работы УСО представлена на рис. 8.

Рис. 8.

Импульс с выхода первого канала ПТ (OUT0) фиксирует значение в БР (по заднему фронту) и запускает счет в канале 2 (по заднему фронту, так как OUT0соединен со входом разрешения счета второго канала GATE1 через инвертор). По окончании счета в канале 2 на выходе OUT1 формируется единичный импульс, выполняющий сброс счетчика. В этом случае реальное время подсчета импульсов — с момента сброса счетчика по переднему фронту сигнала OUT1 до момента фиксации подсчитанного значения в БР по заднему фронту сигнала OUT0.

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

Схема, представленная на рис. 7, предусматривает синхронный обмен с МП. Так как в БР в любой момент времени хранится последнее подсчитанное количество импульсов (пропорциональное измеряемой скорости), оно может быть введено в МП также в любой момент времени путем выполнения команды ввода из УВВ

IN AL, 0004h

Проверка готовности не требуется.

В случае, когда интервал подсчета импульсов достаточно велик и значение в процессор желательно ввести немедленно по его завершению, может быть использован обмен по прерываниям. В качестве сигнала запроса на прерывание от УСО может быть использован сигнал OUT1 (рис. 7), так как он формируется непосредственно после фиксации значения в буферном регистре.

При необходимости непосредственного ввода значения скорости в ЗУ может быть использован метод обмена в режиме ПДП (по аналогии с рассмотренными ранее УСО). В качестве сигнала запроса обмена по методу ПДП может быть использован все тот же сигнал OUT1 (рис. 7).

 







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.