For couple of buttons this code works fine, but when I increase number of button handling operations, some weird things occur - the further from beginning is the button handling routine, more rarely it responds to user.
The code below has 8 "blocks" of button handling.
first 3 work fine, 4th one works only maybe on 10 or 15th press. 5th and further - do not work at all.
And this is not issue of particular code - if I move say "5th block" to 1st place of this code, then it works fine.
PIC18F45K80 @64mhz.
Code:IF UPBT=0 THEN MENUITEM=MENUITEM+1 IF MENUITEM>6 THEN MENUITEM=1 pause 200 ENDIF WHILE UPBT=0:WEND IF DNBT=0 THEN MENUITEM=MENUITEM-1 IF MENUITEM<1 THEN MENUITEM=6 pause 200 ENDIF WHILE DNBT=0:WEND IF LBUT=0 AND MENUITEM=2 THEN RICXVI=RICXVI+1 IF RICXVI>31 THEN RICXVI=1 pause 200 GOSUB SETTIME ENDIF WHILE LBUT=0:WEND IF RBUT=0 AND MENUITEM=2 THEN RICXVI=RICXVI-1 IF RICXVI<1 THEN RICXVI=31 pause 200 GOSUB SETTIME ENDIF WHILE RBUT=0:WEND IF LBUT=0 AND MENUITEM=1 THEN TVE=TVE+1 IF TVE>13 THEN TVE=1 pause 200 GOSUB SETTIME ENDIF WHILE LBUT=0:WEND IF RBUT=0 AND MENUITEM=1 THEN TVE=TVE-1 IF TVE<1 THEN TVE=13 pause 200 GOSUB SETTIME ENDIF WHILE RBUT=0:WEND IF LBUT=0 AND MENUITEM=3 THEN DGE=DGE+1 IF DGE>7 THEN DGE=1 pause 200 GOSUB SETTIME ENDIF WHILE LBUT=0:WEND IF RBUT=0 AND MENUITEM=3 THEN DGE=DGE-1 IF DGE<1 THEN DGE=7 pause 200 GOSUB SETTIME ENDIF WHILE RBUT=0:WEND




Bookmarks