Search the Community
Showing results for tags 'analogio'.
Found 2 results
There appears to be a mistake in the WaveForms SDK Reference Manual supplied with the SDK. The document says: But the function actually requires the idxChannel AND idxNode, like this: I'm running the following code segment to get the different node options: num_channels = c_int() dwf.FDwfAnalogIOChannelCount(hdwf, byref(num_channels)) print(num_channels.value, "channels") for i in range(0, num_channels.value): print("Channel", i) channel_name = create_string_buffer(32) channel_label = create_string_buffer(16) dwf.FDwfAnalogIOChannelName(hdwf, c_int(i), channel_name, channel_label) print(str(channel_name.value), str(channel_label.value)) num_nodes = c_int() dwf.FDwfAnalogIOChannelInfo(hdwf, c_int(i), byref(num_nodes)) for n in range(0, num_nodes.value): node_name = create_string_buffer(32) node_label = create_string_buffer(16) dwf.FDwfAnalogIOChannelNodeName(hdwf, c_int(i), c_int(n), node_name, node_label) print(" ", str(node_name.value), str(node_label.value))
Hi. I'm working with the SDK and finally got to the point that I can control the Vcc power supply to be either 3.3 V or 5.0 V. It seems the channel numbers are 0 = Vcc, 1 = VP+, 2 = VP-, 3 = Vref1 and 4 = Vref2. Something like this dwf.FDwfAnalogIOChannelNodeSet(hdwf, c_int(1), c_int(0), c_double(True)) dwf.FDwfAnalogIOChannelNodeSet(hdwf, 1,1,c_double(1.86)) will work fine and give me 1.86 V or close to it, but if I try to go past about 2 V, it seems like it can't get there and fluctuates a lot. I'm not sure of the difference between AnalogIOChannelNodeStatusInfo and AnalogIOChannelNodeSetInfo, but it seems that these can go to 0 to 10 V in 1000 steps or so. The Waveforms software has no problem driving them to +10 or -10 or anything in between. Any idea what I could be doing wrong?