changeset 0:9073470193f3

initial
author Radomir Dopieralski <sheep-devel@sheep.art.pl>
date Sun, 22 Jun 2014 12:52:27 +0000
parents
children 00778568562d
files __init__.py maestro.py
diffstat 1 files changed, 16 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/maestro.py	Sun Jun 22 12:52:27 2014 +0000
@@ -0,0 +1,16 @@
+
+def int7bit(value):
+    byte1 = sum(2 ** i for i in range(7) if value & 2**i)
+    byte2 = sum(2 ** i for i in range(7) if value & 2**(i + 7))
+    return chr(byte1) + chr(byte2)
+        
+
+class Maestro(object):
+    def __init__(self, serial):
+        self.serial = serial
+
+    def init(self):
+        self.serial.write('\xAA')
+
+    def move(self, servo, position):
+        self.serial.write('\x84' + chr(servo) + int7bit(int(position * 4)))