Elektrotekno.com Ana Sayfa || Programlanabilir Cihaz ve Elemanlar || Microchip Pic Serisi


Açıklama:
Elektrik, Elektronik, Haberleşme ve Otomasyon konularının ağırlıklı olarak konuşulduğu, tartışıldığı ve bilgi paylaşımı yapıldığı forumumuza hoşgeldiniz.
Şu an Kod Paylaşım ve Soru Cevap Alanı kategorisi içerisindeki Microchip Pic Serisi forumunda bulunuyorsunuz.
Bu sayfada üyelerimizin "pic basic - ds1302 - yardım" konusundaki problem, görüş ve önerileri okuyabilir ayrıca konu hakkındaki doküman, resim, proje, devre ve programlara ücretsiz olarak ulaşabilirsiniz. Üye olduktan sonra sizler de konu hakkında sorular sorabilir ya da yorum ve paylaşım yaparak birikimlerinizi aktarabilirsiniz.
Forumdan tam olarak yararlanabilmek için üye olmayı unutmayınız!

pic basic - ds1302 - yardım

Kayıt: 15 Ekm 2006
Mesajlar: 212

Offline
onurbilke
Tarih: 09 03 2007 04:41

Arkadaşlar DS1302 Entegresinden Aldığım Saat Dakika Ve Saniye Verilerini Değişkene Atma Konusunda Problemim Var.

Dakika[0]=rtcmin/10
Dakika[1]=rtcmin//10

bu şekilde bi kodla örneğin saat:12:56:34 diyelim ben dakika kısmı olan 56 yı alıp Dakika[0]=5 ve Dakika[1]=6 şeklinde diziye atmak istiyorum böylelikle Led Ekranda Gösterebileyim. Ama rtcmin değeri HEX olduğundan heralde dakika 09 a kadar normal çalışıyor. aa 09 dan sonra 0A geleceği için bölme kısmında problem çıkıyo ve saat sapıtıyo. HEX den Decimale dönüşümü nasıl yapabilirim veya sorunu nasıl halledebilirim Teşekkürler.
Kayıt: 25 Şub 2007
Mesajlar: 12

Offline
digi_micro
Tarih: 09 03 2007 12:21

DS1302 saat bilgileri aslında desimaldir ve her hane dört bitten oluşur 10 lar ve 1 ler hanesinin birleşimi 8 bittir Okuma ve yazmada hep 8 bitlik olarak değerlendirilir. daha da açık anlatmak gerekirse mesela ds1302 yi hex olarak okuduğunda 19 okuduğunu farzedelim bu değerin 4 biti 1 diğer 4 biti 9 dir binary gösterirsek aaaabbbb şeklindedir. desimal karşılığı 25 tir eğer bu değer 1 artarsa 20 olur. bununda desimal karşılığı 32dir bu yüzden okuduğumuz bilgi üzerinde işlem yapacaksak desimale yada ds1302 ye yazacaksak hex e çevirmemiz gerek

PicBasic yada Proton için kullanabileceğin aşağıdaki kodu incele sana yardımcı olacaktır..
aşağıdaki kodda sadece dakika için örnek verdim dizi kullanarak gün ay yıl saat dakika saniye vs için uygulayabilirsin.

Kod
           

HexToDec:
                                  ; Buradaki Dakika DS1302 den okuduğumuz Dakika bilgisi
           D0=Dakika & $0F           ; 0 digit ayrıldı
           D1=(Dakika& $F0)>>4      ; 1 digit ayrıldı
           Sonuc=((D1 *10)+D0)      ; sonuç desimal yapıldı. (desimal olarak işlem yapılacak değişken)
           Return

DecToHex:           
          D0=Sonuc dig 0    ; Sonuc=herhangi biryerde desimal olarak yaptığın işlemin sonucu
          D1=Sonuc  dig 1
          Dakika= ((D1<<4) |D0 ) ; DS1302 ye hex olarak yazılacak dakika değeri
          return

Başa dön
Kayıt: 15 Ekm 2006
Mesajlar: 212

Offline
onurbilke
Tarih: 09 03 2007 16:11

Teşekkürle


Hocam Teşekkürler Sorun Çözüldü .
Başa dön
Kayıt: 25 Şub 2007
Mesajlar: 12

Offline
digi_micro
Tarih: 09 03 2007 16:21

Aslında bu tür entegrelerin çoğunun mantığı yukarda bahsettiğim gibidir.. vakit bulursam ds1302 ve icl1208 için yazdığım kodları yayınlayacağım
Başa dön



pic basic - ds1302 - yardım


Benzer Konular

- CADDY Basic Elektrik şema çizim programı

- 8 Satır Sutun Sayısı Artırılabilir Kayan Yazı(VB+Pic Basic+Ares+İsis)
- c# ile yazılmış sürücü kursu otomasyon programı -yardım
- pascal açılımındaki katsayıları verecek bir kod - yardım
- Basic NEC with Broadcast Applications
- Ring sinyali ile Röle kontrol - yardım
- iki ayrı trafo merkezinden gelen iki hat - yardım
- ses ile digital saat alarımının kontrolü - yardım
- protesus-İSİS programında gerçek paralel port uygulaması - yardım

- Arkadaşlar Baskı devre Plaket yaptırabileceğim yerler Hakkında Yardım?

- bilgisayar açılış yardım


Sitemize üyelik ve içeriğin indirilmesi tamamen ücretsizdir. Sitemizde paylaşılan tüm dokümanlar (Tezler, makaleler, ders notları, sınav soru cevaplar, projeler) paylaşımcıların bireysel çalışmaları olup telif hakları kendilerine aittir ya da açık bir şekilde kamusal alana yerleştirilmiş dokümanların birer kopyalarıdır. Kişilerin bireysel çalışmalarını sitemizde yüklemesinde, sitemizde paylaşıma teşvik eden puanlama sisteminin de etkisi büyüktür. Bunlara rağmen hala size ait olan ve burada bulunmasına izin vermediğiniz dokümanlar için iletişim bölümünden yöneticilere bildirmeniz durumunda derhal silineceklerdir.
Powered by phpBB | Translated by phpBB Türkiye | Ads by Google Adsense | Design by Crazy Bat based
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71