lastO1 = None
lastO2 = None
- def __init__(self, i2cbus, addr):
+ def __init__(self, i2cbus, addr, immediate=True):
self.bus = i2cbus
self.addr = intbv(self.ADDR_BASE + intbv(addr, max=2**2), max=2**7)
+ self.immediate = immediate
self._sel = False
self._rs = False
self._sd = False
def posA(self): return self._posA
@posA.setter
- def posA(self, value):
+ def posA(self, value, immediate=None):
self._posA = intbv(value, max=2**8)
+ if immediate or (immediate is None and self.immediate):
+ self.update()
@property
def posB(self): return self._posB
@posB.setter
- def posB(self, value):
+ def posB(self, value, immediate=None):
self._posB = intbv(value, max=2**8)
-
- #@property
- #def pos(self):
- #if self.pos:
- #return self.posB
- #else:
- #return self.posA
+ if immediate or (immediate is None and self.immediate):
+ self.update()
@property
def gpo1(self): return self._gpo1
@gpo1.setter
- def gpo1(self, value):
+ def gpo1(self, value, immediate=None):
v = truth(value)
self._gpo1 = v
- self.updateGPO()
+ if immediate or (immediate is None and self.immediate):
+ self.sendGPO()
@property
def gpo2(self): return self._gpo2
@gpo2.setter
- def gpo2(self, value):
+ def gpo2(self, value, immediate=None):
v = truth(value)
self._gpo2 = v
- self.updateGPO()
+ if immediate or (immediate is None and self.immediate):
+ self.sendGPO()
@property
def instruction(self):