我正在尝试在 PyDAQmx 中编写一个程序,该程序计算数字边缘并每隔 n 个边缘输出一个 TTL 信号。我无法将 PyDAQmx 中的采集模式设置为“1 个样本(按需)”,这是我在使用 LabVIEW 时设置的。我正在使用 NI USB6210 DAQ 设备。
这是我第一次使用 NIDAQ/PyDAQMX/etc 进行编码,所以我基于 PyDAQmx 页面上的一个示例,该页面显示了如何将 C 程序转换为 Python,相关的代码如下所示:
read = int32()
data = numpy.zeros((1000,), dtype=numpy.uint32)
try:
DAQmxCreateTask("",byref(taskHandle))
DAQmxCreateCICountEdgesChan(taskHandle,"Dev6/ctr0","",DAQmx_Val_Rising,0,DAQmx_Val_CountUp)
#Somehow set acquisition mode here
DAQmxStartTask(taskHandle)
while True:
DAQmxReadCounterScalarU32 (taskHandle, 1000, None, read)
print "Acquired %d samples"%read.value
print "result is %s " %result