PIC BASIC kayan yazı problemi

Başlatan ilker_32, 03 Kasım 2007, 13:46:10

ilker_32

Merhaba herkeze iyi günler.

PIC BASIC ile yazılmı yazılmış bir kayan yazının kodlarını inceliyorum.

Kodlar;

Bu kodlar 7 satır 176 sütunluk bir kayan yazı için yazılmış. Yazıyı kaydırmak için kullanılan kısımdır. Proteus'ta yazı güzel bir şekilde kayıyor. Fakat gerçeğe gelince çok kötü kayıyor.

;************************

loop1: 
for z=1 to 176
for x=1 to 10
for i=0 to 15 
portc=sutun_reg[y]  
porta=i  
portb=satir_reg
pauseus 275  
portb=0
y=y+1
next i
satir_reg=satir_reg+1
next x
satir_reg=1
for x=1 to 10
for i=0 to 15
portc=sutun_reg[y]  
porta=i
portb=satir_reg<<4
pauseus 100 
portb=0
y=y+1
next i
satir_reg=satir_reg+1
next x
kay_reg=kay_reg+1  
y=kay_reg 
satir_reg=1
next z
satir_reg=1
kay_reg=0
y=0
call logo
goto loop
logo: for w=1 to 2
call logo_goster
next w
return

;************************

Bu kısımda ise 7 satır 160 sütundan oluşan bir kayan yazı kodlarının yazıyı kaydıran kısımdır. Devre gerçekte çok güzel çalışıyor. Fakat 160sütun 176 sütuna çıkartamadım.

;************************

loop1: 
for z=1 to 160
for x=1 to 10
for i=0 to 15 
portc=sutun_reg[y]  
porta=i  
portb=satir_reg
pauseus 275  '300  
portb=0
y=y+1
next i
satir_reg=satir_reg+1
next x 
kay_reg=kay_reg+1  
y=kay_reg  
satir_reg=1
next z
satir_reg=1  
kay_reg=0  
y=0 
call flas  
goto  ana

;********************

Sanırım;  

call logo
goto loop


Bu kısımdan kaynaklanıyor. PIC BASIC bilenlerden ricam bana yardımcı olabilirlerse sevinirim. Herkeze teşekkürler.

Kolay gelsin...

teknikelektronikci

hocam cok kötü kayiyior derken nasil kayiyior ? gölgelenmelermi var karakterler biribirinemi giriyor  acaba ?eger öyle ise ayni problem bendede vardi sorunu data portunu her döngünün basinda ve sonunda sifirlayarak problemi cözdüm kolay gelsin
Ey Türk istikbalinin evlâdı! İşte, bu ahval ve şerâit içinde dahi, vazifen; Türk İstiklâl ve Cumhuriyetini kurtarmaktır! Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!

ilker_32

Alıntı yapılan: "teknikelektronikci"hocam cok kötü kayiyior derken nasil kayiyior ? gölgelenmelermi var karakterler biribirinemi giriyor  acaba ?eger öyle ise ayni problem bendede vardi sorunu data portunu her döngünün basinda ve sonunda sifirlayarak problemi cözdüm kolay gelsin

@Teknikelektronikçi hocam, mesajınız için teşekkürler. Bu yöntemi deneyeceğim. Malum PIC BASIC'de yeniyiz. Devrenin sorunları: Gölgelendirme, karekter karışıklığı, seri porttan bilgi alamama, hiç yoktan ara sıra reset atma, bazen çalışmama vs... Bu da yetmezmiş gibi bir de dandik ledler kafamı bozuyor. :lol:

Hiç anlamadığım devre 4 adet 24MHz kristal yedi. Ne bileyim belkide kristaller dandikti. : )




Diğer kodu kullanıyorum. Sorun yok tek sorunum 160 sütun olması. 176'ya çıkamıyorum. : (




teknikelektronikci

Alıntı yapılan: "ilker_32"
Alıntı yapılan: "teknikelektronikci"hocam cok kötü kayiyior derken nasil kayiyior ? gölgelenmelermi var karakterler biribirinemi giriyor  acaba ?eger öyle ise ayni problem bendede vardi sorunu data portunu her döngünün basinda ve sonunda sifirlayarak problemi cözdüm kolay gelsin

@Teknikelektronikçi hocam, mesajınız için teşekkürler. Bu yöntemi deneyeceğim. Malum PIC BASIC'de yeniyiz. Devrenin sorunları: Gölgelendirme, karekter karışıklığı, seri porttan bilgi alamama, hiç yoktan ara sıra reset atma, bazen çalışmama vs... Bu da yetmezmiş gibi bir de dandik ledler kafamı bozuyor. :lol:

Hiç anlamadığım devre 4 adet 24MHz kristal yedi. Ne bileyim belkide kristaller dandikti. : )




Diğer kodu kullanıyorum. Sorun yok tek sorunum 160 sütun olması. 176'ya çıkamıyorum. : (





merhaba hocam evet ayni problem bendede vardi sorunu bahsetigim gibi haletim ayrica haketen dediginiz gibi ledlerin dandik oldugu resimelrden belli oluyor ayrica buduruma sebep olabilecek diger durumda kristal olabilir 20 Mhz denemedim ama 20 Mhz kullandi iseniz programdada define olarak belirtinizmi? ayrica sanirim decoder ollarak 74154 kullaniorsunuz onlarda QE ucu yok ama hc595 ise QE ucunu pice baglayip kontol edin derim.ayrica seri portdan bilgi almama durumu icin ise kesinlikle programi protona uyarlayin derim cünkü protonda donanimsal kesme özeligi var.gene ayrica :D bir yerde okumustum (picprojede) profesyonel kayan yazilarda cikisdaki data portuna pull -up duruma göre pull down direnc is faydali olacakdir.

hocam satirlari acaba hangi transistör ile sürdünüz?  birde beyz ile emiter arasian direnc atip vcc ye bagladinizmi acaba?  bende kendi kayna yazim icin transistör kisminda takildim fikir verebilirseniz sevinirim simdidien tesekürler kolay gelsin
Ey Türk istikbalinin evlâdı! İşte, bu ahval ve şerâit içinde dahi, vazifen; Türk İstiklâl ve Cumhuriyetini kurtarmaktır! Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!

Cetinal

Alıntı Yapkayna yazim icin transistör kisminda takildim fikir verebilirseniz sevinirim simdidien tesekürler kolay gelsin

sorun ne tam olarak

ilker_32

Teşekkürler kısa zamanda deneyeceğim. Evet led'ler çook dandik. Sanırım sizde bu işlere kafa yoruyorsunuz. Siz kaliteli led'i nereden temin edebileceğimi bilebilirsiniz. Biliyorsanız bana kaliteli led'i nereden alacağıma dair bir adres verirseniz sevinirim. DEFINE olayını ekledim. Fakat 24MHz Cry kullanıyorum. Diger kodda seri port olayını çözdüm. Bu pull up-down direnç olayını kullanıyorum. Fakat çok iç açıcı bir sonuç göremedim. : ) Satırlarda MJE2955 kullandım. Tanesi 1YTL. Beyz-Collectör arsına direnç atıp VCC'ye bağlamadım. Zaten bu bağlantı sanırım karışıklığa sebep olur. 10k pot ve bir direnç kullandım. C-B arasından parlaklığı ayarlıyorum.

Peki hocam bu şekildemi yaptınız. Örnek olarak;

a
portf = 0
goto a
portf = 0
...
..
.

Cetinal

FYM-23881AS-11  bu dotmatrisleri öneririm size
8x8 led  ve ledlerle yapmaktan çok daha pratik tir
ve parlaklık sorunu yok hangi açıdan bakarsan bak yazı aynı görünür tabi tam karşısından baktığında biraz dana parlak görünür am ao dandik ledlerle yapmaktan daha iidir :D

teknikelektronikci

merhaba evet bende yakalsik 2-3 aydir kayan yazi üzerine yogunlasiorum su anda seri port +ds1302+ eeprom lu bir kayan yazi ile ugrasiorum halen cok eksik var kodda yavas yavs yapiorum uygulamalari genelikle isis deniyorum gercek hayata ise ufak dot matrixlerle denedim led kullanmadim ama elime para gecsin uzun büyük ve ledli yapacam. o yüzden su an bir adres bilmiyorum ledler icin ama ilerde almak istesem kendim yurt disindan getirecem orda hem ucuz hemde kaliteli markalarin var o yüzden malesef bu konuda yardimci olamiyacam.pull-up direnc oalyini bende ilk kez deniyecem bakalim sonuc alabilcekmiyim :D bu transistör baglanti seklinizde toplamdami 8 adet pot kullandiniz yani colectörelri satirlara verdiniz ayrica potmu koydunuz anlamadim ben :(

kod konusunda ise benim programda tara alt programi var hemen portu sifirliyorum ardindan clock ve datayi yoluyorum datayi yolladiktan emen sonra beklememi yapip tekrar portu sifirliyorum bunu deneye denye buldum ilk önce programin hemn hemen her tarafina basina sonuna portb=%0000000 koydum sonra sil sile buldum :D tesadüf yani :D ama bunu bulmak icin tam 1 ay ugrastim dersem inanirmisiniz :D

tara:
portb=%0000000
low  clock
high dat
.
.
.
.
delayus 1000
high clock
portb=%00000000

romeo kardesim sorun tam olarak su emin olmamak

cünkü ben picin bacakalrini beyzlere bagladim collectörelri satirlara bagladim emietrelride direk +5-12 volta bagladim  ama bunun ne kadar saglikli oldugunu bilmiyorum acaba sagliklimi diye endisem var ?anliyacaginiz sorunum bu :(  eyse herkeze kolay gelsin
Ey Türk istikbalinin evlâdı! İşte, bu ahval ve şerâit içinde dahi, vazifen; Türk İstiklâl ve Cumhuriyetini kurtarmaktır! Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!

ilker_32

@Teknikelektronikçi hocam, demişsiniz seri port - eeprom - ds1302 özelliği üzerine çalışıyorum diye. Peki bu seri port olayını nasıl yapıyorsunuz. Mesela ben Visual Basic, Delphi vs... programları hiç bilmiyorum. Siz hangi mantıkla bu işi çözdünüz. Ben başkasının programını kullanmak istemiyorum. Kullansamda veri tabanını açıp değişiklikte yapmayı denemedim. Belki veri tabanıda açılmıyor. :cry:

Dot matrix kullanmak pratik fakat üzerine düşem voltajları iyi ayarlamak gerekir. Sonra 1 led arıza yaptığında 64 tane led değişir. Bu gerilimi ne kadar iyi ayarlarsan ayarla bazen dot matrix bozulabiliyor. Onun için en iyisi led bence. Hem uğraştırsada daha zevkli. İç yapısını görebiliyorsun. Şak diye probları istediğin yere deydirebiliyorsun. Bacak karışıklığı yok. En önemliside kaliteyi yakalıyorsun. : ( Ben bu ledlerle yakalayamadım.

8 adet pot kullanmadım. Bu şekilde kulansaydım her satırın gerilimlerini tutturamazdım. 1 adet pot kullandım. Collectörler bir. Ortak emiterli yada ortak kollektörlü bağlantıyı önermiyorum.

Aşağıdaki örnek bağlantı bile senin işini görür. ; ) Bu şekilde bağlayarak kayan yazıyı istediğin uzunlukta yapabilirsin parlaklık sorunu yaşatmaz.


Fakat transistörün hızı önemlidir. İyi ayarlanmazsa titreme yaratabilir.  :lol:

Cetinal

katot uçlarına uln takın anot uçlarını transistörle sürün
anot uçları için UDN var ama pahalı olduğu için gerek yok

teknikelektronikci

merhabaalr cevapalr icin tesekür ederim
ilker hocam be seri portda programi su an hazir kullaniorum virtual terminal diye bir program ama visual basicde kendi programimi olusturmaya basladim su an sadece görsellik ollarak yaptim kod kisminida bir arkadasa bi ögle yemeği karsiliginda yazdircam :D cünkü code ollarak bir bilgim yok su an. örenke baglanti icin tesekürler ben su anda romeo hocain dedigi gibi piicn cikisna uln baglayip onlarla transistöerli sürdüm ama emiterleride ortak bagladim tek endisem bu saglikli olurmu diye :( romeo hocam udn bnce aptigi is icin cok ucuz 5 ytl ama kayan yazida ben denedim calismadi bütün satirlar ayni anda yandi(isik verdi) yani yazi kaymadi devamli yanik durdu sanirim frekans dan kaynaklaniyor ya da benim aldigim udn dandik veya 10.bacak bosta oldugu icin yapti bilmiyorum . neyse herkeze kolay gelsin iyi calismalar
Ey Türk istikbalinin evlâdı! İşte, bu ahval ve şerâit içinde dahi, vazifen; Türk İstiklâl ve Cumhuriyetini kurtarmaktır! Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!

ilker_32

@Teknikelektronikçi hocam cevabınız için teşekkür ederim. Fakat işinize karışmak gibi olmasın. Bana transistörleri ULN serisi ile sürmeniz acayip geldi. Araya yüksek değerde direnç mi attınız? Emiterleri ortak bağlamışsınız. Bence en az verimi elde ediyorsunuz. Ayrıca satırlar yanıyor demişsiniz.  :!: Acaba emiterleri bu şekilde bağladığınızdan yanabilir mi ? 8O Aslında dediğinizden birşey anlamadım.  :lol: Neyse kolay gelsin.

teknikelektronikci

Alıntı yapılan: "ilker_32"@Teknikelektronikçi hocam cevabınız için teşekkür ederim. Fakat işinize karışmak gibi olmasın. Bana transistörleri ULN serisi ile sürmeniz acayip geldi. Araya yüksek değerde direnç mi attınız? Emiterleri ortak bağlamışsınız. Bence en az verimi elde ediyorsunuz. Ayrıca satırlar yanıyor demişsiniz.  :!: Acaba emiterleri bu şekilde bağladığınızdan yanabilir mi ? 8O Aslında dediğinizden birşey anlamadım.  :lol: Neyse kolay gelsin.

ilker hocam satir yanmalari udn entegersinde oluyor yanma derkende bozulma değil sadece ayni anda bütün satirlar isik yayiyor :D uln ye gelince araya yüksek direnc fialn atmadim gayetde normal uln cikisna 220 ohm gibi bir direnc ile beyze girdim ayrica transistörler pnp oluyor emietrden vcc girip colectörden aliyorum öteki türlü eger uln kullanmazsam npn kullanmam gerekecek ve beyze 5 volt gelcek collectörden 4.7 volt gibi bir cikis alcam buda parlakligi etkiliyecek benim yöntemimde 9 volt veriyorum (gerci daha uygulamada tam ollarak denemsi yapmadim ) ayrica size sunu söyleyebilirimki bu uln yi ben kendi kafamdanda uydurmadim profesyonel kayan yazi üretimi yapan bir firma bana transistörleri uln ile sürdüklerini söyledi bnede ordan yola cikarak böyle yaptim .ama anlamadigim siz niye az verim aldigimi düsündünüzki acilayabilirmisiniz rica etsem neyse koaly gelsin
Ey Türk istikbalinin evlâdı! İşte, bu ahval ve şerâit içinde dahi, vazifen; Türk İstiklâl ve Cumhuriyetini kurtarmaktır! Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!

ilker_32

Ben UDN yada ULN kullanmanıza birşey demedim. Sadece ULN yada ULN ile beraber transistör kullanman tuhafıma gitti. Ben hiç kullanmadım onun için. Zaten bağlantınızı bilmiyorum. Birşey demem yanlışlık olur. Ortak emiterli bağlantı şeklini transistör bağlantı şekillerine göre bahsetmiştim. Verimin az olma nedenini onun için söyledim.

teknikelektronikci

Alıntı yapılan: "ilker_32"Ben UDN yada ULN kullanmanıza birşey demedim. Sadece ULN yada ULN ile beraber transistör kullanman tuhafıma gitti. Ben hiç kullanmadım onun için. Zaten bağlantınızı bilmiyorum. Birşey demem yanlışlık olur. Ortak emiterli bağlantı şeklini transistör bağlantı şekillerine göre bahsetmiştim. Verimin az olma nedenini onun için söyledim.

yok hocam beni yanlsi anladiniz zaten bende bir sey dediniz demedim galiba benim yukaridaki mesajda uslübüm biraz kötü olmuş özür dilerim inaninki o analmda yazmak istemedim.dedikelriniz cok dgru olabilir verim düsebilir zaten benimde en büyük korkum o ama tek bildigim sadece bir firmanin uln kullanmis olmasi bende ordan yola cikarak böle bir yol izledim belkide hata yaptim bunu önümüzdeki günlerde uygulamaya dökünce görecem ama sunu söyleyebilirimki su anda ayni mantik ile ufak dotmatrixleri gercek hayata sürüorum verdiigm akim 900-1000mA civarinda ve transistörlerde bc serisinden (ufak ynai) ona ragmen gündüz vakti görülebiliniyor dedigim gibi önümüzdeki günlerdede büyük dispalyleri sürcem (tek bir noktasinin icinde 3 led olan) mesajiniz icin tesekür eder ve tekrar özür dilerim koaly gelsin
Ey Türk istikbalinin evlâdı! İşte, bu ahval ve şerâit içinde dahi, vazifen; Türk İstiklâl ve Cumhuriyetini kurtarmaktır! Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!