Hi
I am trying to build a thermal logger with the NI435X. I have som problem getting the capture speed I want.
I want two setups, one that just samples 1 channel, and another setting samples 7 channels. The capuring
is done in its own thread. Both settings takes about 560ms. I want at least 2 scans second for the 7 channel
setting and possibly more for the 1 channel setting. Can someone help me?
init:
this is a global variable: ViSession DAQSession = VI_NULL;
NI435X_init ("DAQ::1", VI_TRUE, VI_TRUE, &DAQSession);
setup:
In 7 channel mode: channels = "2 3 4 5 6 7 8";
In 1 channel mode: channels = "2";
ViReal64 cjcValue = 25.00;
NI435X_Set_Scan_List (DAQSession, channels);
NI435X_Set_Auto_Zero(DAQSession,NI435X_OFF);
NI435X_Set_Channel_Mode (DAQSession, channels, NI435X_THERM_K);
NI435X_Set_Temperature_Units(DAQSession, channels, NI435X_DEG_C);
NI435X_Set_CJC(DAQSession, channels, NI435X_MANUAL, cjcValue);
NI435X_Set_Gnd_Ref(DAQSession, channels, NI435X_ON);
NI435X_Set_Open_TC_Detection(DAQSession, channels, NI435X_ON);
NI435X_Set_Range(DAQSession, channels, -10.00, 10.00);
NI435X_Set_Powerline_Frequency (DAQSession, NI435X_50HZ);
NI435X_Set_Reading_Rate (DAQSession, NI435X_FAST);
NI435X_Set_Number_Of_Scans(DAQSession,1);
NI435X_Get_Number_Of_Channels(DAQSession, &numChannels);
capture:
this code is in a thread, but its this 3 lines that takes about 560ms to finish.
measurements is a double array
NI435X_Acquisition_StartStop(DAQSession, NI435X_START);
NI435X_Read(DAQSession, 1, 1, measurements);
NI435X_Acquisition_StartStop(DAQSession, NI435X_STOP);
Is it posible to do the NI435X_Acquisition_StartStop(DAQSession, NI435X_START) function in
the init or setup and just put the NI435X in a pause state or somthing?
Even