do you mean LedTimer RES 1 ? thanks On 6/07/2013 9:42 PM, Byron Jeff wrote: > On Sat, Jul 06, 2013 at 07:08:16PM +0800, Electronic Consultation wrote: >> Guys, >> >> I want to reduce LedTimer after interrupt but it returned to 20 again >> after interrupt, >> Do you have idea how handle it ? > The Equate (EQU) you have below fixes the value of LedTimer to 20. Since > you were moving it to COUNT, I figured you wanted a constant 20 counts to > count down in COUNT (which I do not see a definition for). > > Your code uses the RES directive to declare variables. If you want LedTim= er > to change, then it needs to be a variable too. > > BAJ > >> thanks >> [CODE]LedTimer EQU .20 ;10 decimal (for content of the counter to get 10= 0ms) >> >> led_state_1 >> bcf INTCON,T0IF ;clear the interrupt f= lag >> bsf PORTB, POWERLED ;Turn on LED >> movlw LedTimer >> movwf COUNT >> >> >> ;counting >> >> check_counter >> btfss INTCON,T0IF >> goto check_counter >> >> >> sublw .1 >> btfss STATUS, Z ;Is the result 0, clear CO= UNT >> >> >> goto check_counter ;if false check the COUNTER again >> goto next_state ;if true go to this stat= ement >> >> >> >> next_state >> clrf COUNT ;if false go to this >> statement >> incf LedState,1 ; if 00 increase the >> state, for the next state >> >> return[/CODE] >> --=20 >> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive >> View/change your membership options at >> http://mailman.mit.edu/mailman/listinfo/piclist --=20 http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .