geri sayan sayac

Başlatan sergeanteken, 10 Haziran 2014, 08:44:09

sergeanteken

sayın hocalarım aşagıda verdiğim programda 4 saatteen geri sayan ve bunu lcd ekranda göstermek istiyorum.üzerinde biraz uğraştım ama isis de denemelerimde sadece saniyeyi geri saydırabildim.hata nerede yardımcı olabilirimisiniz.16f628 kullandım.
PORTA=0
PORTB=0
TRISA=%00000000
TRISB=%00000000
DEFINE LCD_DREG PORTB
DEFINE LCD_DBIT 4
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 3
define LCD RWREG PORTB
define LCD_RWBIT 2
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 1
DEFINE LCD_BITS 4
DEFINE LCD_LINES 2
ON INTERRUPT GoTo KESME 
OPTION_REG=%10001000
INTCON=%00001001
SAYAC VAR BYTE
SN VAR BYTE
DAK VAR BYTE
SAAT VAR BYTE
CLEAR
PAUSE 200
LCDOUT $FE,1
LOW PORTB.2
BASLA:
LCDOUT $FE,$84,DEC2 SAAT,":",DEC2  DAK,":",DEC2 SN
GOTO BASLA
DISABLE
KESME:
SAYAC=SAYAC-1
IF SAYAC=0 then
SAYAC=60
SN=SN-1
IF SN=0 THEN
SN=60
DAK=DAK-1
IF DAK=0 THEN
DAK=60
SAAT=SAAT-1
IF SAAT=0 THEN
SAAT=0
ENDIF
ENDIF
ENDIF
ENDIF
INTCON.2=0
RESUME
ENABLE
END