diff --git a/EncoderResistorNetworkSizing.py b/EncoderResistorNetworkSizing.py index fd1824da813ace31e76698a66bec2dd52e9b974e..e3b2c439b1f6a7a219ce05152f2528ae7df1027e 100644 --- a/EncoderResistorNetworkSizing.py +++ b/EncoderResistorNetworkSizing.py @@ -31,6 +31,7 @@ class Vals(object): def __repr__(self): return "Vals({!r},{!r})".format(self.hi, self.lo) +prev_max = 0 for state in range(16): #output_vals = [0.0] #for i,r in enumerate(values): @@ -53,6 +54,10 @@ for state in range(16): output_vals = [v.calc() for v in output_vals] #print(state, "{:.3f} -- {:.3f}".format(min(output_vals), max(output_vals))) - output_vals = [ round(v * 255) for v in output_vals ] - print("{:2} {:3} -- {:3}".format(state, min(output_vals), max(output_vals))) + output_vals = [ round(v * (4./5.)*1023) for v in output_vals ] + margin = min(output_vals) - prev_max + print("{:2} {:4.0f} -- {:4.0f} ({:4.0f})".format(state, min(output_vals), max(output_vals), margin)) + if min(output_vals) < prev_max: + print("OVERLAP") + prev_max = max(output_vals)