Российский производитель и разработчик сертифицированного измерительного оборудования с 1987 года


L-783: размер большого буфера

Вы не вошли.

 Поиск | Регистрация | Вход 

Shda
30.03.2009 10:14:21
#1

Гость

L-783: размер большого буфера

Добрый день! Мы пользуемся платой для сбора данных по 7 каналам в режиме однократного сбора. При использовании платы возникла следующая проблема: сначала нам нужно получить 1024 сэмпла по каждому из 7-ми каналов, размер буфера при этом 8192 (плата размещает память по 4к, здесь вопросов нет). После этого нам нужно снять 2048 сэмплов по 7-ми каналам, это 14336 сэмплов. При вызове функции SetParametersStream(PDAQ_PAR sp, ULONG *UsedSize, void** Data, void** Sync, ULONG StreamId), *UsedSize по-прежнему равен 8192, т.е. новый буфер не выделяется. Подскажите пожалуйста, как решить эту проблему.

30.03.2009 11:07:45
#2

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: L-783: размер большого буфера

А RequsetBuffer то какой был? Set не выделяет, а только конфигурит.

Shda
30.03.2009 11:18:09
#3

Гость

Re: L-783: размер большого буфера

Вызов такой:
ULONG unBuffSize = a_nNumSamples * adcParams.t1.NCh;
//2048 * 7
unRslt = m_pDevice->RequestBufferStream(&unBuffSize, L_STREAM_ADC);
После вызова RequestBufferStream unBuffSize равен 14336.

30.03.2009 12:02:58
#4

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: L-783: размер большого буфера

Вы реквест сделайте один раз в начале программы ну например на 32768 отсчетов. Потом просто настраивайте через Fill и SetStream как нужно...

Shda
30.03.2009 13:39:05
#5

Гость

Re: L-783: размер большого буфера

То есть вы предлагаете запросить буфер максимального объёма и потом вычитывать из него столько сэмплов, сколько требуется?

30.03.2009 13:40:26
#6

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: L-783: размер большого буфера

Не совсем. Буфер запросить макс размера, а потом использоватьего на столько сколько надо...