From 11:00 PM CDT Friday, Nov 8 - 2:30 PM CDT Saturday, Nov 9, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From 11:00 PM CDT Friday, Nov 8 - 2:30 PM CDT Saturday, Nov 9, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
|
static i16 piBuffer[1000] = {0};
static i16 piHalfBuffer[500] = {0};
static i32 piBuffer[1000] = {0};
static i32 piHalfBuffer[500] = {0};
i16* piBuffer; //Declare a pointer to an i16 value
piBuffer = (i16*)malloc (1000 * sizeof(i16*)); //Dynamically allocate memory for 1000 samples, each of type i16
. i32* piBuffer; //Declare a pointer to an i32 value
piBuffer = (i32*)malloc (1000 * sizeof(i32*)); //Dynamically allocate memory for 1000 samples, each of type i32
. DAQ_Start
, DAQ_Vscale
, DAQ_DB_Transfer
, DAQ_Monitor
, WFM_Op
, 그리고 WFM_DB_Transfer
와 같은 함수들은 Prototype으로 i16 타입의 데이터를 받으므로 Step 1의 i32 변수 선언이 문제를 발생시킵니다. 그러므로 Typecast를 이용하여 다시 i16으로 바꾸어 주어야 됩니다.iStatus = DAQ_Start(iDevice, iChan, iGain, piBuffer, ulCount, iSampTB, uSampInt);
iStatus = DAQ_VScale(iDevice, iChan, iGain, dGainAdjust, dOffset, ulCount, piBuffer, pdVoltBuffer);
iStatus = DAQ_Start(iDevice, iChan, iGain, (i16*) piBuffer, ulCount,0, 0); //Sample Timebase & Interval, not needed for DSA
iStatus = DAQ_VScale(iDevice, iChan, iGain, dGainAdjust, dOffset, ulCount, (i16*) piBuffer, pdVoltBuffer);
DAQ_Rate
함수를 DAQ_Set_Clock
으로, 그리고 WFM_Rate
함수는 WFM_Set_Clock
으로 대체합니다.DAQ_Start 또는 WFM_Start를 사용합니다.
예를 들어
iStatus = DAQ_Rate(dSampRate, iUnits, &iSampTB, &uSampInt);
DSA 보드는 다음을 사용합니다.
iStatus = DAQ_Set_Clock (iDevice, 0, dSampRate, 0, &actualRate);
4) Linear Gain을 Decibels (dB)로 바꿉니다.
MIO 보드에서는 Linear Gain을 사용합니다. DAQ_Start 그리고 DAQ_Op 함수를 사용함.
반면 DSA 보드는 Decibels (dB)을 사용합니다.
dB gain = 20 * log10 (linear gain)
그러므로 변수 선언에서 Gain의 값을 위의 식을 참조하여 바꾸어 주어야 됩니다.
예를 들어, MIO 보드에서
i16 iGain = 1; // Linear gain value for MIO
DSA 보드에서
i16 iGain = 0; // Equivalent DSA gain in dB
입니다.
관련 링크: Example Program: CVI NI-DAQ Code for DSA
첨부:
리포트 날짜: 01/28/2002
마지막 업데이트: 03/11/2003
문서 번호: 2HRJ1TJT