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

UptoLike

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

SET_INTER_DELAY(1);
// осуществим трехканальный ввод десяти кадров на
// межканальной задержке 2 мкс
SOFT(Data, 10, Channels, Nch, Rate);
}
5.3. Функции ввода по аналого-цифровым каналам
в программном режиме
Функции данного раздела служат для обеспечения ввода аналоговых сигналов в
компьютер в различных программных режимах: в асинхронном режиме и в режиме
синхронизации от таймера
.
5.3.1. Установка номера канала АЦП
void SETCHANNEL(int Channel);
Назначение. Устанавливает канал АЦП Channel для последующего ввода
функцией однократного асинхронного ввода
SAMPLE().
Параметры: Channel -> номер канала АЦП (см. формат номера канала)
Пример:
main()
{
int i;
SETCHANNEL(0);
// установим первый канал
i=SAMPLE();
// введем значение с канала
срrintf("Код АЦП = %d", i);
// выведем его на экран
}
5.3.2. Однократный асинхронный ввод с АЦП
int SAMPLE()
Назначение. Осуществляет аналого-цифровое преобразование с канала АЦП,
предварительно установленного при помощи функции
SETCHANNEL(). Данной
функцией удобно пользоваться для асинхронного одноканального ввода, когда не
требуется переустанавливать номер канала.
Ïàðàìåòðû îòñóòñòâóþò.
5.3.3. Однократный ввод с переустановкой канала АЦП
int ADCHAN(int Channel);
Назначение. Устанавливает заданный канал АЦП и осуществляет аналого-
цифровое преобразование. Данная функция удобна для осуществления асинхронного
ввода с разных каналов АЦП. Возвращает результат преобразования по каналу '
Channel'.
Параметры: номер канала АЦП.
Пример:
main()
{
// введем значение с первого канала и выведем преобразованное
// значение кода в вольтах
cprintf("\n\r Напряжение на первом канале = %f", ADCHAN(0)*5.12/2048.);
}
5.3.4. Однократный ввод последовательности каналов АЦП
void KADR (int *Data, int *Channels, int Nch);
Назначение. Вводит Nch отсчетов с каналов АЦП, указанных в массиве Channels,