ВУЗ:
Составители:
Переменная 'AdDmm' определяет режим работы контроллера ПДП компьютера. Она
должна быть равна
0 для однократной передачи заказанного блока данных и 1 для
циклического ввода. Аналогично переменная '
DaDmm' определяет режим вывода на
ЦАП (однократный или циклический).
Параметры:
1. AdData — адрес буфера, в который будут помещаться вводимые данные с
АЦП;
2.
AdNkadr — число вводимых кадров;
3.
Channels — целочисленный массив с номерами каналов АЦП;
4.
Nch — число каналов АЦП;
5.
Rate — интервал ввода-вывода;
6.
AdDmm — включение автоинициализации канала ПДП АЦП;
7.
DaData — адрес массива, из которого будут считываться данные, выводимые
на ЦАП;
8.
DaNkadr — размер массива, выводимого на ЦАП;
9.
DaDmm — включение автоинициализации канала ПДП ЦАП;
10.
DaNumber — зарезервирован.
Пример
:
//В примере осуществляется ввод с четырех каналов АЦП одновременно с генерированием
//синусоидального сигнала на выходе ЦАПа с интервалом 100 мкс
#include <math.h>
main()
{
int I, *Data, Npoint=500, Channels[16]={0,1,2,3};
int Nch=4, Rate=100, DaNKadr=1000, DaNumber=0;
int AdDmm=1, DaDmm=1;
// установим указатель на старшую страницу памяти
Data=(int far *) 0õ90000000;
// генерируем синусоидальный сигнал
for(I=0, I < 1000, I++) Data[I]=2000.*sin(I*M_PI/80. );
// запустим ввод с АЦП одновременно с выводом на ЦАП
DMA_ALL_DA(Data+1000, Npoint, Channels, Nch, Rate, AdDmm, Data, DaNKadr, DaDmm,
DaNumber);
// ждем нажатия на клавишу
while (!kbhit());
// выключим контроллер ПДП
DMA_OFF();
}
5.7.6. Синхронный вывод на ЦАП по каналу ПДП
void DADMASTREAM(int *Data, int Npoint, int Rate, int Dmm );
Назначение. Выводит массив отсчетов из массива Data на установленный ЦАП по
каналу ПДП.
Параметры:
1.
Data - целочисленный массив для данных;
2. Npoint - число выводимых отсчетов (1 <= NPoint <= 32768);
3. Rate
- интервал вывода (от 1 до Oxffff);
4. Dmm
- параметр, включающий режим автоинициализации. Если режим
Страницы
- « первая
- ‹ предыдущая
- …
- 31
- 32
- 33
- 34
- 35
- …
- следующая ›
- последняя »