Haberler:

Eposta uyarılarını yanıtlamayınız ( ! ) https://bit.ly/2J7yi0d

Ana Menü

Zamanlayıcı

Başlatan xoom, 31 Aralık 2011, 13:44:09

xoom

arkadaşlar 4 adet displayde set edilen dk ve saniyeden geriye dooğru nasıl saydırabilirim?
Kısaca Dk ve Sn cinsen Geriye sayım sayacı..

mantık nsl olmalı 4 displaya tarama ile mi aktif edeceğim bir türlü yapamadım

mustafa_cmbz

displayleri tarama ilede sürebilirsin sürü entegreleri kullanarakta sürebilirsin...

Kabil ATICI

basitçe 4 tane değişken ata.
bunlara mesela
saniye1
saniye10
dakika1
dakika10
de.



Timer1 kullanarak 1 saniye üret. (kesme kullanarak)

1 saniye sayma geldiğinde
saniye1'i 1 azalt

bas:
saniye1,saniye10,dakika1,dakika10 değerlerine bak eğer hepsi sıfırsa saymayı durdur.
saniye1'in değeri 0'ın altına indimi bak
indi ise saniye1' değerini 9 yap inmedi ise timer1 için bas: git
ve saniye10 değerini 1 azalt.
saniye10 değerini kontrol et
indi ise saniye10' değerini 5 yap inmedi ise timer1 için bas: git
bu şekilde dakikalar için de devam edilir....

(çoğullamalı sürme için)
ekranda göstermek için ( bunun ana çevrim içinde yapılabilir)
LED ekranda hangi rakamın gösterileceğini tanımla...(0,1,2,3...)
dakika10 değerini al, bunu ekran karşılığını  LED çıkış bacaklarına ver.
dakika onlar hanesini sürmek için LED ekran ortak bacağını aktifleştir
ve buraya biraz gecikme koy.
dakika onlar hanesi LED ekran ortak bacağını  pasifleştir.

dakika1 değeri al  bunu ekran karşılığını  LED çıkış bacaklarına ver.
dakika birler hanesini sürmek için LED ekran ortak bacağını aktifleştir
ve buraya biraz gecikme koy.
dakika birler hanesi LED ekran ortak bacağını  pasifleştir.

saniye10 değeri al ( bunun ekran karşılığını  LED çıkış bacaklarına ver.)
saniye onlar hanesini sürmek için LED ekran ortak bacağını aktifleştir
ve buraya biraz gecikme koy.
saniye onlar hanesi LED ekran ortak bacağını  pasifleştir.

saniye1 değeri al ( bunun ekran karşılığını LED çıkış bacaklarına ver.)
saniye birler hanesini sürmek için LED ekran ortak bacağını aktifleştir
ve buraya biraz gecikme koy.
saniye birler hanesi LED ekran ortak bacağını  pasifleştir.

teorik olarak bu şekilde gerçekletirilebilir

top sende...
ambar7

xoom

Alıntı yapılan: ambar7 - 31 Aralık 2011, 15:23:37
basitçe 4 tane değişken ata.
bunlara mesela
saniye1
saniye10
dakika1
dakika10
de.



Timer1 kullanarak 1 saniye üret. (kesme kullanarak)

1 saniye sayma geldiğinde
saniye1'i 1 azalt

bas:
saniye1,saniye10,dakika1,dakika10 değerlerine bak eğer hepsi sıfırsa saymayı durdur.
saniye1'in değeri 0'ın altına indimi bak
indi ise saniye1' değerini 9 yap inmedi ise timer1 için bas: git
ve saniye10 değerini 1 azalt.
saniye10 değerini kontrol et
indi ise saniye10' değerini 5 yap inmedi ise timer1 için bas: git
bu şekilde dakikalar için de devam edilir....

(çoğullamalı sürme için)
ekranda göstermek için ( bunun ana çevrim içinde yapılabilir)
LED ekranda hangi rakamın gösterileceğini tanımla...(0,1,2,3...)
dakika10 değerini al, bunu ekran karşılığını  LED çıkış bacaklarına ver.
dakika onlar hanesini sürmek için LED ekran ortak bacağını aktifleştir
ve buraya biraz gecikme koy.
dakika onlar hanesi LED ekran ortak bacağını  pasifleştir.

dakika1 değeri al  bunu ekran karşılığını  LED çıkış bacaklarına ver.
dakika birler hanesini sürmek için LED ekran ortak bacağını aktifleştir
ve buraya biraz gecikme koy.
dakika birler hanesi LED ekran ortak bacağını  pasifleştir.

saniye10 değeri al ( bunun ekran karşılığını  LED çıkış bacaklarına ver.)
saniye onlar hanesini sürmek için LED ekran ortak bacağını aktifleştir
ve buraya biraz gecikme koy.
saniye onlar hanesi LED ekran ortak bacağını  pasifleştir.

saniye1 değeri al ( bunun ekran karşılığını LED çıkış bacaklarına ver.)
saniye birler hanesini sürmek için LED ekran ortak bacağını aktifleştir
ve buraya biraz gecikme koy.
saniye birler hanesi LED ekran ortak bacağını  pasifleştir.

teorik olarak bu şekilde gerçekletirilebilir

top sende...

hocam  ekte verdiğim dosyaya basit bir örnek yazabilirmisiniz?
yapsamda  tarama bi garip oluyor.. şuna örnek bi kod yazabilir ( ccs c ile tabiki )
http://www.2shared.com/file/JSdj7FQ-/Countdown.html

Kabil ATICI

c konusundaki bilgim sadece teorik. Ben assembler üzerinde çalışıyorum. (hatta pic üzerinde de yeni uğraşmaya başladım). Bu yöntemi atmel (AVR) işlemciler üzerinde assembler olarak kullanıyorum.

O yüzden işlemi o şekilde verdim (akış şeması gibi)
ambar7

xoom

tşk ederim yinede..C  konusunda verdiğim devreye örnek bir 5dk geri sayıcı yapabilecek birisi çıkar umarım