View Single Post
  #1  
Old 10-02-2012, 01:48 PM
mhead10 mhead10 is offline
Member
 
Join Date: Mar 2012
Posts: 40
obtaining "None" value in Schedule

Can I not assign values in a schedule loop? For instance, the following code prints out "data" correctly, but not the computed value "difference".

Code:
def CHK(err):
    if err < 0:
        buf_size = 100
        buf = ctypes.create_string_buffer('\000' * buf_size)
        nidaq.DAQmxGetErrorString(err,ctypes.byref(buf),buf_size)
        raise RuntimeError('nidaq call failed with error %d: %s'%(err,repr(buf.value)))

def mapping(): #obtains data, calculates difference
	while True:
		yield CHK(nidaq.DAQmxReadAnalogF64(taskHandle,1,float64(-1),DAQmx_Val_GroupByChannel,data.ctypes.data,max_num_samples,ctypes.byref(read),None))# obtain DAQ data, output is data[]
		print data #prints correctly
		difference = yield abs(data[1]-data[0]) #find difference in voltage between first two pots
		print difference #prints "None"
Thank you in advance.
Reply With Quote