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


L-783M и QT

Вы не вошли.

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

OT
04.03.2011 08:44:58
#1

Гость

L-783M и QT

Доброе утро! Разрабатываю программу для сбора данных для windows, ипользуя среду разработки QT. Столкнулся с такой проблемой: При запуске программы,компьютер перезагружается при выполнении команды
pI->SetParametersStream(&adcPar.t1, &tm, (void **)&data,(void **)&sync,L_STREAM_ADC);
В чём проблема?
Вот код.
int MainForm::Load()
{
CallCreateInstance("lcomp.dll");
LUnknown* pIUnknown = CreateInstance(slot);
if(pIUnknown == NULL) { QLabel* lbl = new QLabel("CallCreateInstance failed");lbl->resize(300,100); lbl->show();return 0;}
HRESULT hr = pIUnknown->QueryInterface(IID_ILDEV,(void**)&pI);
if(!SUCCEEDED(hr)) { QLabel* lbl = new QLabel("Get IDaqLDevice failed");lbl->resize(300,100); lbl->show();return 0;}
pIUnknown->Release();
pI->OpenLDevice();
pI->LoadBios("l783");
pI->GetSlotParam(&sl);
pI->ReadPlataDescr(&pd);

adcPar.t1.s_Type = L_ADC_PARAM;
adcPar.t1.AutoInit = 1;
adcPar.t1.dRate = 1000;
adcPar.t1.Rate = 0;
adcPar.t1.dKadr = 0;
adcPar.t1.SynchroType = 3;//3-без синх;0- цифр синхр.
adcPar.t1.SynchroSensitivity = 1;
adcPar.t1.SynchroMode = 1;
//adcPar.t1.AdChannel = 0;
//adcPar.t1.AdPorog = 0;
adcPar.t1.NCh = 0;
adcPar.t1.Chn[0] = 1;;
adcPar.t1.FIFO = IRQSTEP;//*2;
adcPar.t1.IrqStep = IRQSTEP;
adcPar.t1.Pages = PAGES;
adcPar.t1.IrqEna = 1;
adcPar.t1.AdcEna = 1;

pI->FillDAQparameters(&adcPar.t1);
ULONG tm = 512000;
pI->RequestBufferStream(&tm,L_STREAM_ADC);
pI->SetParametersStream(&adcPar.t1, &tm, (void **)&data,(void **)&sync,L_STREAM_ADC);
pI->EnableCorrection();
pI->InitStartLDevice();
}

МОТ
10.03.2011 16:26:59
#2

Гость

Re: L-783M и QT

OT , вы кстати dll перекомпилировали? В куте вроде не подходят либы сделанные на студии...

OT
17.03.2011 16:32:06
#3

Гость

Re: L-783M и QT

Проблема возникла не сразу, сначала всё было хорошо, но потом при запуске приложения возникает перезагрузка...