avatar_sonmoikan

5X7 Dotmatrix Saat Projesi

Başlatan sonmoikan, 10 Kasım 2015, 11:23:04

ete

Çabuk pes ettin. Belliki Tarama kısmında bir sorun var ve bu sorun mantıklı düşünerek çözülebilirdi.
Şimdiye kadar bir çok saat yaptım. Benzer sorunlar yaşadım. Simulasyonlarda hiç bir sorun görülmez iken gerçek devrelerde benzer titreşimleri çok gördüm. Bu tür sorunlar genelde gerçek devrede ortaya çıkar ve sebebi bulursanız çözümüde bulursunuz. Senin sorun öyle bir sorun ki gözle görülmesi gereken bir şey. Uzaktan ancak bu kadar yapabildik. Kusura bakma.
Sorunun kesin olarak Tarama sisteminde olduğundan eminim. Zira tek bir satırın displaye verilmesi yaklaşık 4 ms sürüyor ki bu çok uzun bir süre ve bu sürenin 2ms yi geçmemesi gerekir.
Bunun yolu da bit bazında verdiğin bilgiyi byte'a çevirip o şekilde vermen. Dahada iyisi kesme kullanıp her kesmede tek satır yüklemesi yapman gerekir. Bunları yapamayacak durumda isen aldğın karar doğru bence.

Burada bir başka konuya değinmeden geçemeyeceğim. Neden saat yaparız yada saate bakarız??? zamanı öğrenmek için elbette. Yanında sıcaklık veya nem gibi faydalı bilgileride görebilmek elbette iyi olur. Ancak saati senin sistemindeki animasyonlarla doldurursak saat amcından sapmış oluyor. Saniye hanesine dikkatlice bakacak olursan sürekli atlamalı çalışıyor. Sebebi animasyonların çok zaman alması. Görsel olarak güzel gibi gözüksede saati amacından uzaklaştırdığı için animasyonlardan hep kaçınırım. Özellikle saniye gösteren bir saatte her şeyi 1000 ms de halledilmesi gerekir ki bu tür animasyonlarla bu imkansızdır.

Ete

rhoca68

Hocam zaman ayırıp yanıt verdiğiniz ve bilgilendirdiğiniz için çok teşekkür ederim. İnan hocam değiştirmedik bir şey kalmadı. sonunda bu işi kökten halledeyim dedim. Elime bir çekiç alıp parça parça ettim. Neden derseniz üç dört gündür kafayı yemek üzereydim. Artık başka işlere yoğunlaşacağım. en güzeli bir saat alıp keyfine bakmak. Hocam şunuda söyleyeyim. İnsan kendi bir şeyler yaparsa çok keyif alıyor ve onun verdiği  keyif hiç bir şeyle kıyaslanmaz. Hocam sağlıklı günler diliyorum. Selamlarımla.

rhoca68

ETE hocam yine ben önce selamlarımla iyi günler diliyorum. Hocam daha önce dotmatrıx saat yapmıştım saat çalışrken kırpışma oluyordu. Şimddi başka bir saat yapmaya karar verdim. Bu saatte yine titreme oluyor. Bir bakıp bunu düzeltip HEX kodunu verirseniz çok memnun olurum.

aRci

Merhaba;
Detaylı bir inceleme yapmadım fakat bu tarz uygulamada pause komutu çok küçük paröalar halinde yada hiç kullamılmamalı. her pause sistemde durmaya ve ekrandaki bir satırın diğerlerine göre daha parlak olmasına ve titremelere sebep olacaktır.
tarama için timer kullanmayı terdüşünürseniz sistem daha verimli olabilir. yada tüm sistemi ekrana değer gönderildikten sonra yapılması gereken işeri yaparken oluşacak gecikmeleri değerlendirebilirsiniz örnk olarak ekrana veriyi gönderip ardından saat okuyabilirsiniz donraki ekrana veri gönderince ısı sendor okumasına gidilebilir. sensörün cevap mermesi sırasında o satırda beklemektense ekranı yanileyerek gecikme saplayabilrisiniz.
dataların aktarımı için shiftout tercih edebilirdiniz bunun bir sebebi varmı?

for G=0 to 31       ;SUTUN SAYISI KADAR DON                                                            
        SATIR=dizi[G]   ;1.SATIR VERİSİNİ DIZI DEGISKENİNİN İNDEKSİNDEN AL                                            
        dta=SATIR.BIT0  ;SIRAYLA VERİYİ DTA YA ESITLE (1 VEYA 0)
        PULSOUT CLK,1   ;SIRAYLA 0-7 ADET VERIYİ 74HC595 LERE GIR                                                                                                                           
    next G 
    pulsout VER,1       ;1.SATIRIN 8 ADET VERISINI 74HC595 LERDEN CIKART
    

ete

Yazmadığım programlarda sorun giderme işinde her zaman başarılı olamıyorum. Bunun başlıca sebebi programı yazan kişinin ne düşündüğünü bilememek.
Şimdi bu programada bakıyorum ve şöyle düşünüyorum. Maksat saat programı yapmak olsada animasyonlar ön planda tutulmış ve saatın nasıl çalışması gerektiğine fazla kafa yorulmamış.
Kullanılan gösterge tekniği dot-matrix taramalı sistem olunca bazı şeylere dikkat etmek gerekir. Bu sistem göz'ü aldatma teknğine dayanır. Gerçekte belirli bir an'ı göz önüne alırsak o anda tek bir matrix nokta ledi yanar. Bir sonraki adımda o led söner ve bir sonraki led yanar. Ancak iki ledin yanma sönme aralığı çok küçük bir zaman dilimi içinde yapıldığı için göz reflexleri bu kadar hızı algılamaya yetmez ve he riki ledi sürekli yanıyormuş gibi görür gözümüz. Bu tür matrixlerde kullanılan tarama hızı 500us ile 2 ms arasında değişir. En uygun süre deneyerek bulunur ve tecrübelerime göre ortalama 800us lik sürelerde bu ekranlar titreşimsiz çalışıyor gibi görünürler.
Bu nedenden dolayı programıda kullanabileceğin pause yada pauseus miktarı bu süreyi geçemez hatta aynı anda bir çok işin yapılacağınıda düşünürsek bu sürelerin üçte biri hatta dörtte biri seviyelerini geçmemelidir. Aksi taktider pause uygulandığı anda ekranda duracağaı için göz hemen durgunluğu farkedecektir. Senin tireşim dediğin şey bundan ibaret.

Bu programda ben fazla yapılabilecek bir şey göremiyorum maalesef. Ancak yinede önerim şöyle olabilir. Bütün pause veya pauseus leri kaldır. Çok gerekli yerlerde döngüsel gecikme kullan. Display sürmek için shift registerler kullanıldığına göre her bir shift registere bit-bit bilgi yükleneceğine (bu bir vakti kaybıdır ve kırpışmaya sebep olur) verilecek satır bilgisi 4x8 bit şeklinde 4 byte olarak tek seferde verilmelidir. Böylece program biraaz daha hızlanacaktır.

Programları kim yazıyor ise animasyonu beceriyor ama saat yapmayı beceremiyor bunuda söylemeden geçemeyeceğim.

Ete

rhoca68

çok teşekkür ederim hocam. vallahi ben bu yazma tarama işinden hiç mi hiç anlamam. ben ilk okul mezunuyum. kendimce hobi olarak birazda vakit geçirmek amaçlı uğraşıyorum. şimdi bunuda çöpe postalıyacağım. selamlar. hocam vakit ayırdığın için çok çok teşekkür ederim.

rhoca68

Merhaba tüm aradaşlarımın yeni yılını kutlar sağlıklı mutlu bir ömür dilerim.
sevgili kardeşlerim sizden bir ricam var. bu üçüncü saat oldu hepsinde saat çalışırken kırpışma oluyor. eğer vait ayırıp bakar ve düzeltip hex kodunu paylaşırsanız çok memnun olurum. ben yazma derleme işini bilmiyorum isterseniz videosunu eklerim. yaptığım üçüncü saat doyası bu.

Powered by EzPortal
▲