Strange. This works precisely as expected. No matter how many times I press/release the
switch.
Code:
@ DEVICE MCLR_OFF, INTRC_OSC_NOCLKOUT, WDT_OFF, BOD_OFF, PWRT_ON, PROTECT_OFF
DEFINE OSCCAL_1K 1
CMCON = 7
TRISIO = %001100
OPTION_REG = %01000000
GPIO = 0
T1CON = 0
'GPIO.0 =
'GPIO.1 = LED HIGH OUT
'GPIO.2 = SWITCH HIGH INPUT
'GPIO.3 = MCLR TIED HIGH
'GPIO.4 =
'GPIO.5 =
Main:
HIGH GPIO.1
PAUSE 1000
LOW GPIO.1
INTCON.1 = 0
INTCON.4 = 1
FLAGS = 0
@ SLEEP
@ NOP
INTCON.1 = 0
HIGH GPIO.1
PAUSE 100
LOW GPIO.1
INTCON.1 = 0
INTCON.4 = 1
FLAGS = 0
@ SLEEP
@ NOP
HIGH GPIO.1
PAUSE 1000
GOTO Main
END
10K pull-down to ground on GPIO.2 with switch pulling it to Vcc on press.
Bookmarks