PBP ile pic16f628 ve glcd kontrol (resim ve yazı)

Başlatan safaka123, 09 Ekim 2013, 12:00:31

safaka123

Öncelikle şunu söylemeliyim ki bu devre ve program bir çok kişi tarafından yapılabilir. Fakat araştırmalarımda çok fazla 3310 lcd sine yönelik program olmasına rağmen PBP ile Diğer glcd lerin kullanılmadığını gördüm. Ben de bir GLCD aldım bunu nasıl yaparım dediğimde datasheet leri inceledim fakat bir örnek lazımdı bir türlü bulamadım. Bundan dolayı proton ile yapılmış bir örnek ve yabancı kaynaklı bir pbp kaynak bulabildim. Bunları örnek alarak sistemi öğrenip bazı deneme devreleri yaptım. Bu internet denizinde en azından forumumuzda böyle bir örnek olsun istedim.
Hatta proton da GLCD için tanımlamalar mevcut olduğundan bazıları glcd için proton öğrenilmesi gerektiğini söylüyor Bence en iyi program hangisi deseniz öncelikle en iyi öğrendiğiniz program ve en çok tecrübe edindiğiniz program derim. Proton şart değil diye düşünüyorum.

Devreye gelince minimum kaynak olarak 16f628 kullandım. Bunun yanısıra resim datası sığmayacağından resim için eeprom kullandım. Aynı zamanda bu eeprom'u font dosyası içinde kullandım.

3 devre var.
temel devre LOOKUP tablolarını kullanarak font'a göre yazı yazdırmak.
2. devre font dosyası eeprom'a atılmış olarak çalışıyor. (Lookup ile yapılmış kısım aynı korundu.)
3. devre resim dosyası eeprom dan okunarak çalışıyor.

proteus için bin dosyası hazırlarken bir çok editor denedim intelhex hazırlayamıyorlar en azından ben kopyala yapıştırla hazırlayamadım. Burada devreye winpic800 girdi. sanki eeprom'a yazdırıyormuş gibi hex dosyasını içine kopyalayıp kaydettim. intelhex olarak kaydettikten sonra dosyayı bin dosyasına çevirmek için winhex hexeditör programını kullanarak bin formatına çevirdim.
yükleyeceğiniz program içinde hem intelhex hem de bin formatı dosya mevcut. (EEprom denemelerini proteus da yaptım zira eeprom yazıcım yok olsa  da eeprom almam lazımdı :) )  Fakat LOOKUP lı programı gerçekleştirdim problem yok.

Kullandığım GLCD winstar 12864 modeliydi. ks0108 kontrol sistemi kullandığından buna göre devre yapıldı. GLCD paralel çalışan tip. seri çalışanları da mevcutmuş. Proteus da bacak bağlantısı aynı dizilimde değil bundan dolayı bacak bağlantısına dikkat. Birde kontrast kısmı karakter lcd den farklı buna da dikkat datasheet belirtiyor. Bunun yanısıra aydınlatma ise 4,2V buna da dikkat etmelisiniz. Proteus ta resim kısmında eeprom okumada hata var gibi görülse de ekrandaki problemli yerler hex çeviriminden kaynaklanıyor. Tabiki proteus un da yaptığı hatalar var. Gerçek devre denemesinde herşey ortaya çıkar.


*****  Son olarak versiyon çatışması olmasın diye yazıyorum. PBP3.0 kullanıyorum. Bundan dolayı sadece config satırınızı eski kullandığınız şekilde değiştirmeniz gerekiyor.  *****

http://sdrv.ms/GMwc53
http://sdrv.ms/GMwc53

Devrede komut dizisi olarak geliştirebileceğim deneyimleriniz varsa tavsiyelerinize her zaman açığım.
Kolay Gelsin

safaka123

#1
Lookup lı devreyi tek satır olarak denediğimden çalıştı. ikinci satır denediğimde üstüste çıktı. Bunun düzeltmesi satirgonder ve sayfagonder alt programlarında düzeltildi ve son hali aşağıdaki linktedir. Eski program ve yeni program proteus ta hata vermiyor gerçekte sorun ortaya çıktı.

Program üzerinde devamlı çalışıyorum. şimdilik problem yok gibi fakat yeni düzenleme olursa burada yayınlarım.

Programın son hali : http://sdrv.ms/1hEcW4H
Fotoğrafı :  http://sdrv.ms/1hEejA8


Kolay gelsin

dnacikaya

Eline sağlık pbp ile glcd örnek görmemiştim hiç. Iyi çalışmalar.