问题描述:使用LabVIEW控制NI的采集卡,使用DAQmx是非常方便的。但是正由于其方便性,许多底层的问题都被隐藏了起来。因此使用时如果没有注意到细节问题就会出现一些不预期的结果。以下将记录一些创建虚拟通道函数的使用时的注意问题(当然首先接线方式、最大值、最小值、物理通道等都要配置对)。
任务的创建:DAQmx中任务与通道的概念是不同的,通道是具体的引脚,如8通道模拟输入通道,说明就有对应的8个用于模拟输入的引脚。任务就不一样了,创建一个任务,该任务就可以包括一系列同类型通道的操作,如现要使用ao0和ao1两个输出通道用于模拟输出,这时候就只需要创建一个模拟输出任务就可以了。这里做了个小的实验,我先创建了两个任务,每个任务负责控制一个通道的输出,结果出现问题了,我将ao1输出值改变时,它的实际输出会大部分停留在0V,只有少数的点是对的(这也可能是我“写入”函数的配置不对,我使用的是单通道单采样)。
于是后来改用一个任务,用于ao0与ao1两个输出通道的控制:
然后用包含两个元素的一维数组输出采样值给ao0和ao1:
然后运行,并用两个模拟输入通道分别采集两个模拟输出通道的电压进行显示,一切正常了: