Example #1
0
    def setPattern(self, patt):
        patt = eval(patt, {}, {})

        if len(patt) > 1:
            logging.warning('IO Pattern too large! Restricted.')
            self.findParam('trigpatt').setValue(patt[0])
            return

        # Convert to bits
        bitpattern = strToBits(patt,
                               startbits=self.findParam(['ser', 'startbits'
                                                         ]).getValue(),
                               stopbits=self.findParam(['ser', 'stopbits'
                                                        ]).getValue(),
                               parity=self.findParam(['ser',
                                                      'parity']).getValue())

        # Convert to pattern & Download
        try:
            pat = self.cwAdv.bitsToPattern(
                bitpattern,
                osRate=self.findParam('osrate').getValue(),
                threshold=self.findParam(['adv', 'threshold']).getValue())
            self.cwAdv.setIOPattern(pat,
                                    clkdiv=self.clkdiv,
                                    hackit=self.findParam(
                                        ['adv', 'initialcorrect']).getValue())

            bitstr = ""
            for t in bitpattern:
                bitstr += "%d" % t

        except ValueError, s:
            bitstr = "Error: %s" % s
Example #2
0
    def write(self, string, wait=True):
        """
        Send a string over the USI.
        """

        self.setRunTx(False)
        self.setIdle(1)        
        tosend = self.proc.bitsToTxPattern(strToBits(string, startbits=self.startbits, stopbits=self.stopbits, parity=self.parity, guardbits=self.guardbits), samplesperbit=self.oversamplerate)
        for i in range(0, len(tosend)):
            self.writeSequence(i, tosend[i])
        self.setMaxTx(len(tosend))        
        self.setRunTx(True)
                
        if wait:
            while(self.doneTx() == False):
                time.sleep(0.01)
            
            self.setRunTx(False)     
    def write(self, string, wait=True):
        """
        Send a string over the USI.
        """

        self.setRunTx(False)
        self.setIdle(1)
        tosend = self.proc.bitsToTxPattern(strToBits(string,
                                                     startbits=self.startbits,
                                                     stopbits=self.stopbits,
                                                     parity=self.parity,
                                                     guardbits=self.guardbits),
                                           samplesperbit=self.oversamplerate)
        for i in range(0, len(tosend)):
            self.writeSequence(i, tosend[i])
        self.setMaxTx(len(tosend))
        self.setRunTx(True)

        if wait:
            while (self.doneTx() == False):
                time.sleep(0.01)

            self.setRunTx(False)
Example #4
0
    def setPattern(self, patt):
        patt = eval(patt, {}, {})

        if len(patt) > 1:
            logging.warning('IO Pattern too large! Restricted.')
            self.findParam('trigpatt').setValue(patt[0])
            return

        # Convert to bits
        bitpattern = strToBits(patt, startbits=self.findParam(['ser', 'startbits']).getValue(),
                               stopbits=self.findParam(['ser', 'stopbits']).getValue(),
                               parity=self.findParam(['ser', 'parity']).getValue())

        # Convert to pattern & Download
        try:
            pat = self.cwAdv.bitsToPattern(bitpattern, osRate=self.findParam('osrate').getValue(),
                                                       threshold=self.findParam(['adv', 'threshold']).getValue())
            self.cwAdv.setIOPattern(pat, clkdiv=self.clkdiv, hackit=self.findParam(['adv', 'initialcorrect']).getValue())

            bitstr = ""
            for t in bitpattern: bitstr += "%d" % t

        except ValueError, s:
            bitstr = "Error: %s" % s
Example #5
0
 def strToPattern(self, string, startbits=1, stopbits=1, parity='none'):
     totalpat = strToBits(string, startbits, stopbits, parity)
     return self.bitsToPattern(totalpat)
Example #6
0
 def strToPattern(self, string, startbits=1, stopbits=1, parity='none'):
     totalpat = strToBits(string, startbits, stopbits, parity)
     return self.bitsToPattern(totalpat)