Glcd ekaranında bar işlemleri

Başlatan fractal, 17 Şubat 2009, 13:10:36

fractal

ekranı kaplayacak kadar bar yapıyorum içine karekterin negatifini basıyorum.ama ekran  cok yavaş  oluşuyor.neden böyle oluyor.bu bar işlemlerini daha hızlıca yapamazmıyım.mesela bir bar ile menüde secenkeleri kaydırmak istiyorum.bu böyle hep yavaşmı olur.pll 10mhz yaptım 40mhz işlemci hızım.
Restantum cogniscutur Quantum deligutur

kostebek

Valla bende de öyle. Yani dandik bi cep telefonundan bile daha beter oldu. Niye öyle ben de anlamadım.

Tagli

Çubuk kaydırılırken tüm ekran mı güncelleniyor? GLCD ile uğraşmışlığım yok ama eğer sadece belli bir bölgeyi güncellemek mümkünse (ki bana mümkün olmalı gibi geliyor) sadece o bölgede işlem yapmak gerekir. Kod eklenirse belki daha rahat yorum yapılabilir, benim tarafımdan değilse bile konuya daha yakın arkadaşlar tarafından.
Gökçe Tağlıoğlu

fractal

bende açılış ekranın tamamı bar şeklinde.yani64x128 tamamen siyah içine yazının negetifini basıyorum.başka bir işlem cok.ama cok yavaş oluyor..
Restantum cogniscutur Quantum deligutur

ftsahin

GLCD işlemlerinin yavaşlığı, okuma ve yazma işlemlerinin byte olarak yapılmasından kaynaklanıyor. Ekrana bir pixel bile koysanız bir byte'lık veri yazmanız gerekir. CCS' nin grafik kütüphanelerine bakarsanız orada LCD işlemlerinin tümünün "glcd_writeByte" komutuyla yapıldığını görürsünüz. Ekrana bir pixel koymak için de önce pixelin içinde bulunduğu 8 bitlik veri okunuyor, 1 bit verinin içine saklanıp tekrar yazılıyor.  Bu da yavaşlamaya sebep oluyor.

Ekranı dolduracak şekilde bar çiziyorsanız

glcd_fillScreen(1)


daha hızlı işlem yapar.

fractal

yardım için çok teşekkürler bunun deneyeceğim.
Restantum cogniscutur Quantum deligutur

VFR

Bir işlemin ilerleme süresini göstermek için Bar kullanmak istiyorum. 100 pixel genişliğinde 10 pixel yüksekliğinde olması yeterli benim için.
Şöyle yazıyorum ama çalıştıramadım bir türlü.

glcd_bar(13,5,113,15,1,on);

İçindeki parametreleri değiştirerek her şekilde denedim ama bir türlü çalıştıramadım. Sorun nerde sizce?