what I did was
START:
IF PORTB.0 = 0 THEN START
WORK:
DO SOMETHING HERE & THERE 'this takes 250ms to complete
LET X = X + 1
IF X > 333 THEN GOSUB GOHIGH
IF PORTB.0 = 0 THEN START
GOTO WORK
GOHIGH:
HIGH PORTC.3
PAUSE 500
LOW PORTC.3
LET X = 0
RETURN
So, after about 3 seconds my port goes high for 500ms but I still have a 500ms + 250ms = 750ms gap where my inputs are ignored. A 555 one-shot would work fine but I want to avoid adding more circuitry if possible.
Bookmarks