M

PİC BASİC PRO İLE MENÜ OLUŞTURMA

Başlatan mamik_34, 26 Temmuz 2012, 12:12:35

mamik_34

saygı değer meslektaşlarım ben pic basic pro  kullanarak lcd menü oluşturmak istiorum istediğim kriterlerden başlıcası ;

lcd olarak 2*40 kullanıorum sağ sol yaparak ana menümde gezinmek ve istediğim bölgeye gelip onun üstünde olduğu görmem ve ona ok tuşuna bastığımda bir alt menüsüne geçmek

TEŞEKKÜR EDERİM  KOLAY GELSİN

ete

#1
Aşağıdaki projeyi incele. Menü sistemi senin istediğine yakın özellikler taşımaktadır.

http://etepic.com/index.php?topic=532.msg5806#msg5806

Ete

mamik_34


mamik_34

hocam yalnız şöyle bir durum var benim kulladığım lcd 2*40     yatay  ve uzun ben sağa sola doğru menüde gezinmek istiorum  onu  nasıl yapıcam hocam burda yukarı aşağı şekilde o kürsorun sağa ve sola taşımam gerekio 
teşekkür ederim hocam

ete

Her bir satırın 20 den 40 a kadar olan adreslerini bulursan benzer mantıkla eli deki lcd yide kullanabilirsin.
Adres olarak asagidakileri bir dene bakalım.
Lcdout $FE,$94,"ete"
Lcdout $FE,$D4,"dene"
Bu yazılar nerelere yazılıyor bak bakalım.
Ete

mamik_34

hocam yazdığımda lcd görüntü hiç çıkmıoyor   her bir satırın  adreslerini nerden bulabilirm ve  menüm de 5 yazı var sağ sol yaparak menümdeki yazıların koyulaşıp yada altında çizgi gibi bir durum söz konusu olabiliomu
hacam sizide uğraştırıorum teşekkür ederim

ete

2*40 LCD de karekter hafızası aşağıdaki şekildedir.
1.SATIR:
$80-$81-$82-$83-$84-$85-$86-$87-$88-$89-$8A-$8B-$8C-$8D-$8E-$8F-$90-$91-$92-$93-$94-$95-$96-$97-$98-$99-$9A-$9B-$9C-$9D-$9E-$9F-$A0-$A1-$A2-$A3-$A4-$A5-$A6-$A7

2. SATIR:
$C0-$C1-$C2-$C3-$C4-$C5-$C6-$C7-$C8-$C9-$CA-$CB-$CC-$CD-$CE-$CF-$D0-$D1-$D2-$D3-$D4-$D5-$D6-$D7-$D8-$D9-$DA-$DB-$DC-$DD-$DE-$DF-$E0-$E1-$E2-$E3-$E4-$E5-$E6-$E7

Lcd kullanmanın yöntemleri vardır. Sana yazılacak satırlar verdim muhtemelen sen iki satır programa bunları yazıp ekranda bir şeyler görmeyi bekledin. Elbette göremezsin. Önce LCD ekran pin bağlantı tanıumlamalarını yapman gerekiyor. Program LCD hangi porta bağlı hangi pinler ne için bağlanmış bilmesi gerekir. Sonra Ekranı temizleme komutu verip 300 ms register yerleştirme gecikmesi vermen gerekiyor. Bu iki işlemden sonra önceden verdiğim satırları kullanırsan ekranda bir şeyler görebilirsin. Yukarıda verdiğim karekter adreslerini kullanarak istediğin bir adrese yazı yazabilirsin.
Örnek vereyim 2 satır 30 nolu haneden itibaren ETE yazdıralım.
LCDOUT $fe,$DD,"ETE"
Ete

mamik_34

TEŞEKKÜR EDERİM HOCAM ÇOK YARDIMCI OLDUNUZ PROJEM BİTTİĞİNDE TÜM VERİLERİ SİTEDE YAYINLAYACAĞIM TÜM MESLEKTAŞLARIMIZZ YARARLANSIN

mamik_34

DISPLAY ( A KANALI ) YAZDIM TUŞLAR İLE A  KANALININ ÜZERİNE GELDİĞİM ZAMAN DISPLAYDAKI BU YAZI SİYAHLAŞMA OLANAĞI  VARMIDIR HOCAM

ete

Açıkçası  ne demek istediğini pek anlamış değilim. "A Kanalı" deyiminden neyi kast ediyorsun acaba.
Displaydeki yazı siyahlaşmaz. Satır komple siyah ise LCD kontrast ayarın bozuktur. Şayet iki satırda siyah ise bu dediğim geçerli.
Yalnızca 1 satır siyah ise LCD çalışmıyordur. BUnun sebebi İşlemci çalışmıyor olabilir yada LCD doğru bağlanmamıştır.

LCD nin 3 nolu bacağı Kontrast ayarı içindir. 10K lık bir potun bir ucu +5V ta, diğer ucu GND ye bağlanıp orta ucuda 3 nolu LCD pinine bağlanır. Sistem çalıştıktan sonra POT ile kontrast ayarı yapılarak karekterlerin görünür olması sağlanır.

Ete

greatgonzo

Menu seçeneklerinin siyahlaşması yada altı çizili olması o lcd de olmaz. GLCD de altını cizersin ki astarı kumaşını geçer.:-) Ama elindeki LCD ile şöyle yaparsın bence;

MENU1 <MENU2> MENU3 gibi.  Hangi menu seçili ise "<>" işaretleri arasına alırsın. Mantık yuruterek söylüyorum sürekli ekranı tazelemek yerine aralarına değişkenler tanımlarsın. O değişkenlerede normalde boşluğun ASCII sini yüklersin. hangi menu seçili ise onada büyüktür küçüktür işaretleri arasına alırsın. Bu mantıkla belki bir şeyler çıkar biraz altını eşele derim:-) .

İyi çalışmalar...

ete

Karekter LCD lerde altı çizili imaj verilebilir. Bu lcd lerin genel ozelligidir.
Mcs de Lcdout yazıp F1 tusuna basarsanız ekrana açıklaması gelir. Orada gerekli acıklama mevcut. Yanlıs hatırlamıyorsam $0E acıyor, $0C kapatıyor idi. Ben sıklıkla kullanırım bu ozelliği. Özellikle menü sistemlerinde veri girislerinde girilecek yeri belirlemek icin.
Ete

mamik_34

teşekkür ederim hocam, teşekkür ederim greatgonzo projem bitmek üzere yardımlarınız için minnettarım :)

Powered by EzPortal