Gönderen Konu: * DS3231 RTC KULLANIMI *  (Okunma sayısı 4466 defa)

Çevrimdışı B

  • Yönetici
  • Kahraman Üye
  • *****
  • İleti: 636
  • Embedded Systems Engineer
* DS3231 RTC KULLANIMI *
« : 13 Eylül 2015, 15:05:02 »
Herkese Merhaba ;

Farklı üreticiler tarafından üretilen bir takım RTC'leri incelediğimde birçoğunda zaman gecikmesi oluşması ile ilgili birtakım problemler ve şikayetler oluştuğunu zaman zaman duyuyorum , genellikle kod paylaşımı bu skalada üretilmiş entegrelerden DALLAS'ın üretmiş olduğu RTC'ler üzerine yoğunlaşmış durumda .. Dallas 1302 isimli entegreyi piyasaya ilk sürdüğünde herhangi bir 32.768 KHz'lik bir kristal ile hassas bir zaman saati yapılabileceğini duyurmuş olsada çok ama çok aşırı kritik uygulamalarda uzun vadede ciddi gecikmeler meydana geldiğini birçoğumuz deneyim edinmiş bulunuyoruz , ardından 1307'yi sürerek sadece iletişim protokolü ve kayıtçı vektörlerinde kısmi düzeltmeler yaptığını görmüş olduk .. Üretilen entegrelerin arefesinde sıcaklık kompanzeli dallas tarafından üretilen sıcaklıktan çok zor etkilenen bir kristal ürettiğini duyurdu ama fiyat olarak entegrenin kendisinin kat be kat üstünde olduğundan satışını sadece endüstriyel üreticilere yapabildi .. Bütün bunların ardından EPSON ve diğer firmalarla rekabetini artırmak için dahili TCXO özellikte kristala sahip olan bu entegreyi piyasaya çıkardı ; DS3231'i diğer muadillerinden üstün kılan özellikleri şu şekilde sıralayalım ;

* Hem 3.3 Voltta hemde 5V'ta çok efektif bir çalışmaya sahip ..
* Dahili TCXO özellikte bir kristale sahip , TCXO ingilizce çevrimi itibari ile Sıcaklık kompanzeli kristal osilatör anlamına gelir
* Yılda en ama en fazla 2 dakikalık bir sapma oluşması (ki benim 1307'lerim zaman zaman sıcalık ve nemle bağdaşık olarak ayda 2 dakikalık bir sapmaya sahip ..)
* Üzerinde bir adet sıcaklık sensörüde bulunmakta .. Bu avantaj diğer RTC'lerden onu tek başına zaten izole ediyor ..

Altını çizerek belirtmem gerek ki hiçbir zaman uydu saati veyahut GPS kullanarak yapılan saat uygulamaları kadar hassas olmasada bu yeni entegre DS3231 , bize bir çok uygulamamızda avantaj sağlayacaktır ...

Dezavantajı ise , bir eprom belleğe sahip olmaması ama , bu entegreyi modül halinde satın alan arkadaşlar için ATMEL'in bir eprom'u ile kompakt bir yapı şeklinde bu modülü elde edebilmeleride sağlanmış ...

Bu modül ile oynamak için bir kaç adet satın aldım yurtdışından ve çözmek için datasheet'ini oturup baştan sona okudum ... Sadece RTC modülü ile iletişim sağlayabilen örnek bir kod paylaşıyorum .. İsteyenler bu kodu kendi RTC uygulamalarına entegre edip ihtiyar DS1307'lerden kurtarabilirler .. Entegrenin kayıtçı çözümlemesi ve kullanımı ile ilgili daha fazla detay isteyenler sorularını bu başlık altında sorabilirler ..

Herkese iyi çalışmalar ..

Burak
Ω Gens Una Sumus Ω

Çevrimdışı B

  • Yönetici
  • Kahraman Üye
  • *****
  • İleti: 636
  • Embedded Systems Engineer
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #1 : 13 Eylül 2015, 19:19:34 »
Entegrenin yapısında diğer RTC'lerden farklı olarak çalışan bir algoritma mevcut .. Bu algoritma sıcaklık & osilatör kompanzasyonunu yapmak için iki yöntem güdüyor . Bunlardan birincisi eğer kullanıcı sıcaklık çevrimi yapmaz sadece saat ve tarih işlevini kullanır ise dahili işlemcisi kendiliğinden her 64 saniyede bir kristal yapısındaki kondansatör dizisine sıcaklık ile oransal olarak değişebilen bir grup sığa dahil ediyor veya çıkarıyor , bu işlevi kendi işlemcisinde var olan bir matematiksel algoritma ile yapıyor . Eğer bu sıcaklık çevrimi yani sıcaklık sensörü özelliği kullanıcı tarafından tetiklenir ise bu 64 sn'lik çevrim yaklaşık 50-100 ms arasına çekiliyor ve kristal frekansı sıcaklığa göre çok daha yüksek çözünürlükte bir hızda güncellenmiş oluyor . Bu durumda 1 yıllık süre içerisinde toplam gecikme maksimum olarak artı eksi 20 sn'lere çekilebiliyor . Hem dahili sıcaklık sensörünün hemde RTC özelliğinin kullanıldığı örnek bir kod daha paylaşıyorum ... Kod güncellemeleri eğer değişiklik gösterecek olursa bunları herbir yeni mesajımda eklenti olarak paylaşıcam ..

İyi çalışmalar .

Burak
Ω Gens Una Sumus Ω

Çevrimdışı Mucit23

  • Genel Moderatör
  • Kahraman Üye
  • *****
  • İleti: 1093
    • www.arectron.com
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #2 : 13 Eylül 2015, 20:49:52 »
Eeprom meselesini anlamadım. Normalde Entegre içerisindeki Saat, Dakika vs gibi bilgiler Statik Ram içerisinde tutulmuyor mu. Önceki serilerde olduğu gibi Normal Besleme gidince bataryadan beslenip ramdeki verilerin silinmemesi lazım. Eeprom ne için?
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/

Çevrimdışı B

  • Yönetici
  • Kahraman Üye
  • *****
  • İleti: 636
  • Embedded Systems Engineer
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #3 : 13 Eylül 2015, 21:38:22 »
Saat ve tarih bilgileri yine statik RAM içerisinde tutuluyor bir değişme yok .. Ama önceki versiyonlarda kişisel kullanım için ayrılmış RAM alanı bunda mevcut değil .. O yüzden modül olarak satışını yapanlar AT23C32 kodlu bir EEPROM ile kullanıma sunmuşlar ... Ama DS3231'in alarm kayıtçıları kişisel verileri saklamak için kullanılabilir ..

Burak
Ω Gens Una Sumus Ω

Çevrimdışı F®T

  • Kahraman Üye
  • *****
  • İleti: 1306
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #4 : 13 Eylül 2015, 21:50:08 »
Burak hocam paylaşım için teşekkürler.Dediğiniz gibi saatin stabil olmaması büyük bir sorun.Ds 3232 ve 3234 modelleride var.Bunların farkı nedir.Ayrıca piyasada bulunma ve fiyat durumları hakkında bilginiz varmı?
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

Çevrimdışı B

  • Yönetici
  • Kahraman Üye
  • *****
  • İleti: 636
  • Embedded Systems Engineer
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #5 : 13 Eylül 2015, 22:04:35 »
Rica ederim F.T ..

DS3232 için farklılıkları şu şekilde sıralayalım o halde ;

* I2C iletişim protokolü için minimum timeout süresi fonksiyonu eklentisi mevcut .. Yani minimum I2C iletişim frekansı için bir genişletme yapılmış .. Daha düşük hızlarda iletişim yapılabiliyor ..
*32 KHZ çıkışı mevcut bu entegrelerde ve bu çıkış push-pull'a dönüştürülmüş .. O yüzden harici pull-up direnci kullanmanıza gerek yok ..
* Yedek bataryaya geçtiği anda BB32kHz çıkışı DS3231'de deaktif oluyordu ama bunda kayıtçı ayarıyla on - off yapılabiliyor ..
* Sıcaklık çevrimleri için bir çözünürlük ayarı yok DS3231'de , fix 0.25 derece hassasiyette kullanılabiliyor .. Ama DS3232'de bu yine kayıtçılardan ayarlanıp değiştirilebilir hale getirilmiş ...
* Son olarak 236 byte'lık bir kişisel SRAM alanı oluşturulmuş dahili olarak ..

DS3234 için ise DS3232'ye eklenti ve değişiklik olarak ;

*SPI protokolüne geri dönülmüş ...
*Kişisel RAM alanı 236 byte'tan 256 Byte'a çıkarılmış ..

Umarım faydalı olmuştur bu bilgiler ...

Burak
Ω Gens Una Sumus Ω

Çevrimdışı F®T

  • Kahraman Üye
  • *****
  • İleti: 1306
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #6 : 13 Eylül 2015, 22:12:00 »
Hocam tabiki faydalı oldu sağolun.Bu yeni modellerde ki hata oranı aynımı 3231 ile.Hangisi avantajlı acaba sizce.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

Çevrimdışı B

  • Yönetici
  • Kahraman Üye
  • *****
  • İleti: 636
  • Embedded Systems Engineer
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #7 : 13 Eylül 2015, 22:32:44 »
DS3232 ve DS3234 entegreleri eklenti özelliklerinden dolayı biraz daha pahalılar .. Ama tek tük alımlar için o kadar da pahalı değiller ... Ama 1000 adet için ciddi bir fiyat oynaması olur ... Biliyosunuz artık hiçbir entegrenin tedariği zor değil , Digikey yetkili distribütörleri ile iletişim kurup entegre başına %25 bir eklenti vererek getirtebilirsiniz ...

10 adet DS3231'i sadece 13 TL civarında temin edebilirsiniz yurtdışından eBay gibi sitelerden .. Türkiyede bu entegrelerin temini ne durumdadır gerçekten hiçbir fikrim yok ...

Avantaj konusu ile ilgili .. Harici bir Ram belleğe ihtiyacınız yoksa kesinlikle DS3231'den şaşmayın .. Çünkü DS3231'den sonra bütün RTC'lerde oluşabilecek zaman gecikmesi aynı ... Çünkü analog işlemci çekirdeği aynı ..

Burak
« Son Düzenleme: 13 Eylül 2015, 22:33:41 Gönderen: Burak GÜNAY »
Ω Gens Una Sumus Ω

Çevrimdışı F®T

  • Kahraman Üye
  • *****
  • İleti: 1306
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #8 : 13 Eylül 2015, 22:37:11 »
Anladım.Yanlız bunla ilgili proteuse dosyası yok sanırım.Programlarınızı nasıl simüle ediyorsunuz.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

Çevrimdışı B

  • Yönetici
  • Kahraman Üye
  • *****
  • İleti: 636
  • Embedded Systems Engineer
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #9 : 13 Eylül 2015, 22:39:38 »
Elimde Dallas'ın ve başka firmaların ürettiği bütün entegreler mevcut ... Hepsini STM ve PIC'ler ile teker teker kullanıp gözlemliyorum .... Burada kilit nokta ppm değerleri ve ppm sapmaları .. Ve Dallas şu anda hepsinden açık ara önde ...

Burak
« Son Düzenleme: 13 Eylül 2015, 22:40:42 Gönderen: Burak GÜNAY »
Ω Gens Una Sumus Ω

Çevrimdışı F®T

  • Kahraman Üye
  • *****
  • İleti: 1306
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #10 : 13 Eylül 2015, 22:43:48 »
İmkan olması çok güzel birşey.Konu hoşuma gitti ilerde ihtiyaç olursa bu ürünü kullanmak isterim.Hocam aydınlattığınız için teşekkürler.İyi geceler.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

Çevrimdışı B

  • Yönetici
  • Kahraman Üye
  • *****
  • İleti: 636
  • Embedded Systems Engineer
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #11 : 13 Eylül 2015, 22:45:02 »
İmkan olması çok güzel birşey.Konu hoşuma gitti ilerde ihtiyaç olursa bu ürünü kullanmak isterim.Hocam aydınlattığınız için teşekkürler.İyi geceler.

Rica ederim Ferit abi sizede iyi geceler ... Daha teknik ve detaylı bilgiler için aklınıza takılanları sorabilirsiniz ...

Burak
Ω Gens Una Sumus Ω

Çevrimdışı F®T

  • Kahraman Üye
  • *****
  • İleti: 1306
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #12 : 13 Eylül 2015, 22:46:56 »
Şunu belirtmek isterimki çok profesyonel yaklaşımlarınız var bundan dolayı size çok  teşekkür ediyorum.Allaha emanet olun.Hayırlı geceler.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

Çevrimdışı B

  • Yönetici
  • Kahraman Üye
  • *****
  • İleti: 636
  • Embedded Systems Engineer
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #13 : 13 Eylül 2015, 23:16:56 »
Şunu belirtmek isterimki çok profesyonel yaklaşımlarınız var bundan dolayı size çok teşekkür ediyorum.Allaha emanet olun.Hayırlı geceler.

Estağfurullah Ferit Abi , bizi birlikte daha ileriye götürecek şeyler yorulmadan yaptığımız bilimsel araştırmalar , deneyler , istişareler  ve fikir paylaşımlarıdır .. Eksik olmayın .. Hayırlı geceler ..  :)
Ω Gens Una Sumus Ω

Çevrimdışı B

  • Yönetici
  • Kahraman Üye
  • *****
  • İleti: 636
  • Embedded Systems Engineer
Ynt: * DS3231 RTC KULLANIMI *
« Yanıtla #14 : 14 Eylül 2015, 00:48:00 »
NIST-F1 atomik saati baz alınarak yapılan bir laboratuvar benchmark sonucu ile ilgili grafikler aşağıdadır ...
Bu deneyde kullanılan RTC entegreleri DS3231 , MCP79400 , PCF8563 ...

3,432,851 saniye boyunca yapılan test sonuçlarına göre hata payları şu şekilde elde edilmiş ..

DS3231               -->     Milyonda 0.3'den daha az      (<0.3 ppm)     
MCP79400           -->    Milyonda 4                              (    4  ppm)
PCF8563             -->     Miyonda 24                            (   24  ppm)

NIST-F1 sezyum temelli bir atomik soğutma ve mikrodalgalama yöntemiyle atomların titreşimlerini kullanarak yapılmış tam analog bir saattir ve en isabetli saat olarak colorado'da çalışmakta ...


PPM ifadesi ingilizcede "Milyonda" anlamına gelir ...

Burak
« Son Düzenleme: 14 Eylül 2015, 00:51:30 Gönderen: Burak GÜNAY »
Ω Gens Una Sumus Ω