Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
133.doc
Скачиваний:
12
Добавлен:
30.04.2022
Размер:
970.75 Кб
Скачать

9.3. Задание

Вывести заданный аналоговый периодический сигнал в реальном масштабе времени на аналоговое внешнее устройство или осциллограф.

9.4. Порядок выполнения работы

  1. Получить у преподавателя временную функцию и период прерываний (отсчетов).

  2. Рассчитать значения выводимого в ЦАП сигнала при каждом прерывании.

  3. Составить блок-схему программы вывода на аналоговый выход заданной функции, используя прерывания платы L-154.

  4. Написать на Паскале разделы программы с описанием модулей, меток, констант и переменных. При написании программы необходимо указать на использование библиотечных процедур Паскаля модулей Crt, Dos и процедур модуля lpas, написанных для обслуживания платы L-154.

5. Написать программу обработки прерывания.

Программа обработки прерывания должна содержать:

    1. Определение выводимого значения функции при очередном прерывании.

    2. Вывод вычисленного значения в ЦАП.

    3. Сброс контроллера прерывания.

6. Написать основное тело программы.

Основная программа должна содержать:

    1. Указание драйверу на номер используемого IRQ.

    2. Определение адреса программы обработки прерывания.

    3. Запоминание старого вектора.

    4. Запрет прерывания.

    5. Установку нового вектора и периода прерываний от таймера.

    6. Разрешение прерываний.

    7. Зацикленный участок программы.

    8. Условия выхода из зацикленной программы.

    9. Запрет прерывания и восстановление старого вектора при выходе из программы.

    10. Сброс контроллера прерываний.

  1. Ввести программу и проверить соответствие полученных параметров выходного сигнала параметрам, заданным преподавателем.

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

9.5. Контрольные вопросы

  1. Поясните назначение используемых процедур и функций модуля lpas.

  2. Объясните порядок операций при смене процедуры обработки прерывания.

  3. Где размещается вектор прерывания в памяти ЭВМ?

  4. Поясните назначение и функционирование контроллера прерываний.

  5. Каким образом формируется аналоговый сигнал в реальном масштабе времени?

  6. Как выбрать период прерываний?

9.6. Литература

  1. Техническое описание платы L-154.

10. Лабораторная работа № 9 Ввод аналогового сигнала

Цель работы: получение практических навыков организации ввода/вывода аналоговых данных в реальном масштабе времени.

Оборудование – Компьютер Intel_*86 с платой L-154, генератор сигналов и осциллограф.

10.1. Ввод аналоговыхданных

В лабораторной работе используется универсальная плата ввода-вывода L-154 и ее программное обеспечение.

12 разрядный АЦП, входящий в состав платы, может быть включен в одном из двух режимах: 16 дифференциальных канала или 32 канала с общей землей. В плате перемычками установлен второй режим. АЦП на своем входе имеет предварительный усилитель, обеспечивающий коэффициент усиления 1, 2, 5.

При усилении равном 1 диапазон входного напряжения равен –(5.12в)  (+5.12в). Напряжение на выходе АЦП представлено в дополнительном 12-разрядном коде, так что напряжению 0в соответствует код 0, а напряжению 5.12в – код 2048. Отрицательному напряжению (–5.12в) соответствует дополнительный код числа –2048. Так что при выводе напряжения Nв в ЦАП необходимо заслать код равный целому числу от величины . Ввод этого сигнала через АЦП даст дополнительный код целого числа от величины Таким образом, можно считать, что напряжения представлены целыми числами со знаком (integer) в диапазоне (-2048)- (2048), но при выводе в ЦАП необходимо добавлять число 2048.

При вводе данных через АЦП номер канала ввода и усиление задаются в виде кода присвоенного целочисленной переменной “Номер канала”. Для нулевого канала и единичного усиления значение этой переменной равно $c0.

Необходимое программное обеспечение платы размещено в модуле lpas. В программное обеспечение платы для выполнения работы включены следующие функции и процедуры:

function ADCHAN(channel:word):integer ;- однократный ввод с установкой номера канала.

Функция выполняет следующие действия:

  • Устанавливает номер канала channel. Нулевой канал, к которому подключен аналоговый вход, при единичном усилении имеет значение channel=C0h (в Паскале $c0).

  • Дожидается установления номера канала.

  • .Дает старт преобразования в АЦП.

  • Дожидается бита готовности.

  • Считывает данные с АЦП.

procedure SETCHANNEL(Nch:word); - установка номера канала.

Процедура устанавливает номер канала (см. выше).

Другие необходимые процедуры и функции описаны в работе №8.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]