Устройства ввода-вывода аналоговых и дискретных сигналов для компьютерных систем. Засов В.А - 27 стр.

UptoLike

Составители: 

// генерируем синусоидальный сигнал
for(i=0; i < Npoint; i++) Data[i]=2000*sin(i*М_РI/80 );
// установим первый ЦАП
SET_DA_NUMBER(0, 0);
// выведем его на первый ЦАП
DASTREAM(Rate, NPoint, Data);
}
5.5. Функции ввода-вывода по цифровым каналам
5.5.1. Чтение восьми младших цифровых линий
int INPBYTE_305();
Назначение. Возвращает состояние 8-и внешних цифровых ТТЛ линий.
Ïàðàìåòðû: îòñóòñòâóþò.
Пример:
main()
{
int i,
// введем 8 линий
i=INPBYTE_305();
}
5.5.2. Вывод на восемь цифровых линий
void OUTBYTE_305(int Code);
Назначение. Функция установки 8-и цифровых линий
Параметры:
Codeустанавливаемый код.
5.6. Функции ввода по аналого-цифровым каналам
с использованием прерываний
Ввод по прерываниям используется, как правило, при анализе процессов на
сравнительно медленных частотах ввода (до
10 кГц). Общая идеология ввода обычно
сводится к следующему: АЦП вводит во внутреннюю память платы УВВС ряд отсчетов
с заданных каналов и после этого генерирует прерывание в компьютер, в котором
предварительно должен быть загружен драйвер-обработчик используемого платой
прерывания, который считывает из платы введенный ряд отсчетов.
5.6.1. Генерирование прерываний без ввода с
АЦП
void INIT_SIMPLE_INTR (int Rate, interrupt *Vector);
Назначение. Программирует контроллер прерываний и плату для работы в режиме
генерации установленного прерывания. После вызова процедуры
INIT_SIMPLE_INTR()
плата генерирует прерывания с интервалом
Rate мкс, которое обрабатывается
драйвером-обработчиком, адрес которого передается в параметре
Vector. Обработчик
должен позаботиться о сбросе как контроллера прерываний компьютера, так и
контроллера прерываний платы АЦП.
Параметры:
1. Rateинтервал генерирования прерываний;
2. Vectorадрес обработчика прерываний.
Пример:
// Драйвер - обработчик прерывания IRQ от платы АЦП при каждом вызове приращивает на //