|
我在用daq助手时,想采多通道数据,可不可以用一个函数DAQmxReadAnalogF64来同时读入5个通道的数据,然后用一个PlotStripChart吧5条曲线显示出来,我的部分源程序,帮忙看一下对不?(我用的是USB6008)
int CVICALLBACK sample (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event)
{
case EVENT_COMMIT:
//如果NI-DAQmx任务不存在,则执行以下代码
if (taskHandle <= 0)
{
//在工程中创建一个NI-DAQmx任务句柄
CreateDAQTaskInProject(&taskHandle);
//打开定时器
SetCtrlAttribute (panelHandle, PANEL_TIMER, ATTR_ENABLED, 1);
}
break;
}
return 0;
}
int CVICALLBACK timer (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
int32 samplesread;
float64 readarray[5000];
switch (event)
{
case EVENT_TIMER_TICK:
//进行数据采集
DAQmxReadAnalogF64 (taskHandle, DAQmx_Val_Auto, 10.0, DAQmx_Val_GroupByChannel, readarray, 5*1000, &samplesread, 0);
//将采集到的数据绘制在Strip Chart控件上
if( samplesread>0 )
PlotStripChart (panelHandle, PANEL_STRIPCHART, readarray, 5*samplesread, 0, 0, VAL_DOUBLE);
break;
}
return 0;
[ 本帖最后由 lostger 于 2008-10-16 21:49 编辑 ] |
|