From 9ade21fbd9301bf8ff49af04c9805e59951a176d Mon Sep 17 00:00:00 2001 From: Dat Nguyen Date: Fri, 27 Sep 2019 14:40:03 -0500 Subject: Initial test_Encoder.py --- System_Python/test_Encoder.py | 55 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 System_Python/test_Encoder.py diff --git a/System_Python/test_Encoder.py b/System_Python/test_Encoder.py new file mode 100644 index 0000000..875b5be --- /dev/null +++ b/System_Python/test_Encoder.py @@ -0,0 +1,55 @@ +import time +import RPi.GPIO as GPIO + +GPIO.setmode(GPIO.BCM) + +PIN_CLK = 3 #2 +PIN_DAT = 2 #3 +PIN_CS = 4 +delay = 0.0000005 + +# pin setup done here +try: + GPIO.setup(PIN_CLK,GPIO.OUT) + GPIO.setup(PIN_DATA,GPIO.IN) + GPIO.setup(PIN_CS,GPIO.OUT) + GPIO.output(PIN_CS,1) + GPIO.output(PIN_CLK,1) +except: + print "ERROR. Unable to setup the configuration requested" + +#wait some time to start +time.sleep(0.5) + +print "GPIO configuration enabled" + +def clockup(): + GPIO.output(PIN_CLK,1) +def clockdown(): + GPIO.output(PIN_CLK,0) + +def readpos(): + GPIO.output(PIN_CS,0) #pulls low to start + + time.sleep(delay*2) + data = [0] + clockdown() + + for i in range(0,10); #bitcount): + clockup() #375 ns between each + data[i]<<=1 + data[i]|=GPIO.input(PIN_DATA) + clockdown() + + GPIO.output(PIN_CS,1) #pull high after finish + return data + +try: + while(1): + print readpos() + time.sleep(0.001) + #break + +finally: + print "cleaning up GPIO" + GPIO.cleanup() \ No newline at end of file -- cgit v1.2.3