Signal Conditioning

cancel
Showing results for 
Search instead for 
Did you mean: 

How to output several analog signals at the same time with C++? 如何使用C++同步输出多通道模拟信号?

我可以使用如下代码输出单通道模拟信号:(I can generate an analog signal with codes below)

DAQmxErrChk(DAQmxCreateTask("2", &AO1));
 DAQmxErrChk(DAQmxCreateAOVoltageChan(AO1, "Dev1/ao0", "", -10, 10, DAQmx_Val_Volts, NULL));
 DAQmxErrChk(DAQmxCfgSampClkTiming(AO1, "/Dev1/PFI0", int(num), DAQmx_Val_Rising, DAQmx_Val_ContSamps, int(num)));
 DAQmxErrChk(DAQmxWriteAnalogF64(AO1, int(num), 0, 10.0, DAQmx_Val_GroupByChannel, data1, NULL, NULL));

 

但是当我改用2个通道的时候,程序和报错如下:(But an error comes out when I add another channel with these codes)

 DAQmxErrChk(DAQmxCreateTask("2", &AO1));
 DAQmxErrChk(DAQmxCreateAOVoltageChan(AO1, "Dev1/ao0", "", -10, 10, DAQmx_Val_Volts, NULL));
 DAQmxErrChk(DAQmxCfgSampClkTiming(AO1, "/Dev1/PFI0", int(num), DAQmx_Val_Rising, DAQmx_Val_ContSamps, int(num)));
 DAQmxErrChk(DAQmxWriteAnalogF64(AO1, int(num), 0, 10.0, DAQmx_Val_GroupByChannel, data1, NULL, NULL));
 DAQmxErrChk(DAQmxCreateTask("3", &AO2));
 DAQmxErrChk(DAQmxCreateAOVoltageChan(AO2, "Dev1/ao1", "", -10, 10, DAQmx_Val_Volts, NULL));
 DAQmxErrChk(DAQmxCfgSampClkTiming(AO2, "/Dev1/PFI0", int(num), DAQmx_Val_Rising, DAQmx_Val_ContSamps, int(num)));
 DAQmxErrChk(DAQmxWriteAnalogF64(AO2, int(num), 0, 10.0, DAQmx_Val_GroupByChannel, data2, NULL, NULL));
 

DAQmx Error: The specified resource is reserved.

 

我该如何修改?(What should I do?)

0 Kudos
Message 1 of 1
(1,330 Views)