赞
踩
qt使用NIDAQmx实现电压采集,结合QChart实现波形显示
1.新建qt项目,在项目下添加lib文件夹,将NIDAQmx.lib放到lib文件夹下
2.新建项目,引用NIDAQmx.h文件,即可使用NI对应的库对对应的板卡进行测试,本例选用6143板卡进行电压采集;具体步骤如下:
a.创建任务 DAQmxErrChk (DAQmxCreateTask("",&taskHandle));
b.创建通道以测量电压DAQmxErrChk (DAQmxCreateAIVoltageChan(taskHandle,"Dev1/ai0","",DAQmx_Val_Cfg_Default,-10.0,10.0,DAQmx_Val_Volts,NULL));
c.设置sample clock时钟来源DAQmxErrChk (DAQmxCfgSampClkTiming(taskHandle,"",10.0,DAQmx_Val_Rising,DAQmx_Val_FiniteSamps,10));
DAQmxErrChk (DAQmxSetAITermCfg(taskHandle,"Dev1/ai0",DAQmx_Val_Diff))
d.将任务从提交状态转换到运行状态,开始测量或生成。DAQmxErrChk (DAQmxStartTask(taskHandle));
e.从包含一个或多个模拟输入通道的任务中读取多个浮点样本DAQmxErrChk (DAQmxReadAnalogF64(taskHandle,250,-1,DAQmx_Val_GroupByChannel,data,250,&read,NULL));
说明:本例中使用的电压为400Hz,5V正弦波;采集设置为10KHz,因此采集中一秒内必须采集250个点位;如下图所示
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。