-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdaq_tests.py
58 lines (44 loc) · 1.8 KB
/
daq_tests.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
from PyDAQmx import Task
import numpy as np
import PyDAQmx
import matplotlib.pyplot as plt
ext_start_trigger = False
task = Task()
"""
task.CreateAIVoltageChan("Dev2/ai0", "",PyDAQmx.DAQmx_Val_RSE , -10.0, 10.0, PyDAQmx.DAQmx_Val_Volts, None)
task.CfgSampClkTiming("", 10000, PyDAQmx.DAQmx_Val_Rising, PyDAQmx.DAQmx_Val_FiniteSamps, 1000)
if ext_start_trigger:
task.DAQmxCfgDigEdgeStartTrig("chan", PyDAQmx.DAQmx_Val_Rising)
else:
pass
#task.DAQmxDisableStartTrig()
#task.AutoRegisterEveryNSamplesEvent(PyDAQmx.DAQmx_Val_Acquired_Into_Buffer, self.nsamples, 0)
#task.AutoRegisterDoneEvent(0)
data = np.zeros(1000)
read = PyDAQmx.int32()
PyDAQmx.DAQmxWaitUntilTaskDone(task.taskHandle,PyDAQmx.float64(10.0))
task.ReadAnalogF64(1000, 10.0, PyDAQmx.DAQmx_Val_GroupByChannel,
data, 1000, PyDAQmx.byref(read), None)
print read
plt.plot(data)
plt.show()
"""
task.CreateCIFreqChan("Dev2/ctr1", "", 10.0, 100.0,PyDAQmx.DAQmx_Val_Hz,PyDAQmx.DAQmx_Val_Rising, PyDAQmx.DAQmx_Val_LowFreq1Ctr,
0.01,40, None)
task.CfgImplicitTiming(PyDAQmx.DAQmx_Val_FiniteSamps, 10)
task.StartTask()
data = np.zeros(100)
read = PyDAQmx.int32()
PyDAQmx.DAQmxWaitUntilTaskDone(task.taskHandle,PyDAQmx.float64(10.0))
task.ReadCounterF64(100, 10.0,data,100, PyDAQmx.byref(read), None)
print read
print np.mean(data)
#int32 DAQmxReadCounterF64 (TaskHandle taskHandle, int32 numSampsPerChan, float64 timeout, float64 readArray[], uInt32 arraySizeInSamps, int32 *sampsPerChanRead, bool32 *reserved);
"""
DAQmxErrChk(DAQmxCreateTask("DAQTaskInProject3", &taskOut));
DAQmxErrChk(DAQmxCreateCICountEdgesChan(taskOut, "Dev2/ctr1",
"CountEdges", DAQmx_Val_Rising, 0, DAQmx_Val_CountUp));
DAQmxErrChk(DAQmxCfgSampClkTiming(taskOut, "PFI0",
1000, DAQmx_Val_Rising,
DAQmx_Val_FiniteSamps, 100));
"""