RTC (saat ) chipleri hakkında

Başlatan mhk, 07 Ağustos 2003, 03:50:33

mmengi

dostum aşağıdaki adreste benim çalıştırıp denediğim program ve proteus da çizilmiş şeması var. DS1307 uçlarını belirttim ds1307 nin diğer uçları data sheet indeki gibi olacak. Bir dene istersen. program 16f628 için hazırlanmış.


http://groups.yahoo.com/group/PicProjeUP/files/mmengi/

mhk

Teşekkür ederim arkadaşlar. Tavsiyelerinizi deneyeceğim. İnşaallah olur. DS 1307 yerine PCF 8583 denemiştim onda da aynı sonuç olmuştu. İyi çalışmalar.
"Ya olduğun gibi görün, Ya da göründüğün gibi ol..." Mevlana

Erol YILMAZ

ben NJU6355 kullanmayi dusunuyorum. Nereden bulabiliriz?

mhk

Sevgili arkadaşlar. sorun adresteymiş. PCF için bulduğum kodta adres bilgisi diğerlerinden ( DS1307 ) farklı. Saat ve tarih tamam. Aşağıda denenmiş çalışan programı inceleyebilirsiniz. Sevgili Erol PCF8583 ü bir dene istersen kod olarak çok basit ve sorunsuz.SCL ve SDA hattında iki eleman ( PCF8583 ve AT24C64 ) bağlı olduğunu ve test için en alttaki eeprom kodunuda yazdım.


' LCD saat programı using PCF8583 RTC

define osc 20
@       device WDT_OFF &  pwrt_on

Define  LCD_DREG        PORTD   ' Define LCD connections
Define  LCD_DBIT        4
Define  LCD_RSREG       PORTE
Define  LCD_RSBIT       0
Define  LCD_EREG        PORTE
Define  LCD_EBIT        1

       ADCON1 = 7      ' PORTA and E digital
       Low PORTE.2     ' LCD R/W low = write
       Pause 100       ' Wait for LCD to startup

symbol Up=portb.3
symbol Down=portb.2
symbol Set=portb.1
symbol SCL=portc.0
symbol SDA=portc.1

kontrol  con %10100000

sec var bit
B0 var byte
S var byte
M var byte
H var byte
D var byte
Mn var byte
Y var byte
addr var word
linedeg var byte
addr=0
linedeg=0

OPTION_REG=$7F

Lcdout $FE,1

main:
toggle sec
I2CREAD SDA,SCL,%10100001,2,[S,M,H,D,Mn,Y]


Lcdout $FE,2
   Lcdout "Saat: ",hex2(H),":",hex2(M)," ",hex2(S)
Lcdout $FE,$C0
   Lcdout "Tarih: ",hex2(D),".",hex2(Mn),".20",hex2(Y)

if sec=0 then
   Lcdout $FE,$8B," "
else
   Lcdout $FE,$8B,":"
endif


  I2cread SCL,SDA,kontrol,addr,[linedeg]
   addr=addr+1
   if addr>20 then addr=0

   
Lcdout $FE,$D4,"Eep addr=",dec addr," Ok=",dec linedeg,"    "
pause 500

goto main
end
"Ya olduğun gibi görün, Ya da göründüğün gibi ol..." Mevlana

Erol YILMAZ

Pcf8583'un guncel fiyati nedir? Nerelerden bulabiliriz?

mhk

Sevgili Erol ben istanbuldan getirtmiştim sanırım 4.000.000 TL idi kadıköyden alınmış. Diğer arkadaşlar 1,5 dolar civarında diyorlardı. Tam bilmiyorum.
"Ya olduğun gibi görün, Ya da göründüğün gibi ol..." Mevlana

metocan

pcf 8583 te yıl ve gün aynı adreste saklanıyor yukarıda verilen kod çalışmaz.
bende pcf8583 üzerinde çalışıyorum sadece

yılı okutmada problem yaşıyorum
2 bit ile nasıl yıl okutulacağını bilen varsa cevap yazsın.Yılı okuttuğumda kodu koyacağım.

nonstradam

Dogru PCF 8583 te yıl-gün hafta günleri ile ay aynı adreste saklanıyor. bu nu maskeleyip shift ederek çözebilirsin. PCF 8583

yıl ı iki bit olarak veriyor. 4 yılda bir kez şubat 29 çekiyor, PCF de şubatın 29 çektiği yıllarda o iki biti sıfırlıyor yıllar arttıkça 1,2,3 ve sonra yine 0 oluyor. sen yazdıgın program içine küçük bir rutin

ekleyerek tarihi bu bitlere bakarak kandin hesaplaya bilirsin. PCF serisinin yılı tam olarak vereni de var ama ismini hatırlayamıyorum. ama onunda counter modu yok counter kullanmayacaksan

sorun olmaz. bende sevgili MHK nin ki gibi bir sorunla karsılasmıstım. PCF 8583 ün kristal bağladıgımız 2 nolu ucuna aynı zamanda 22pF kondansatörle VCC ye vermek gerekiyormuş

yapmadıgım zaman PCF tarihi arttırmıyordu. aklınızda bulunsun.   basarılar.