ds1307 nin yavaş çalışması

Başlatan Pyrodigy, 05 Ağustos 2006, 23:57:42

Pyrodigy

Slm
Pic tabanlı bir saat devresi yaptım ancak,ds1307 olması gerektiğinden çok yavaş çalışıyor mesela saniyeler neredeyse dakika kadar sürede artıyor.
Buna benzer bir sorunda deneyimli arkadaşlar yönlendirirse sevinirim.
Saygılar
Persistance is the name of the game in this business....

Analyzer

Selam,

Programından kaynaklanıyor olabilir mi? Şema ve programını buraya koyabilirsen yardımcı olmaya çalışalım.

Analyzer
Üşeniyorum, öyleyse yarın!

forsa1975


Pyrodigy

Slm
Cevaplar için teşekkürler.
Kristalin değeri doğru 32,768khz.Ancak datasheetlerinde vurguladıkları kristalin öz niteliği  çok önemli olduğundan bahsediyor.p.tesi günü karaköye gidip çeşitli markada kristal alıp deneyeceğim.
Şemayı upload ediyorum,bağlantılar temel ds1307 yi sürmek için tavsiye edilen tarzda.Ama gözümden kaçan bir eksik göreürseniz uyarın lütfen.



Programın kodlarında herhangi bir aksaklık olduğunu düşünmüyorum,I2C protokolünde yazma ve okuma gayet başarılı,lcd ye aktarırken bcd formatınıda yapıyorum.Kodlarda bir anormallik yok.Ancak aldığım bir tavsiye sonucunda yazma işlemini gerçekleştirdikten 10 dakika sonra okumaya başladım ve yavaş çalışmasının biraz olsun azaldığını gördüm ancak hala çok yavaş çalışıyor.Saniyeler normalin 10 kat düşük hızında artıyor..Bu arada kullandığım pic 16f877.
Dün foruma yazdığım yazıdan sonra ufak bir araştırma yaptım ve Dallasın sitesinde AN58 uygulama notunda yüzeysel okumama rağman yavaş çalışmasının 4 farklı sebebinden bahsedildiğini gördüm ancak bazı maddelerin anlamını çözemedim..Alıntılarıyla aynen aktarıyorum ingilizcemin yettiği kadar çevirmeye çalışacağım.
Alıntı Yap
1-Overshoots on RTC input pins. It is possible to cause a RTC to run slow by periodically stopping the oscillator. This can be inadvertently accomplished by noisy input signals to the RTC. If an input signal rises to a voltage that is greater than a diode drop (~0.3V) above VDD, the ESD protection diode for the input pin will forward bias, allowing the substrate to be flooded with current. This, in turn, stops the oscillator until the input signal voltage decreases to below a diode drop above VDD.

This mechanism can cause the oscillator to stop frequently if input signals are noisy. Therefore, care should be taken to ensure there is no overshoot on input signals.
-Another situation that is common to overshoot problem is having an input to the RTC at 5V when the RTC is in battery-backup mode. This can be a problem in systems that systematically shut down certain circuits but keep others powered up. It is very important to ensure there are no input signals to the RTC that are greater than the battery voltage (unless stated otherwise in the device data sheet) when the device is in battery-backup mode.
1-Giriş pinlerine aşırı yüklenmenin giriş pinlerine gürültü yaratacağını buda osilatörü periodik olarak durduracağını buda RTC nin yavaş çalışacağından bahsediyor.
-Başka bir durumda RTC lityum pil(backup)modunda iken +5v vcc gerilimi kesildiğinde,sistem kapandığında pil sistemin bazı ünitelerini baslayerek kapanmasını engellemesi buda problem yaratacağını söylüyor.
RTC backup modunda iken giriş pinlerine pil geriliminden yüksek bir gerilimin uygulanmamasına emin olun diyor..(burayı anlamadım)
Alıntı Yap
2-Wrong crystal. A RTC typically runs slow if a crystal with a specified CL is less than the CL of the RTC. The severity of the inaccuracy is dependent on the value of the CL.
2-Yanlış kristal seçimi.Belirtilen CL kapasitesinden düşük olan kristal yavaş çalışmasına neden olabiklirmiş.
Alıntı Yap
3-Stray capacitance. Stray capacitance between the crystal pins and/or to ground can slow an RTC down. Therefore, care must be taken when designing the PC board layout to ensure the stray capacitance is kept to a minimum.
3-Kayıp kapasiteden bahsediyor.kristal ve pin arasındaki kapasitörün RTC yi yavaşlatacağını söylüyor.(Şemada herhangi bir kapasitör kullanmadım)
Alıntı Yap
4-Temperature. The further the operating temperature is from the crystal turnover temperature, the slower the crystal oscillates.
4-Uygulama alanının ısısı..

Bu açıklamalarda yanlış kristal seçiminden bahsediyor çeşitli kristaller deneyerek tekrar uygulama yapacağım.
Ancak giriş pinlerinin gürültü parazitlerini nası gidereceğim bilmiyorum.

Saygılar
Persistance is the name of the game in this business....

birumher

Bana kalırsa sorun yazılımda saniye yerine saniyenin onlu hanesini gösteriyor olabilirsin vs. Zira DS1307 ile birçok deneme yaptım aldığım kristallere de dikkat etmedim. Entegre sorunsuz çalıştı. İstersen bir de programın DS1307 ile haberleştiği kısımlarını gönder. Ayrıca eğer ccs kullanıyorsan forumda DS1307 ccs için driver var ve sorunsuz çalışıyor...
Birkan.Herguner

TR-3X

PIC in kristalini programlama aşamasında yanlış belirtmiyorsan xt yerine rc veya lp gibi,  arkadaşın söylediği mantıklı geliyor saniyenin 10 lar hanesini lcd de birler hanesine yazıyor olabilirsin.. ama sonradan hız değişimi olduğunu  belirttiğin için ben onada pek ihtimal veremiyorum lcd refresh işleminin süresi program akışından dolayı yavaşlıyorsa buda sebep olur refresh işlemini her veriyi okuduğun anda yaparsan bu iş çözülebilir gibi geliyor bana.. kolay gelsin.

Pyrodigy

Cevaplarınız için teşekkürler arkadaşlar
Sorun ds1307 için kullandığım Kristalin yanlış oluşundanmış..Satın aldığım yerin azizliğine uğradım bana 32,768khz değil 32,768mhz vermiş.
Sorunu çözmem benim 1 haftama mal oldu..Ama Tecrübe ...:)
Persistance is the name of the game in this business....