• New approach to Rotary Encoder

    Here is an experiment on Rotary Encoders and a different approach than the standard XOR way.

    Code:
    loop:
    if portb.1=0 then                 'here is switch 1 of the rotary encoder
        counter=counter+1
        goto lcd
    endif
     
    if portb.0=0 then                 'here is switch 2 of the rotary encoder
        counter=counter-1
        goto lcd
    endif
     
    goto loop
     
    lcd:
    lcdout $fe,$c0,dec5 counter
    while (portb.0=0 or portb.1=0):pause 10:wend
    goto loop
    The key is the last While/Wend command where it checks for the next pulse comming after the first edge of either switch of the encoder.

    Common of the encoder is Low and Pull Up is supposed to be active.

    Ioannis
    This article was originally published in forum thread: New approach to Rotary Encoder started by Ioannis View original post