Exemple #1
0
 def _iobang(self, mask, level):
     bval, bmask, omask, bmode = self._b
     if not (mask & omask):
         ### pin isn't in port mask
         if level:
             ### remove from mask, let pullup handle it
             bmask &= ~mask
             _d2xx.mode(self._h, bmask, bmode)
         else:
             ### add to mask and drag it low
             bmask |= mask
             _d2xx.mode(self._h, bmask, bmode)
         self._b = (bval, bmask, omask, bmode)
         self.write(chr(bval & ~mask))
         return
     ### pin is already in port mask -- adjust
     if level:
         bval |= mask
     else:
         bval &= ~mask
     self.write(chr(bval))
 def _iobang(self, mask, level):
     bval, bmask, omask, bmode = self._b
     if not (mask & omask):
         ### pin isn't in port mask
         if level:
             ### remove from mask, let pullup handle it
             bmask &= ~mask
             _d2xx.mode(self._h, bmask, bmode)
         else:
             ### add to mask and drag it low
             bmask |= mask
             _d2xx.mode(self._h, bmask, bmode)
         self._b = (bval, bmask, omask, bmode)
         self.write(chr(bval & ~mask))
         return
     ### pin is already in port mask -- adjust
     if level:
         bval |= mask
     else:
         bval &= ~mask
     self.write(chr(bval))
Exemple #3
0
 def mode(self, mask, mode):
     if (mode == _d2xx.FT_MODE_UART) or (not mask):
         self._b = None
     else:
         self._b = (0x00, mask, mask, mode)
     _d2xx.mode(self._h, mask, mode)
 def mode(self, mask, mode):
     if (mode == _d2xx.FT_MODE_UART) or (not mask):
         self._b = None
     else:
         self._b = (0x00, mask, mask, mode)
     _d2xx.mode(self._h, mask, mode)