def main(): """Main program""" context = ftdi.new() version_info = ftdi.get_library_version() print("[FTDI version] major: %d, minor: %d, micro: %d" \ ", version_str: %s, snapshot_str: %s" % (version_info.major, version_info.minor, version_info.micro, version_info.version_str, version_info.snapshot_str)) print("ftdi.usb_open(): %d" % ftdi.usb_open(context, 0x0403, 0x6010)) print("ftdi.set_baudrate(): %d" % ftdi.set_baudrate(context, 9600)) ftdi.free(context)
chrcmd += chr(cmd[i]) print "Set IO ret=", ftdi.write_data( ftdic, chrcmd, len(chrcmd) ), "\n" # get IO pin state ret, pins = ftdi.read_pins( ftdic ) print 'IO Pins State =', if ( ret == 0 ): print '0x%02X' % ord( pins[0] ), "\n" SPI_SRAM_23K256_Init(ftdic) SPI_SRAM_23K256_Read_Byte(ftdic, 0x5555) randByte = random.randint(0, 255) SPI_SRAM_23K256_Write_Byte(ftdic, 0x5555, randByte) SPI_SRAM_23K256_Read_Byte(ftdic, 0x5555) SPI_SRAM_23K256_Read_Byte(ftdic, 0x5556) ftdi.disable_bitbang( ftdic ) # close usb ret = ftdi.usb_close( ftdic ) if ret < 0: print 'unable to close ftdi device: %d (%s)' % ( ret, ftdi.get_error_string( ftdic ) ) os._exit( 1 ) ftdi.free( ftdic )
print '%02x' % ord(pins[0]) print '' # read chip id ret, chipid = ftdi.read_chipid(ftdic) print 'FDTI chip id: %X\n' % chipid # read eeprom eeprom_addr = 1 ret, eeprom_val = ftdi.read_eeprom_location(ftdic, eeprom_addr) if (ret == 0): print 'eeprom @ %d: 0x%04x\n' % (eeprom_addr, eeprom_val) print 'complete eeprom:' ret = ftdi.read_eeprom(ftdic) size = 128 ret, eeprom = ftdi.get_eeprom_buf(ftdic, size) if (ret == 0): for i in range(size): print '%02x' % ord(eeprom[i]), if (i % 8 == 7): print '' # close usb ret = ftdi.usb_close(ftdic) if ret < 0: print 'unable to close ftdi device: %d (%s)' % ( ret, ftdi.get_error_string(ftdic)) os._exit(1) ftdi.free(ftdic)