Push button rotary encoders are popular input devices for making simple user interfaces. Using a pushbutton rotary encoder requires 3 input pins on your microcontroller: 1 for the switch and 2 for the quadrature outputs. However, in a recent application I had only 1 pin remaining on my MSP430G2553. My only choice was to leverage that pin's analog input capabilities. I first sketched out my requirements, then designed a circuit, measured the performance of my design and wrote microcontroller software to realize it.
From the picture, looks like you have a LCD. What I usually do is to share the LCD data lines with buttons. The buttons have series resistors on them so that they don't short the data lines in the output mode. I set a busy flag in my LCD code during access, so that the timer interrupt code polling buttons would skip the scanning.
I love this technique. A also never hooked up a rotary encoder to my scope and now I'm going to try with and without your circuit. Thanks for the inspiration!
One thing that I should have done is determine if the encoder contacts are break before/after make. Seems to be after based on the contact bounce levels but only a scope trace is authoritative.
From the picture, looks like you have a LCD. What I usually do is to share the LCD data lines with buttons. The buttons have series resistors on them so that they don't short the data lines in the output mode. I set a busy flag in my LCD code during access, so that the timer interrupt code polling buttons would skip the scanning.