Picproje Elektronik Sitesi

DERLEYİCİLER => Microchip XC Serisi => Microchip XC8 => Konuyu başlatan: HeCToR - 21 Şubat 2016, 13:28:16

Başlık: Grafik Lcd inversion
Gönderen: HeCToR - 21 Şubat 2016, 13:28:16
Merhaba Arkadaşlar Resimdeki Saat kısmı gibi negatif, pozitif tersleme işlemini nasıl yapabilirim örnek verebilirseniz memnun olurum Saygılar.
(http://s16.postimg.cc/ptxxpoigx/invert_font.jpg) (http://postimg.cc/image/ptxxpoigx/)
Başlık: Ynt: Grafik Lcd inversion
Gönderen: Mucit23 - 21 Şubat 2016, 13:50:15
Bunu yapabilmeniz için öncelikle Yazıyı invert olarak yazabilmeniz lazım. Öncelikli olarak bu konuya bakın. Bunu yapabiliyorsanız eğer geri kalan kısımda basit

Önce SAAT yazan kutucuğu tamamen siyaha boyarsınız, Sonra İnvert olarak içeriye SAAT yazısını yazarsınız. En basit bu şekilde olur.
Başlık: Ynt: Grafik Lcd inversion
Gönderen: HeCToR - 21 Şubat 2016, 13:55:40
@Mucit23 bu kutucuğu karartma işlemini line,linemı olarakmı doldurmak gerekir yoksa pixel,pixelmi geçişlerde hızlı olması gerekiyor örnek uygulama yada  kod varsa sevinirim
Başlık: Ynt: Grafik Lcd inversion
Gönderen: Mucit23 - 21 Şubat 2016, 14:37:53
Resimdeki gibi bir LCD ile çalışıyorsan her halükarda pixel pixel dolduracaksın. Ekranı nasıl tasarladığına bağlı aslında. Ama Rectangle gibi fonksiyonları kullanırsan bildiğim kadarıyla bunlar zaten pixel ile çalışıyor. Ama hız konusunda çok fazla problem olacağını sanmam.
Başlık: Ynt: Grafik Lcd inversion
Gönderen: LukeSkywalker - 21 Şubat 2016, 19:22:39
Bu gibi şeyleri image olarak yapmak en kolayı sanırım.
Başlık: Ynt: Grafik Lcd inversion
Gönderen: HeCToR - 21 Şubat 2016, 21:41:41
@LukeSkywalker yani kutucuğu image olarak siyah bas diyorsun yazıyıda invert et diyorsun hocam
Başlık: Ynt: Grafik Lcd inversion
Gönderen: F.T - 21 Şubat 2016, 21:57:27
Zaten resimdeki imaj olmalı.
Başlık: Ynt: Grafik Lcd inversion
Gönderen: Karamel - 21 Şubat 2016, 22:22:29
@CORTEX ustadim.

ekrandaki menuyu resim olarak hazirlayin. hic birisi negative olmasin. buton gibi seylerin hangi cordinate ta oldugunu biliyor olmaniz gerekir. butona basilmis kisim i ekrana gostertirken negative olarak ekrana gostertir. diger kisimlari normal olarak gostertirseniz. istediginiz olur gibi gorunuyor?
Başlık: Ynt: Grafik Lcd inversion
Gönderen: Mucit23 - 21 Şubat 2016, 22:25:48
Resimle olur ama bu tip bir lcd de yapılacak en kötü yöntem olur herhalde. Bir dünya hafıza yersiniz.
Başlık: Ynt: Grafik Lcd inversion
Gönderen: Karamel - 21 Şubat 2016, 22:38:58
hocam benim hesaplarima gore bir resim 1024 byte tutuyor?  :-\ mesela 16k rom u olan bir microcontroller icin. 1 menu 15k free rom?
Başlık: Ynt: Grafik Lcd inversion
Gönderen: quarko - 21 Şubat 2016, 22:41:20
Bu tip işler için resim olmasına gerek yok. Text basabiliyorsanız ve dikdörtgen çizdirebiliyorsanız resme gerek yok demektir. Text basma fonksiyonunuza bir adet parametre gönderirsiniz. O parametreye göre normal veya invert olarak yazılmasını seçebilirsiniz. Boşu boşuna hafızanızı harcamayın, resim yaparak :)
Başlık: Ynt: Grafik Lcd inversion
Gönderen: Mucit23 - 21 Şubat 2016, 22:52:18
Evet aynen öyle, Karamel zamanında bu konuda başım ağrıdı. Yeri geldiğinde o 1K rom için 40 takla atabilirsin. Yada hafızası daha yüksek pahalı bir işlemciye geçeceksin.

Yarım kalan kuluçka kontrol cihazı adında bir projem vardı. O zaman C bildiğim yoktu. Protonda yapmıştım. Bayağı karışık bir sistem birçok menü var menülerinde alt menüleri vs var. Sırf 10-15 tane resim kullanmıştım. Resimler üzerinde yazıları invert yaparak menüler arasında geziniyordum aslında güzel bir örnek ama üzerinden 4-5 sene geçmiş şimdi ne yaptığımı hatırlamıyorum bile. Sonradan bir sebeble projeden vazgeçtim. Ama menü yapmayı çok iyi öğrenmiştim.

Şimdi resimdeki 128x64 lcd için konuşursak o şekilde bir menü yapmak gerçekten çok basit. Resim'e gerek yok gerçekten. @quarkonun dediği gibi renctangle fonksiyonunuz var ise ve invert text basabiliyorsanız birçok basit menüyü yapabilirsiniz.

O projeyi ekte ekliyorum inceleyebilirsiniz.
http://dosya.co/78hu8ws8heom/KULUÇKA.hex.html (http://dosya.co/78hu8ws8heom/KULU%C3%87KA.hex.html)
http://dosya.co/hhaocpyl0h31/Şema.DSN.html (http://dosya.co/hhaocpyl0h31/%C5%9Eema.DSN.html)


Başlık: Ynt: Grafik Lcd inversion
Gönderen: HeCToR - 21 Şubat 2016, 23:26:12
Şimdi yazıları text olarak basıyorum zaten bir fonksiyon oluşturup içerisinde line şeklindede kutu oluşturup içerisini yine line ile dolduracağım bu kutucuğu textin üzerine atadığımda ve textide eş zamanla invert ettiğimde olacak diye umuyorum önerileriniz için teşekkürler
Başlık: Ynt: Grafik Lcd inversion
Gönderen: dursuncemal - 22 Şubat 2016, 00:56:42
once kutucugu sonra texti yazarsaniz sorun olmayacaktir. islemcide yeterli yeriniz varsa hic ugrasmadan tumunu tablo seklinde de atabilirsiniz biraz kaba ama daha rahat olur kanisindayim.ayrica cok basit bir

fonksiyon ilede sadece siyah bogeyi atabilirsiniz tablo bile gereksiz  anladigim ladari ille tuslara basma fekti yapacaksiniz. ayni fonksiyonu lokal silme yapacaginiz zaman da kullanabilirsiniz.

sorunuzdan cıkarimim herhangi bir glcd kutuphanesi, kıllanmıyorsunuz kendınız fonksiyonları kendınız yaziyorsunuz

kolay gelsin.
Başlık: Ynt: Grafik Lcd inversion
Gönderen: birkan - 22 Şubat 2016, 14:20:22
Örneğin
lcd_write();
Gibi bir fonksiyonunuz varsa
O fonksiyonun kopyasını Alıp
Lcd_black_write();
Isimli bir fonksiyon daha oluşturun
Bu fonksiyon const içindeki çağırılan byte ları tersleyip öyle yazsın. Umarım anlatabilmişimdir kolay gelsin.