kalp animasyonlu kayan yazı...

Başlatan mustafa_cmbz, 04 Eylül 2008, 17:30:06

mustafa_cmbz

arkadalar netten ve sitemizden ediğim bilgiler doğrultusunda böyle bir devre oluşturdum...devrede 2 adet 8x8 dot matrix kullandım ama pcb olutururken yanlış yerletiriğim için yazılar yukarı doğru kayıyor...bende bunun üzerine kalp animasyonu yaptım...yakında zamanda evlenen yeğenime düğün hediyesi olarak ta kutu vaziyette hediye ettim çok sevindi sizde bu tarz hediye amaçlı bu devreyi yapabilirsiniz...kolay gelsin..

kaynak kod:

'Hazırlayan: mustafa_cmbz - http://tekdag-elektronik.tr.gg/

'-------------------------------------------------------
'PROTON Compiler kullanıyorsanız alt satırın başındaki tırnağı kaldırın
'DEVICE 16F628
'=====Değişkenler tanımlanıyor=====
i VAR BYTE
i1 VAR BYTE
p1 VAR BYTE
p2 VAR BYTE
'PORTA değişkenleri
pa1 VAR BYTE
pa2 VAR BYTE
pa3 VAR BYTE
pa4 VAR BYTE
pa5 VAR BYTE
pa6 VAR BYTE
pa7 VAR BYTE
pa8 VAR BYTE
pa9 VAR BYTE
pa10 VAR BYTE
pa11 VAR BYTE
pa12 VAR BYTE
pa13 VAR BYTE
pa14 VAR BYTE
pa15 VAR BYTE
pa16 VAR BYTE
pa17 VAR BYTE
pa18 VAR BYTE
pa19 VAR BYTE
pa20 VAR BYTE
pa21 VAR BYTE
pa22 VAR BYTE
pa23 VAR BYTE
pa24 VAR BYTE
pa25 VAR BYTE
pa26 VAR BYTE
pa27 VAR BYTE
pa28 VAR BYTE
pa29 VAR BYTE
pa30 VAR BYTE
pa31 VAR BYTE
pa32 VAR BYTE
'şekil değişkenleri
d1 VAR BYTE
d2 VAR BYTE
d3 VAR BYTE
d4 VAR BYTE
d5 VAR BYTE
d6 VAR BYTE
d7 VAR BYTE
d8 VAR BYTE
d9 VAR BYTE
d10 VAR BYTE
d11 VAR BYTE
d12 VAR BYTE
d13 VAR BYTE
d14 VAR BYTE
d15 VAR BYTE
d16 VAR BYTE
d17 VAR BYTE
d18 VAR BYTE
d19 VAR BYTE
d20 VAR BYTE
d21 VAR BYTE
d22 VAR BYTE
d23 VAR BYTE
d24 VAR BYTE
d25 VAR BYTE
d26 VAR BYTE
d27 VAR BYTE
d28 VAR BYTE
d29 VAR BYTE
d30 VAR BYTE
d31 VAR BYTE
d32 VAR BYTE
'=====port giriş çıkış ayarları=====
TRISC=%00000000 'tüm portlar çıkışa ayarlandı
TRISB=%00000000 'zaten geride boş port kalmadı
PORTB=0  'PORTB başlangıçta 0 olacak
PORTC=1
low portd.0
  '74HC154 tarama işleminde lojik 0 çıkışlı tarama yapar
'bu durumda başlangıç için PORTA=1 olmalı
'=====Sayıcıların ayarı=====
i=0  'Bu değer sabit kalsın
i1=8 'kayma hızını belirliyor(İSTEDİĞİNİZ HIZI BELİRLEYEBİLİRSİNİZ)
'=====Bekleme ayarları=====
p1=1 'sütun geçişleri arasındaki bekleme(TİTREMEYİ ÖNLEYECEK DEĞER)
'=====Görüntü oluşturan değişkenler tanımlanıyor=====
'görünmesini istediğiniz şekli oluşturmak için, 
'görünen için=1 siyah kalan için=0 olarak değer verin.
'değerlerin anlaşılabilir olması açısından binary 
'olarak verilmiştir.
'Teknoloji 
d1= 102
d2=255
d3= 255
d4= 255
d5= 255
d6= 126
d7=60
d8=24
d9=0
d10=0
d11=0



'PORTA tanımlaması
pa1=0
pa2=1
pa3=2
pa4=3
pa5=4
pa6=5
pa7=6
pa8=7
pa9=8
pa10=9
pa11=10
pa12=11
pa13=12
pa14=13
pa15=14
pa16=15
pa17=16
pa18=17
pa19=18
pa20=19
pa21=20
pa22=21
pa23=22
pa24=23
pa25=24
pa26=25
pa27=26
pa28=27
pa29=28
pa30=29
pa31=30
pa32=31
'Değerlerin Portlara gönderilmesi işlemi yapılıyor.
basla:
i=i+1
IF i=i1 Then kaydir 
PORTC=pa1 
PORTB=d1 
Pause p1 
PORTC=pa2  
PORTB=d2
Pause p1
PORTC=pa3
PORTB=d3
Pause p1
PORTC=pa4
PORTB=d4
Pause p1
PORTC=pa5
PORTB=d5
Pause p1
PORTC=pa6
PORTB=d6
Pause p1
PORTC=pa7
PORTB=d7
Pause p1
PORTC=pa8
PORTB=d8
Pause p1
PORTC=pa9
PORTB=d9
Pause p1
PORTC=pa10 
PORTB=d10 
Pause p1
PORTC=pa11 
PORTB=d11 
Pause p1
PORTC=pa12 
PORTB=d12 
Pause p1
PORTC=pa13 
PORTB=d13 
Pause p1
PORTC=pa14 
PORTB=d14 
Pause p1
PORTC=pa15 
PORTB=d15 
Pause p1
PORTC=pa16 
PORTB=d16 
Pause p1
PORTC=pa17
PORTB=d17
Pause p1
PORTC=pa18
PORTB=d18
Pause p1
PORTC=pa19
PORTB=d19
Pause p1
PORTC=pa20 
PORTB=d20 
Pause p1
PORTC=pa21 
PORTB=d21 
Pause p1
PORTC=pa22 
PORTB=d22 
Pause p1
PORTC=pa23 
PORTB=d23 
Pause p1
PORTC=pa24 
PORTB=d24 
Pause p1
PORTC=pa25 
PORTB=d25 
Pause p1
PORTC=pa26 
PORTB=d26 
Pause p1
PORTC=pa27
PORTB=d27
Pause p1
PORTC=pa28
PORTB=d28
Pause p1
PORTC=pa29
PORTB=d29
Pause p1
PORTC=pa30 
PORTB=d30 
Pause p1
PORTC=pa31 
PORTB=d31 
Pause p1
PORTC=pa32 
PORTB=d32 
Pause p1
GoTo basla 'Göstermeye yeniden başla
'=====Kaydırma işlemi yapılıyor=====
kaydir:
PORTc=1
PORTB=0
i=0
'PORTA sıralaması değişimi
pa1=pa1-1
pa2=pa2-1
pa3=pa3-1
pa4=pa4-1
pa5=pa5-1
pa6=pa6-1
pa7=pa7-1
pa8=pa8-1
pa9=pa9-1
pa10=pa10-1
pa11=pa11-1
pa12=pa12-1
pa13=pa13-1
pa14=pa14-1
pa15=pa15-1
pa16=pa16-1
pa17=pa17-1
pa18=pa18-1
pa19=pa19-1
pa20=pa20-1
pa21=pa21-1
pa22=pa22-1
pa23=pa23-1
pa24=pa24-1
pa25=pa25-1
pa26=pa26-1
pa27=pa27-1
pa28=pa28-1
pa29=pa29-1
pa30=pa30-1
pa31=pa31-1
pa32=pa32-1
GoTo basla 'kaydırma işlemi sona erdiğinde başa 
'döner ve işlem sürekli tekrarlanır
End  'Program sonu



http://rapidshare.com/files/142581887/kalp_animasyonlu_kayan_yaz__305_.rar.html


http://www.4shared.com/file/61713519/653e7dae/kalp_animasyonlu_kayan_yaz.html

resimde ekelmek isterdim ama çok büyük oluyor  şema vs. zip'in içinde bulunmakta....kolay gelsin...

debi

Açılmışken bu başlık altında sorayım.. Hiç kayan yazı ile uğraşmadım, neden ledler arasında parlaklık farkı olmuyor? Aynı besleme aynı direnç üzerinden bazen tek dot'da yanıyor, bazen de 8 dot birden yanıyor.. ikisini yan yana düşününce gözle hissedilebilir bir parlaklık farkı olması gerekmiyor mu?

mustafa_cmbz

demek istediğinizi tam olarak anlayamadım...kusra bakmayın....kolay gelsin..

Logan

@debi, ledler arasında parlaklık farkı olabilmesi için bir sütuna ait bütün ledlerin aynı direnç üzerinden beslenmesi gerekir. Aksi taktirde parlaklık farkı olmaz.
İmza.

debi

Araştırıp inceleyeceğim biraz daha.. Sorduğum soruda kastettiğim olayı basitçe aşağıdaki devrede gösterdim.. Yanlışım olabilir belki, fazla irdelemedim mantığı, biraz daha araştırayım en iyisi..




edit:::


1. döngü :: 1. satır + besleme,;;;;1,2,3,4,5 toprak
2. döngü :: 2. satır + besleme ;;;;1 toprak şeklinde gibi düşündüm şekli çizerken de..