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


функция put_buffer

Вы не вошли.

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

Дмитрий
12.10.2005 10:55:16
#1

Гость

функция put_buffer

День добрый.
Может кто сталкивался с тем, что под win2000 при обращении к функции put_buffer вываливается ошибка "... Access violation at address .... in module lcard32.dll..."
В чем может быть проблема?
Плата L1250, win2000 SP4.

12.10.2005 11:34:05
#2

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

Re: функция put_buffer

А в каком контексте вызывается? Вообще то  это с ПДП связано и скорее всего память не выделена или выход за границу...

Дмитрий
12.10.2005 11:51:13
#3

Гость

Re: функция put_buffer

Код работает под win98, я его привожу ниже.
procedure TFormOscilograph.Button1Click(Sender: TObject);
var
i: integer;
begin
   FreqTestVoltage:=50;
   FreqTestVoltage:=FreqTestVoltage*2.0;
   PeriodTestVoltage:=1.0E6/FreqTestVoltage;
   Rate:=50;
   NPoint:=Round(2*PeriodTestVoltage/Rate);
   
   SELECT_SLOT(0);
   DSP_OUTBYTE($0);

   CONFIG_FIFO(1);
   SET_DA_NUMBER(1, 0);
   ALLOCATEBUFFER(NPoint*sizeof(SmallInt)*2 ,PLinearDAC, PPhysicalDAC);
   // Очистка буфера;
   if PLinearDAC <> nil then
      for i:=0 to NPoint-1 do PLinearDAC^[i]:=0;
   if PLinearDAC <> nil then          // заполняем буфер ЦАП периодами синуса
   begin
      for i:=0 to NPoint-1 do
      PLinearDAC^[i]:=Round(sin(i*2*Pi/(NPoint-1)));

      // вот в этой строке под win2000 генерится ошибка.
      PUT_BUFFER(PLinearDAC^);
   end;
end;

12.10.2005 12:06:12
#4

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

Re: функция put_buffer

а WinDrvr.sys установлен?

Дмитрий
12.10.2005 12:08:21
#5

Гость

Re: функция put_buffer

Да. Функции осциллографирования работают.

12.10.2005 12:22:36
#6

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

Re: функция put_buffer

Значит не повезло. Работа в этой библиотеке с ПДП сделана антинаучно.. Может просто поменьше буфер сделать...

Дмитрий
12.10.2005 14:31:25
#7

Гость

Re: функция put_buffer

Так, что больше никаких передложений, кроме как не повезло? Может есть библиотека новее?

12.10.2005 14:57:19
#8

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

Re: функция put_buffer

vxdapi или lcomp, но поскольку там все по правильному, то такого режима работы нет...и функции совсем другие...

Дмитрий
12.10.2005 16:24:27
#9

Гость

Re: функция put_buffer

Я скачал с вашего сайта дрова vxdapi.
Там есть возможность асинхронного вывода в ЦАП и чтение из АЦП?

12.10.2005 18:33:49
#10

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

Re: функция put_buffer

есть