' Programın Adı : DS 1302 RTC ile SAAT-TARIH programı (Program ayarlı)
' Not : DS1302 REAL TIME CLOCK (RTC-Gerçek zaman saati) UYGULAMASI
DEFINE LCD_DREG PORTD
DEFINE LCD_DBIT 4
DEFINE LCD_RSREG PORTD
DEFINE LCD_RSBIT 2
DEFINE LCD_EREG PORTD
DEFINE LCD_EBIT 3
DEFINE LCD_BITS 4
DEFINE LCD_LINES 2
CPIN VAR PORTC.7
DPIN VAR PORTC.6
RST VAR PORTC.5
SANIYE VAR BYTE
DAKIKA VAR BYTE
SAAT VAR BYTE
GUN VAR BYTE
AY VAR BYTE
HFTGUNU VAR BYTE
YIL VAR BYTE
KONTROL VAR BYTE
GIRIS VAR BYTE
SANIYE = $00
DAKIKA = $05
SAAT = $15
GUN = $20
AY = $06
HFTGUNU = $00
YIL = $05
KONTROL = $00
GIRIS = %00000011
GOSUB TARIHSAATAYARI
LCDOUT $FE,1
LCDOUT "REAL TIME CLOCK"
PAUSE 1000
LCDOUT $FE,$C0
LCDOUT "DS1302SAAT-TARIH"
PAUSE 1000
ANA_PROGRAM:
GOSUB TARIHSAATOKU
LCDOUT $FE,1
LCDOUT "SAAT :",HEX(SAAT),":",HEX(DAKIKA),":",HEX(SANIYE)
LCDOUT $FE,$C0
LCDOUT "TARIH:",HEX(GUN),"/",HEX(AY),"/200",HEX(YIL)
PAUSE 1000
GOTO ANA_PROGRAM
END
TARIHSAATAYARI :
HIGH RST
SHIFTOUT DPIN,CPIN,0,[%101111108,SANIYE8,DAKIKA8,SAAT8,GUN8,AY8,HFTGUNU8,YIL8,KONTROL8]
LOW RST
RETURN
TARIHSAATOKU:
HIGH RST
SHIFTOUT DPIN,CPIN,0,[%101111118]
SHIFTIN DPIN,CPIN,1,[SANIYE8,DAKIKA8,SAAT8,GUN8,AY8,HFTGUNU8,YIL8,KONTROL8]
LOW RST
RETURN
GECIKME:
PAUSE 1000
RETURN
|