Arama butonu
Bu konudaki kullanıcılar: 1 misafir
3
Cevap
2864
Tıklama
0
Öne Çıkarma
DS1302 ve DS1307 LCD Saat Bağlantısı Nasıl Olur ?
S
17 yıl
Yarbay
Konu Sahibi

Merhaba


16x2 LCD ile Dijital Saat Uygulaması yapıyorum.Fakat saat çok kararsız çalışıyor ve hep geri kalıyor.Bu yüzden RTC kullanmam gerektiğini öğrendim.C.tesi öğleden sonra koşa koşa dükkanlar kapanmadan DS1302 ve 32.768KHz osilatör almaya gittim.32.768KHz buldum ama DS1302 bulamadım.Onun yerine DS1307 buldum ve aldım.Şimdi sorularım ?



1 - DS1302 yerine DS1307 kullansam olur mu?

2 - 1.Sorumun cevabı " Evet " ise DS1307'yi devreme nasıl adapte edebilirim? " Hayır " ise DS1302'yi devreme nasıl adapte edebilirim? (Bağlantıları Gösterirmisiniz?)

3 - Bu entegreleri kullandığımda LCD saat devremin programında bir değişiklik yapmam söz konusu olabilir mi? "Evet" ise Nasıl ?






***Devre Şeması ve Program***


< Resime gitmek için tıklayın >


'*****GİRİŞ VE ÇIKIŞAR***** 
TRISA=255 'PORTA TAMAMI ÇIKIŞ
TRISB=0 'PORTB TAMAMI ÇIKIŞ

'*****LCD TANIMLAMALARI*****
DEFINE LCD_DREG PORTB 'LCD DATA BACAKLARI PORTB'YE BAGLI
DEFINE LCD_DBIT 4 'LCD DATA BITLERI HANGİ BITTEN BASLIYOR
DEFINE LCD_EREG PORTB 'LCD ENABLE BACAGI HANGI PORTA BAGLI
DEFINE LCD_EBIT 3 'LCD ENABLE BITI HANGI PORTA BAGLI
DEFINE LCD_RSREG PORTB 'LCD RS BACAGI HANGI PORTA BAGLI
DEFINE LCD_RSBIT 2 'LCD RS BACAGI HANGI BITE BAGLI
DEFINE LCD_BITS 4 'LCD 4 BIT BAGLI
DEFINE LCD_LINES 2 'LCD KAC SIRADAN OLUSUYOR

'*****DEĞİŞKENLERİ TANIMLA*****
SAAT VAR BYTE
DSAAT VAR BYTE 'DECİMAL SAAT DEĞİŞKENİ
DAKIKA VAR BYTE
SANIYE VAR BYTE
TICKS VAR BYTE 'TMRO İNTERRUPT DEĞİŞKENİ
UPDATE VAR BYTE 'LCD GUNCELLEME DEĞİŞKENİ
I VAR BYTE 'FOR NEXT DÖNGÜSÜ BUTON ARKINI ORTADAN KALDIRAN DEĞİŞKEN

'DEĞİŞKENLERİ SIFIRLA

SAAT=0
DAKIKA=0
SANIYE=0
TICKS=0
UPDATE=1

'*****KESME İŞLEMLERİ*****
OPTION_REG=%00000101 '1/64 BÖLME ORANI
INTCON=$A0 'TMRO VE TÜM KESMELER AKTİF
ON INTERRUPT GOTO KESME 'KESME OLUŞTUĞUNDA BU ADRESE GİT

'BUTONLAR
ANA_DONGU:
IF PORTA.0=0 THEN DAK_ART
IF PORTA.1=0 THEN DAK_AZALT
if PORTA.2=0 THEN SAAT_ART
IF PORTA.3=0 THEN SAAT_AZALT
KONTROL:

IF UPDATE=1 THEN 'UPDATE=1 İSE ALT SATIRA İN
LCDOUT $FE,1 'LCD İÇERİĞNİ TEMİZLE
DSAAT=SAAT 'DECİMAL SAATİ=SAAT İLE EŞİTLE
IF (SAAT//12)=0 THEN
DSAAT=DSAAT+12
ENDIF
IF SAAT < 12 THEN 'SAAT 12'DEN KÜÇÜKSE
LCDOUT $FE,$83, DEC2 DSAAT,":",DEC2 DAKIKA,":",DEC2 SANIYE," AM "
ELSE
LCDOUT $FE,$83, DEC2(DSAAT-12),":",DEC2 DAKIKA,":",DEC2 SANIYE," PM "
ENDIF
UPDATE=0
ENDIF
GOTO ANA_DONGU



'DAKİKA VE SAAT ARTTIRMA İŞLEMLERİ
DAK_ART:
DAKIKA=DAKIKA+1
IF DAKIKA=60 THEN
DAKIKA=0
ENDIF
GOTO ARK_SONDUR

SAAT_ART:
saat=saat+1
if saat=24 then
saat=0
ENDIF
GOTO ARK_SONDUR


DAK_AZALT:
DAKIKA=DAKIKA-1
IF DAKIKA=59 THEN
DAKIKA=0
ENDIF
GOTO ARK_SONDUR

SAAT_AZALT:
saat=saat-1
if saat=23 then saat=0
GOTO ARK_SONDUR


'BUTON ARKINI SÖNDÜRMEK İÇİN GEREKLİ FOR NEXT DÖNGÜSÜ
ARK_SONDUR:
FOR I=1 TO 25
PAUSE 10
NEXT I
UPDATE=1
GOTO KONTROL

'KESME OLUŞUNCA BURADA YAPILAN İŞLER
DISABLE
KESME:
TICKS=TICKS+1
IF TICKS < 61 THEN DEVAM
TICKS=0

SANIYE = SANIYE + 1 'SAN‹YELER 60 OLURSA DAK‹KAYI ARTIR
IF SANIYE >= 60 THEN
SANIYE = 0
DAKIKA = DAKIKA + 1
IF DAKIKA >= 61 THEN 'DAK‹KALAR 60 OLURSA SAAT‹ ARTIR
DAKIKA = 0
SAAT = SAAT + 1
IF SAAT >=24 THEN SAAT = 0
ENDIF
ENDIF
UPDATE = 1 'GÜNCELLEME TAMAMLANDI
DEVAM:
INTCON.2 = 0 'KESME BAYRA/INI TEM‹ZLE
RESUME
END

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



H
17 yıl
Yarbay

Eski devreni unut. DS1302 (veya 7) 1-wire iletişim protokolünü kullanır ve datayı bu protokolü kullanarak önce bir kereliğine set etmeli, ondan sonra zaman zaman okumalısın.

http://www.picbasic.org/forum/showthread.php?t=3356
Burayı oku.


Bu mesaja 1 cevap geldi.
S
17 yıl
Yarbay
Konu Sahibi

Benim ingilizce o kadar iyi değil ya pek anlamadım yazılanları


Acaba hazır bir devre ve program var mı? Bir ders için yapmam gerekiyor da o yüzden.


Bu mesaja 1 cevap geldi.
S
17 yıl
Yarbay
Konu Sahibi

Tamam halletim sorun yok teşekkürler...Ama haala içimde bir ükte kaldı DS1302 ile DS1307 arasında ki farklar konusunda





< Bu mesaj bu kişi tarafından değiştirildi Smoch -- 15 Aralık 2008; 21:17:54 >

DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.