|
8 | 8 | import ctypes |
9 | 9 | import numpy as np |
10 | 10 | from picosdk.ps6000a import ps6000a as ps |
11 | | -#from picosdk.PicoDeviceEnums import PicoDeviceEnums as enums |
| 11 | +from picosdk.PicoDeviceEnums import picoEnum as enums |
12 | 12 | import matplotlib.pyplot as plt |
13 | 13 | from picosdk.functions import adc2mV, assert_pico_ok |
14 | 14 |
|
|
18 | 18 |
|
19 | 19 | # Open 6000 A series PicoScope |
20 | 20 | # returns handle to chandle for use in future API functions |
21 | | -resolution = 0 # PICO_DEVICE_RESOLUTION["PICO_DR_8BIT"] |
| 21 | +resolution = enums.PICO_DEVICE_RESOLUTION["PICO_DR_8BIT"] |
22 | 22 | status["openunit"] = ps.ps6000aOpenUnit(ctypes.byref(chandle), None, resolution) |
23 | 23 | assert_pico_ok(status["openunit"]) |
24 | 24 |
|
25 | 25 | # Set channel A on |
26 | 26 | # handle = chandle |
27 | | -channelA = 0 #enums.PICO_CHANNEL["PICO_CHANNEL_A"] |
28 | | -coupling = 0 #enums.PICO_COUPLING["PICO_DC"] |
| 27 | +channelA = enums.PICO_CHANNEL["PICO_CHANNEL_A"] |
| 28 | +coupling = enums.PICO_COUPLING["PICO_DC"] |
29 | 29 | channelRange = 7 |
30 | 30 | # analogueOffset = 0 V |
31 | | -bandwidth = 0 #enums.PICO_CHANNEL["PICO_BW_FULL"] |
| 31 | +bandwidth = enums.PICO_BANDWIDTH_LIMITER["PICO_BW_FULL"] |
32 | 32 | status["setChannelA"] = ps.ps6000aSetChannelOn(chandle, channelA, coupling, channelRange, 0, bandwidth) |
33 | 33 | assert_pico_ok(status["setChannelA"]) |
34 | 34 |
|
|
43 | 43 | # enable = 1 |
44 | 44 | source = channelA |
45 | 45 | # threshold = 1000 mV |
46 | | -direction = 2 # PICO_THRESHOLD_DIRECTION["PICO_RISING"] |
| 46 | +direction = enums.PICO_THRESHOLD_DIRECTION["PICO_RISING"] |
47 | 47 | # delay = 0 s |
48 | 48 | # autoTriggerMicroSeconds = 1000000 us |
49 | 49 | status["setSimpleTrigger"] = ps.ps6000aSetSimpleTrigger(chandle, 1, source, 1000, direction, 0, 1000000) |
50 | 50 | assert_pico_ok(status["setSimpleTrigger"]) |
51 | 51 |
|
52 | 52 | # Get fastest available timebase |
53 | 53 | # handle = chandle |
54 | | -enabledChannelFlags = 1 #PICO_CHANNEL_FLAGS["PICOCHANNEL_A_FLAGS"] |
| 54 | +enabledChannelFlags = enums.PICO_CHANNEL_FLAGS["PICO_CHANNEL_A_FLAGS"] |
55 | 55 | timebase = ctypes.c_uint32(0) |
56 | 56 | timeInterval = ctypes.c_double(0) |
57 | 57 | # resolution = resolution |
|
74 | 74 | # bufferMax = bufferAMax |
75 | 75 | # bufferMin = bufferAMin |
76 | 76 | # nSamples = nSamples |
77 | | -dataType = 1 # PICO_DATA_TYPE["PICO_INT16_T"] |
| 77 | +dataType = enums.PICO_DATA_TYPE["PICO_INT16_T"] |
78 | 78 | waveform = 0 |
79 | | -downSampleMode = 0x80000000 # PICO_RATIO_MODE["PICO_RATIO_MODE_RAW"] |
80 | | -clear = 0x00000001 # PICO_ACTION["PICO_CLEAR_ALL"] |
81 | | -add = 0x00000002 # PICO_ACTION["PICO_ADD"] |
82 | | -action = clear|add # PICO_ACTION["PICO_CLEAR_WAVEFORM_CLEAR_ALL"] + PICO_ACTION["PICO_ADD"] |
| 79 | +downSampleMode = enums.PICO_RATIO_MODE["PICO_RATIO_MODE_RAW"] |
| 80 | +clear = enums.PICO_ACTION["PICO_CLEAR_ALL"] |
| 81 | +add = enums.PICO_ACTION["PICO_ADD"] |
| 82 | +action = clear|add # PICO_ACTION["PICO_CLEAR_WAVEFORM_CLEAR_ALL"] | PICO_ACTION["PICO_ADD"] |
83 | 83 | status["setDataBuffers"] = ps.ps6000aSetDataBuffers(chandle, channelA, ctypes.byref(bufferAMax), ctypes.byref(bufferAMin), nSamples, dataType, waveform, downSampleMode, action) |
84 | 84 | assert_pico_ok(status["setDataBuffers"]) |
85 | 85 |
|
|
0 commit comments