can somebody tell me why my code keeps resetting please
Code:
Define LCD_DREG PORTB
'Set starting data bit
Define LCD_DBIT 4 'rb4,rb5,rb6,rb7
'Set LCD RS Port
DEFINE LCD_RSREG portb
'Set LCD RS Bit
define LCD_RSBIT 3
'Set LCD Enable Port
Define LCD_EREG portb
'Set LCD Enable Bit
Define LCD_EBIT 2
'Set number of LCD Lines
Define LCD_LINES 2
'Set Command Delay time in uS
define LCD_COMMANUS 2000
'Set Data delay time in uS
define LCD_DATAUS 50
pause 100 'let lcd start
symbol fire = portb.1
symbol ac = portb.0
symbol up = porta.0
symbol down = porta.1
maxdelay var word
maxdelay = 8000
delay var word
delay = 0
trisa = %00000011
trisb = %00000001
lcdout 254,1, "BenjiTEMP"
lcdout 254,192, "Dimmer v1"
pause 1000
lcdout 254,1
on interrupt goto firetriac
intcon = %10010000
scan:
if up = 1 then
delay = delay + 2
if delay > maxdelay then
delay = maxdelay
endif
endif
if down = 1 then
delay = delay - 2
if delay < 2 then
delay = 2
endif
endif
goto scan
firetriac:
pauseus maxdelay - delay
fire = 1
pauseus 10
fire = 0
INTCON.1=0
resume
enable
Bookmarks