#Python code for reading a KY-040 rotary encoder, adapted from Arduino example here:#http://henrysbench.capnfatz.com/henrys-bench/arduino-sensors-and-input/keyes-ky-040-arduino-rotary-encoder-user-manual/importRPi.GPIOasGPIOGPIO.setmode(GPIO.BCM)pinA=23# Connect to CLKpinB=24# Connect to DATAencoderPos=0GPIO.setup(pinA,GPIO.IN,pull_up_down=GPIO.PUD_DOWN)GPIO.setup(pinB,GPIO.IN,pull_up_down=GPIO.PUD_DOWN)pinALast=GPIO.input(pinA)try:whileTrue:aVal=GPIO.input(pinA)if(aVal!=pinALast&aVal==0):if(GPIO.input(pinB)!=aVal):encoderPos=encoderPos+1else:encoderPos=encoderPos-1print("Position: "+str(encoderPos))pinALast=aValexceptKeyboardInterrupt:GPIO.cleanup()
Comments (0)
HTTPSSSH
You can clone a snippet to your computer for local editing.
Learn more.