Hi I want to control LCD B/L with B.0 and Tmr0 interrupts. But still some problems. I can't find it. Pls Help me !!Code:@ DEVICE pic16F876 ' System Device
@ DEVICE pic16F876, WDT_ON ' Watchdog Timer
@ DEVICE pic16F876, PWRT_ON ' Power-On Timer
@ DEVICE pic16F876, BOD_ON ' Brown-Out Detect
@ DEVICE pic16F876, LVP_OFF ' Low-Voltage Programming
@ DEVICE pic16F876, CPD_OFF ' Data Memory Code Protect
@ DEVICE pic16F876, PROTECT_OFF ' Program Code Protection
@ DEVICE pic16F876, XT_OSC
ADCON1=7
ON INTERRUPT GOTO KESME
INTCON = %11110000 ' Tmr0 aktif
OPTION_REG = %01010101'Pull up dirençleri İPTAL- Bölme oranı 1/64.
Define LCD_DREG PORTC ' LCD data portunu belirle
Define LCD_DBIT 4 ' 4 bit'lik veri yolu
Define LCD_RSREG PORTC ' LCD register seçme portunu belirle
Define LCD_RSBIT 2 ' LCD register seçme bitini belirle
Define LCD_EREG PORTC ' LCD enable portunu belirle
Define LCD_EBIT 3 ' LCD enable bitini belirle
Define LCD_LINES 2 ' LCD'deki satir sayisi
trisb=%11111111
TRISC=%11111101
LCDK VAR BYTE
Z VAR BYTE
Led_isik VAR BYTE
SAYAC VAR BYTE
LCD_Led VAR PORTC.1
'tmr0=0
Lcdk=0
BASLA:
PAUSE 300
LCDOUT $FE,$80,"HI!"
LCDOUT $FE,$C0,"LCD BACK LIGHT CONT."
LCDOUT $FE,$94,"B.0 & TMR0"
DISABLE
KESME:
if INTCON.1=1 then
z=1
Led_isik=0
SAYAC=0
Lcdk=0
endif
if z=1 then
if Lcdk=0 then
LCD_Led=1
Lcdk=1
endif
SAYAC=SAYAC+1
if SAYAC=62 then
SAYAC=0
Led_isik= Led_isik +1
endif
if Led_isik=8 then
LCD_LED=0
Led_isik=0
SAYAC=0
Z=0
Lcdk=0
endif
endif
RESUME
ENABLE
END