Esempio n. 1
0
def read_eeprom(port_name, hexfile, eesize):
    print 'Reading %d kbytes'%(eesize)
    prog = EEPROM_Programmer(port_name)
    outfile = hex_reader.hex_reader(hexfile)

    hexdat = hex_reader.hex_data()

    data=[];

    for i in range(0, (eesize*1024)/64):
        data.extend(prog.read_data(i*8, 8))
                    
    print "EEPROM Read, Filling data block"
    hexdat.fill(0, data)
    print "Writting output file"
    outfile.write(hexdat)
    
    print "EEPROM read succeeded"
        
    prog.close()
Esempio n. 2
0
def read_eeprom(port_name, hexfile, eesize):
    print 'Reading %d kbytes' % (eesize)
    prog = EEPROM_Programmer(port_name)
    outfile = hex_reader.hex_reader(hexfile)

    hexdat = hex_reader.hex_data()

    data = []

    for i in range(0, (eesize * 1024) / 64):
        data.extend(prog.read_data(i * 8, 8))

    print "EEPROM Read, Filling data block"
    hexdat.fill(0, data)
    print "Writting output file"
    outfile.write(hexdat)

    print "EEPROM read succeeded"

    prog.close()
Esempio n. 3
0
def program(port_name, hexfile):
    prog = EEPROM_Programmer(port_name)
    infile = hex_reader.hex_reader(hexfile)
    hexdat = infile.read()

    for i in range(0, len(hexdat.size)):
        while (hexdat.size[i] > 8):
            prog.write_data(hexdat.base[i], 8, hexdat.data[i])
            hexdat.base[i] = hexdat.base[i] + 8
            hexdat.data[i] = hexdat.data[i][7:-1]
            hexdat.size[i] = hexdat.size[i] - 8

        prog.write_data(hexdat.base[i], hexdat.size[i], hexdat.data[i])

    time.sleep(1)

    for i in range(0, len(hexdat.size)):
        while (hexdat.size[i] > 8):
            data = prog.read_data(hexdat.base[i], 8)
            prog.write_data(hexdat.base[i], 8, hexdat.data[i])
            hexdat.base[i] = hexdat.base[i] + 8
            if (data != hexdat.data[0:7]):
                print 'Verify failed for base 0x%02X-%02X' % (
                    (hexdat.base[i] / 256), (hexdat.base[i] % 256))
                exit - 1
            hexdat.data[i] = hexdat.data[i][8:-1]
            hexdat.size[i] = hexdat.size[i] - 8

        data = prog.read_data(hexdat.base[i], hexdat.size[i])
        if (data != hexdat.data[i]):
            print 'Verify failed for base 0x%02X+%02X' % (
                (hexdat.base[i] / 256), (hexdat.base[i] % 256))
            exit(-1)

    print "Programmation done with success"

    prog.close()
Esempio n. 4
0
def program(port_name, hexfile):
    prog = EEPROM_Programmer(port_name)
    infile = hex_reader.hex_reader(hexfile)
    hexdat = infile.read()

    for i in range(0, len(hexdat.size)):
        while (hexdat.size[i]>8):
            prog.write_data(hexdat.base[i], 8, hexdat.data[i])
            hexdat.base[i] = hexdat.base[i] + 8;
            hexdat.data[i] = hexdat.data[i][7:-1]
            hexdat.size[i] = hexdat.size[i]-8

        prog.write_data(hexdat.base[i], hexdat.size[i], hexdat.data[i])


    time.sleep(1)

    for i in range(0, len(hexdat.size)):
        while (hexdat.size[i]>8):
            data = prog.read_data(hexdat.base[i], 8)
            prog.write_data(hexdat.base[i], 8, hexdat.data[i])
            hexdat.base[i] = hexdat.base[i] + 8;
            if (data != hexdat.data[0:7]):
                print 'Verify failed for base 0x%02X-%02X'%((hexdat.base[i]/256),(hexdat.base[i]%256))
                exit -1
            hexdat.data[i] = hexdat.data[i][8:-1]
            hexdat.size[i] = hexdat.size[i]-8

        data = prog.read_data(hexdat.base[i], hexdat.size[i])
        if (data != hexdat.data[i]):
            print 'Verify failed for base 0x%02X+%02X'%((hexdat.base[i]/256),(hexdat.base[i]%256))
            exit(-1)

    print "Programmation done with success"
        
    prog.close()