#!/usr/bin/env python import numpy as np from math import * import serial, time import struct import sys import socket import matplotlib.pyplot as plt import matplotlib.animation as animation import bitstring n_samples = 20 def read_as5013_12bit(bytes): return (bitstring.Bits(bytes=bytes, length=16)<<4).unpack('uint:16')[0] #signed 12 bit val comes in two bytes #return struct.unpack("<h",bytearray([ (high<<4) , low<<4 ]))[0] def read(ser=None): if ser is None: print "No serial connection!" else: c = ser.read(n_samples) data = [read_as5013_12bit(c[x:x+2]) for x in xrange(0,n_samples,2)] return data def main(): try: ser = serial.Serial(port='/dev/tty.usbserial-FT9L3KWR',baudrate=1000000,timeout=1.) ser.isOpen() print "Established serial connection." except(OSError): #no serial port print "Couldn't find the serial port, entering debug mode." ser = None ser.flush() while True: #connection, address = serversocket.accept() try: data = np.asarray(read(ser=ser)) print data[1::2] - data[::2] except(KeyboardInterrupt): break #if data: # clientsocket.send(data) print "quitting" ser.close() if __name__ == '__main__': main()