diff --git a/examples/usb-basic.py b/examples/usb-basic.py index 21aa235832b818d84681450ce20c95fa1e395429..fe58bcf403c63ca6335d20fe0907990ea32055a8 100755 --- a/examples/usb-basic.py +++ b/examples/usb-basic.py @@ -33,14 +33,17 @@ for index in range(25): lut[index*64] = index | 0x40 lut[24*64] |= 0x20 for channel in range(3): - for row in range(256): - value = int(pow(row / 256.0, 2.2) * 0x10000) - i = (channel << 8) + row + for row in range(257): + value = min(0xFFFF, int(pow(row / 256.0, 2.2) * 0x10000)) + i = channel * 257 + row packetNum = i / 31 packetIndex = i % 31 + #print "%d, %d = 0x%04x" % (channel, row, value) lut[packetNum*64 + 2 + packetIndex*2] = value & 0xFF lut[packetNum*64 + 3 + packetIndex*2] = value >> 8 -dev.write(1, ''.join(map(chr, lut))) +lutPackets = ''.join(map(chr, lut)) +#print binascii.b2a_hex(lutPackets) +dev.write(1, lutPackets) print "LUT programmed" # Slowly push random frames to the device @@ -54,7 +57,7 @@ while True: else: control = index - data = chr(control) + ''.join(chr(random.randrange(256)) for i in range(63)) + data = chr(control) + ''.join(chr(random.choice([0, 255])) for i in range(63)) dev.write(1, data) #print binascii.b2a_hex(data)