Exemplo n.º 1
0
 def execute(self, reset):
     driver = jtag_driver.JTAGDriver(self.BIN_FILES)
     driver.executeJTAGCommands(resetPRU=reset)
     dataRead = jtag_driver.compareResults(self.assemblyWriter.atpOutputSeq)
     dataLines = []
     for i in range(0, len(dataRead), 8 * 16):
         dataLines.append(dataRead[i:i + (8 * 16)])
     log.debug('length of data recorded from device : %s' % len(dataRead))
     log.debug('data will be written to : %s' % self.MEM_FILE)
     with open(self.MEM_FILE, 'wb') as outFile:
         outFile.write('@%s\n' % hex(self.startAdd)[2:].upper())
         for x in range(0, len(dataLines)):
             dataLine = dataLines[x]
             for i in range(0, len(dataLine), 16):
                 data1 = dataLine[i:(i + 8)]
                 data2 = dataLine[i + 8:(i + 16)]
                 data1 = hex(int(data1, 2))[2:].upper()
                 if len(data1) == 1:
                     data1 = '0' + data1
                 data2 = hex(int(data2, 2))[2:].upper()
                 if len(data2) == 1:
                     data2 = '0' + data2
                 outFile.write('%s %s ' % (data2, data1))
             outFile.write('\n')
         outFile.write('p\n')
     return dataRead
Exemplo n.º 2
0
 def execute(self, reset):
     if len(self.binaryFiles) > 1:
         driver = jtag_driver.JTAGDriver(self.binaryFiles)
         driver.executeJTAGCommands(resetPRU=reset)
         if len(self.validResult) > 0:
             result = jtag_driver.compareResults(self.validResult)
             if len(result) > 1:
                 log.info('UI:::GREEN:::20:::Captured data is: %s (%s)' % (result, hex(int(result, 2)).upper()))
                 return result
             else:
                 return ''
     else:
         log.debug('%s contains no executible parts' % self.name)
     return ''
Exemplo n.º 3
0
 def execute(self, reset):
     driver = jtag_driver.JTAGDriver(self.BIN_FILES)
     driver.executeJTAGCommands(resetPRU=reset)
     return jtag_driver.compareResults(self.assemblyWriter.atpOutputSeq)
Exemplo n.º 4
0
                                        cwd=binaryFolder)
                binFileCreated = os.path.split(p)
                binFileCreated = binFileCreated[len(binFileCreated) -
                                                1].replace('.p', '.bin')
                binFileCreated = os.path.join(binaryFolder, binFileCreated)
                log.debug('Successfully compiled %s at %s' %
                          (p, binFileCreated))
                binaryFiles.append(binFileCreated)
        except Exception, e:
            log.error(e)
            # raise
        return binaryFiles


if __name__ == '__main__':
    # Test
    import jtag_driver

    a = AtpToAssembler(os.path.join('patterns', 'led_test_4w.atp'))
    ouotput = os.path.join(project_folder, tempF, asseblerF)
    a.convertToAssembler(ouotput)
    binFiles = a.compileAssemblerFiles(
        os.path.join(project_folder, 'temp', 'bin'))
    print(binFiles)
    jtag_driver.powerDownJTAG()
    jtag_driver.powerUpJTAG()
    driver = jtag_driver.JTAGDriver(binFiles)
    driver.executeJTAGCommands()
    driver.logPRUMemContents()
    jtag_driver.compareResults(a.atpOutputSeq)
Exemplo n.º 5
0
 def getResults(self):
     return jtag_driver.compareResults(self.validResult)