From b69ba2419aad372a25b691305f03ff2ef3441a6f Mon Sep 17 00:00:00 2001 From: Dan White Date: Fri, 20 Apr 2012 22:14:11 -0500 Subject: [PATCH] WIP --- python-lib/mpsse-test.py | 38 ++++++++++++++++++++++++++++++-------- python-lib/usbio.py | 15 +++++++++------ 2 files changed, 39 insertions(+), 14 deletions(-) diff --git a/python-lib/mpsse-test.py b/python-lib/mpsse-test.py index 7b61bb7..202f470 100644 --- a/python-lib/mpsse-test.py +++ b/python-lib/mpsse-test.py @@ -1,7 +1,7 @@ #!/usr/bin/env python -import time import struct +from time import sleep from myhdl import intbv from myhdl import bin as b @@ -98,10 +98,10 @@ def w(v): spi.Stop() spi = AtoiSPI0(100e3) -spi.SetLoopback(0) +#spi.SetLoopback(0) -i2c = AtoiI2C(10e3) +i2c = AtoiI2C(100e3) ibias = usbio.AD524x(i2c, 0) @@ -109,11 +109,28 @@ vatoi = usbio.AD524x(i2c, 2) v430 = usbio.AD524x(i2c, 3) +# +# Power supply testing +# +if 1: + v430.posA = 0 + v430.update(True) + sleep(1) + v430.posA = 255 + v430.update(True) + sleep(1) + v430.posB = 0 + v430.update(True) + sleep(1) + v430.posB = 255 + v430.update(True) + + # # DAC testing # -if 1: +if 0: #turn on internal reference always spi.SetCS('dac') @@ -129,7 +146,8 @@ if 1: all_dacs_on[8:] = 0xff w(int2str(all_dacs_on, 32)) - w(dacval(2**15)) + w(dacval(0x8000)) + @@ -139,8 +157,12 @@ if 1: if 0: adc = usbio.ADS8201(spi) adc.setRegister(adc.TRIGGER_SCR, 0x02) - adc.getRegister(adc.TRIGGER_SCR) + rv = adc.getRegister(adc.TRIGGER_SCR) + print 'receivd:', b(rv, 16) + + def sr(n): + adc.setRegister(adc.CHAN_SEL, n) + rv = adc.getRegister(adc.CHAN_SEL) + print 'receivd:', b(rv, 16) - adc.setRegister(adc.CHAN_SEL, 6) - adc.getRegister(adc.CHAN_SEL) diff --git a/python-lib/usbio.py b/python-lib/usbio.py index 0c4b17f..8ead241 100644 --- a/python-lib/usbio.py +++ b/python-lib/usbio.py @@ -2,6 +2,7 @@ from array import array import struct +import time from myhdl import intbv from myhdl import bin as b @@ -571,25 +572,27 @@ class ADS8201(object): w = intbv(0x8000)[16:] w[14:10] = intbv(address, max=2**4) w[8:] = intbv(value, max=2**8) - print b(w, 16) + print 'sending:', b(w, 16) self.bus.SetCS('adc') self.bus.Start() self.bus.Write(int2str(w, 16)) + time.sleep(1e-3) self.bus.Stop() def getRegister(self, address): w = intbv(0x4000)[16:] w[14:10] = intbv(address, max=2**4) - print b(w, 16) + print 'sending:', b(w, 16) self.bus.SetCS('adc') self.bus.Start() rval = self.bus.Exchange(int2str(w, 16)) + time.sleep(1e-3) self.bus.Stop() - i = 0 + i = 8 * (len(rval)-1) r = 0 for c in rval: r += ord(c) << i - i += 8 + i -= 8 return r def read(self): @@ -598,11 +601,11 @@ class ADS8201(object): self.bus.Start() rval = self.bus.Exchange(int2str(w, 16)) self.bus.Stop() - i = 0 + i = 8 * (len(rval)-1) r = 0 for c in rval: r += ord(c) << i - i += 8 + i -= 8 return r -- 2.25.1