Gelişen mikrokontrol teknolojileri ve artan bilgi birikimi sayesinde geliştirici düzeyinde daha yaygın kullanımına olanak tanımıştır. Burada elimden geldiği kadar bazı örnekler sunmaya çalışacağım... Görüleceği gibi ilk örneklerimizde çoğunlukla ASM üzerinde iken daha sonraları C üzerinde örnekler yer almaktadır. Hatta ilerleyen zamanlarda Arduino örneklerinin yer alması kaçınılmaz olacaktır.

22 Ekim 2011 Cumartesi

Attiny2313 ile PCM1602K-FS(W)-GBW/VD karakter LCD ekranın RS232 arayüzü üzerinden sürülmesi



Giriş

Eğer işlemcilerciler üzerine çalışıyorsanız, oluşturulan bütün işlemci projelerinin beslemesini 5 Volt olmadığını da bilirsiniz. Bazen işlemcinin gereksinimleri, bazen çevre birim ihtiyaçları bazen de kişisel tercihlerden dolayı devreyi 5Voltun altında beslemeniz gerekebilir. İşlemci konusunda çeşitli seçeneklerin var olduğu ortada. Ama projede LCD ekran varsa çözüm ne olacak?

Bu projede Attiny2313 ile PCM1602K-FS(W)-GBW/VD LCD ekranı RS232 arayüzü üzerinden sürmeye çalışacağız.
LCD modül ve 3.3volt

Elektronik malzeme satıcılarının listeleri incelendiğinde piyasadaki karakter LCD modüllerin çoğunlukla 5 volt olduğu görülür. Eğer bu LCD'ler bu hali ile devrede kullanılması gerekirse seviye çeviricilerin ve ek besleme devresi ile devrenin daha karışacağı ortada. (ek besleme için gerilim seviye çevirici olabilir ama hala LCD sürcüsünün sinyal gerilim seviyesi farkı var)

Şekil-1 :PCM1602K-FS(W)-GBW/VD karakter LCD modülün önden görünümü. Kablosu ile birlikte


Şekil-2 :PCM1602K-FS(W)-GBW/VD karakter LCD modülün altan görünümü.

Bu durumda en pratik yöntem karakter LCD modülün 3.3volt ile sürülmesi ki bu biraz piyasada araştırması gerektirir. Birçok karakter LCD serisi bulunan XIAMEN PRECISE DISPLAY CO., LTD. firmasının ürettiği PCM1602K-FS(W)-GBW/VD kodlu ürün 3.3volt ile çalışacak bir proje için ararken bulundu ama proje daha sonra sonlandırıldığı için ekran elde kaldı ve bu projede değerlendirme imkanına ulaşıldı. (Satın alınan firma 3.3Volt için önermişti , neyseki önerileri doğruymuş)

Bu LCD modül 5volt ile çalışanlardan pek farklı değil. Tek farkı beslemesi, onun haricindeki tüm işlevler aynı şekilde işliyor. Sadece arkaplan aydınlatması için kullanılan LED için ayrı bir besleme uygulanması gerekiyor. Modül üzerine eklenen iki direnç ile LCD modülün besleme hattı üzerinden kolaylıkla sürülebilir. (Sadece LED yak- söndür işlemi uygulanamaz sürekli yanık kalır).

Şekil-3 :LM1117 - 3.3 tümdevresi ve bacak bağlantıları.


Şekil-4 :LM1117 - 3.3 kart üzerine monte ediliş şekli.(en azından protatipte)

3.3Volt için LM1117-3.3 tüm devresi kullanıldı. Bacak bağlantısı aynı kılıftaki 7805 tümdevresinden farklı olduğundan standart olarak LCD sürücüsü kartına uygulayabilmek için karta alttan takıldı. (verilen baskı devre şemasında bu bağlantı düzetilmiştir) 5-15V giriş besleme aralığında kullanılabilen tüm devre kararlı bir şekilde 3.3V ve 800mA üretebilmektedir. Satın alırken dikkatli olmakta fayda var çünkü aynı ürün kodu altında 1.8V, 2.5V, 2.85V, 3.3V, 5V, ve ayarlanabilir gerilim seçenekleride mevcuttur. (LM1117-xx kodunda xx ile belirtiler kod değişiklik göstermektedir).

Aslında değinilmesi gereken ilk konu işlemci olması gerekirdi. Attiny2313 bu bakımdan 10MHz'e kadar 2.7 - 5.5V, besleme gerilimi aralığında kullanılabilmektedir. Bu özellikle devrenin 3.3 voltta çalışması gerektiği için ihtiyacı karşılamaktadır. Daha önceki projelerde kullanılan devre ve işlemci aynen kullanma olanağını tanımaktadır. Devre üzerindeki kristal 3.6864MHz olduğundan 3.3 voltluk besleme gerilimi altındaki çalışma frekansı şartını da yerine getirmektedir.

Şekil-5 :RS232 bağlantısı için kullanılan MAX3232.


Şekil-6 :RS232 bağlantısı için kullanılan kartın arkadan görünümü (Protatip karttaki kablo bağlantısı açıkça görülmektedir).

Değinilmesi gereken diğer bir konuda RS232 haberleşmesi. Standart MAX232 tümdevresi 5 volt besleme ile çalışmaktadır. Eğer gerilim seviyesi çeviricileri ile uğraşılmak istenmiyorsa 3.3 volt ile çalışan bir tüm devre gereklidir. Çözüm Maxim firmasının ürettiği MAX3232'dir. 3- 5 volt aralığında düşük akım harcaması ile çalışabilen bu entegre sadece kullanılacağı beslemeye göre kondansatörlerin düzenmenmesi gerekiyor. (Projede kullanılan kart başka bir proje için oluşturulduğundan kart üzerindeki işlemci bağlantıları doğrudan karta lehimlenerek gerekçekleştirildi.) Bacak bağlantıları olarak MAX232 entegresi ile uyumlu. Sadece kondansatörler farklı ve tümdevrenin 2.bacağına bağlı kondansatörün diğer ucu toprağa bağlı.

Şekil-7 :R12 ve R13 dirençleri için bağlantı noktaları (kırmızı daire içindeki) ve kablo bağlantısı. Kabloların lehim noktalarından kopmalarını engellemek için sıcak silikon ile sabitlenmiştir

LCD modül üzerindeki bağlantı kabloları konnektör ile uygun bağlantıda yapılması gerekiyor. Tabii bu devrenin doğrudan kart üzerine doğrudan konnektör takılması için düzenlenemeyeceği anlamını taşımaz. Birde R12=22 Ohm, R13=0 Ohm (yüzey montaj elemanı) dirençleri eklenerek LCD modül arka plan aydınlatması modül besleme hatlarıdan beslenmesi sağlanır ve devre çalıştığı sürece sürekli ışık vermesi sağlanır. (Ayrıcı kablo bağlantısı için tasarruf sağlamasının yanında daha önceki projelerde kullanılan modülü kullanma olanağı tanır).

Şekil-8 :LCD modül üzerindeki arka plan aydınlatmada kullanılan LED


Şekil-9 :LCD modül üzerindeki arka plan aydınlatmasının kabaca çalışma şekli

Tüm modüllerin gerilim seviyeleri birbirine uygun olduktan sonra yapılması gereken sadece modülleri birbirine bağlamak ve eneji vermek. Bu projde enerji için 9 voltluk DC adaptör kullanıldı. Sonuçta LM1117-3.3 tümdevresi devre için gereken 3.3 voltluk gerilimi 9 voltluk gerilim üzerinden sağlayabilecek düzeydedir.

İsteren LCD modül ekran parlaklığını ayarlamak için R12 ve R13 dirençleri ile oynayabilir. Yada kendi kartını geliştirip R12 ve R13 direnç takmadan LCD modülü üzerindeki LED bağlantılarını kullanarak kendi projesini geliştirebilir.
Devre

Proje normalde 2 modülden oluşuyor. Birinci modül işlemci modülüdür, ikinci modül RS232 dönüştürücü modülüdür. Asıl önemli parça LCD ekran modülü olduğu için ayrı parça olarak değerlendirilmemiştir.

Şekil-10 :LCD modül sürücü kartı.


Şekil-11 :RS232-seri(uart) dönüştürücü).


Şekil-12 :2x16 LCD ekran, bağlantı kablosu ile birlikte.

Şema

Devre PCM1602K-FS(W)-GBW/VD LCD modülü sürmesi olduğu için projedeki devre bilgisayar ile RS232 üzerinden iletişim kurup, bilgisayardan gelen bilgilere göre PCM1602K-FS(W)-GBW/VD LCD modülü sürülmesidir.

Sistemin kalbini IC1 Attiny2313 işlemcisi oluşturuyor. Bu işlemci için gereken saat sinyallerini XT1,C3,C4 oluşturuyor. D2,C7,C8 ve IC2 sistem için gereken besleme gerilimini (3.3V) üretir. R2,D1(LED) işlemcinin durumunu gösteren monitör LED'i olarak çalışır. R1 direnci PCM1602K-FS(W)-GBW/VD modülün kontrast ayarı için kullanılan ayar direncidir.

Not:P1 kontrast ayarı bu LCD modül üzerinde çalışmamaktadır.

C10,C11,C12,C13 ve IC3 bilgisayar ile işlemci kartı arasında RS232 iletişimini düzenliyor. P4 DB9 seri port konnektörüdür. D3,R3 Aslında bu kart için kullanılsada, projede devrenin çalıştığını gösteren besleme monitörüdür.

Geri kalan kondansatörler zaten filtre için kullanılıyor. P1 LCD için bağlantı konnektörü, ISP işlemci için programlama konnektörü, P2 ve P2_2 işlemci kartı ve RS232 kartı arasındaki bağlantı için konnektördür.

Şekil-13 :Devrenin blok şeması


Şekil-14 :LCD Modülü Devrenin şeması

Devre Yapımı

Devre yapımı konusunda fazla kritik bir nokta yok.

Kablolama esnasında kablolar arasında kısa devre olmaması konusunda dikkatli olmak gerekiyor. Kablolar bacak bağlantıları konusunda biraz araştırabilirsiniz. Lehimlemeden sonra bir sorun olup olmadığı konusunda LCD ekranı denedikten sonra kabloların LCD ekrana lehimleme noktalarına biraz sıcak silikon sıkılması ileride yaşanabilecek kablo kopmalarının önüne geçecektir

Şekil-15:LCD Modül-baskı devresi şekli(üstten görünüm)


Şekil-16:LCD Modül-yerleşim planı


Şekil-17:LCD Modül-eleman ve yollarla birlikte yerleşim planı.


Şekil-18:İşlemci kartı ve RS232 kartlarının (P2 ve P2-2 bağlantısı) kablo bağlantıları.

Devre Elemanları



10K TrimpotR1
1KR2,R3
10µF/25VC1,C5,C7,C14
27pFC3,C4
100nFC2,C6,C8,C9,C11
330nFC10
470nFC12,C13
B125C1500 veya benzeriD2
Max232IC3
ATtiny2313IC1
LM1117-3.3IC2
3mm LEDD1,D3
3,6864Mhz kristalXT1
DB9 dişi konnektörP4
14P konnektör P1
10P konnektörP2,P2_2
KlemensP3
6'li headerisp
PCM1602K-FS(W)-GBW/VDLCD modül
10'lu kablo-
14'lu kablo-

Not: RS232 modülü sadece 3.3V'da kullanılacaksa C10,C11,C12 ve C13 kondansatörleri 100nF değerinde olabilir. (Modül 3.3V ve 5V gerilimlerinde kullanma ihtimaline karşılık eleman listesinde verilen değerlerde kullanılmıştır)

Şekil-19:Bu kablo protatip üzerinde kullanılmamıştır. Çünkü protatip tasarlanırken bu 10p erkek konnektör kullanımı planlanmamıştı. (Burada veriler baskı devre şeması kullanılırsa bu kablo kullanılabilir)

Çalışması

İşlemci programlama için ekran takılmamalıdır. Sürekli programlayıcı devrede olmadığı için koruma öngörülmemiştir. Programlama ve sigorta ayarları tamamlandığı zaman besleme kesilir ve programlayıcı kablosu sökülür ve PCM1602K-FS(W)-GBW/VD kablosu takılır.(Herşey tamamsa, ekranda bu tür ekranlar için kullanılmış olan test sayfası yer alacaktır).

Şekil-20:Proje elemanları çalışırken.

Bu noktada alet seri port üzerinden bilgisayara bağlandığı göz önüne alınarak, bilgisayar üzerindeki "LCDEkran2x16.exe" programı çalıştırılır. Ayarlar bölümünden aletin bağlı olduğu portun seçili olduğuna emin olun.

Şekil-21:Bir ekran mesajı.(Parlaklık ayarı ekranın kendisi tarafından sağlanmıştır.)

Bu noktada hangi satıra ne yazılacağı artık kullanıcıya kalmıştır. Örneğin birinci satıra ismini yazarken, ikinci satıra tarih veya saat gösterimini seçebilir. İki buton seçeneği var. Eğer ekrandaki bilgi sürekli değişmeyecese sadece "LCD Ekrana Gönder" butonu kullanılabilir. Ama sürekli değeri değişen bir girdi(saat) varsa o zaman "LCD Ekrana Sürekli Gönder" butonu kullanılabilir.

Şekil-22:Saat ve takvim.


Şekil-23:Açılış ekranı.

Bilgisayar Programı

Bu projede işlemcide bir yazılım mevcut ama bu sadece işin yarısı. Diğer yarısını ise bilgisayardaki yazılım oluşturuyor. Yani bilgisayardaki yazılım ekranda ne gösterileceğini denetliyor. Bilgisayardaki program Borland Delphi 7 ile yazıldı. (PCM1602K-FS(W)-GBW/VD için güncellendi.)

Bilgisayar programı iki ana pencereden oluşuyor. Birincisi girdilerin yapıldığı ana pencere, diğer sadece port ayarını yapıldığı pencere

Not:YMC162 LCD ekran için yazılan program da aynen kullanılabilir.
Ana pencere


Şekil-24:Ana pencerenin görünümü.

  1. Birinci satır yazı alanı. Burada yazılan değer LCD ekran birinci satırda görüntülenir.
  2. Birinci satır açılır menü şeklinde tanımlanan metin giriş türü vardır: Metin, saat, tarih, gün(haftanın günü) ve boş
  3. İkinci satır yazı alanı. Burada yazılan değer LCD ekran ikinci satırda görüntülenir.
  4. İkinci satır açılır menü şeklinde tanımlanan metin giriş türü vardır: Metin, saat, tarih, gün(haftanın günü) ve boş
  5. LCD ekrana yazı alanlarındaki bilgiyi tek seferlik gönderir.
  6. LCD ekrana yazı alanlarındaki bilgiyi sürekli gönderir. (saat ve tarih sürekli güncellenir)
  7. LCD ekranı siler
  8. Seçenekler penceresini açar

Seçenekler


Şekil-25:Seçenekler pencerenin görünümü.

Resimde görülen alanların basitce tanımlarını açıklayacak olursak;
  1. LCD ekran seri port bölümünün bağlı olduğu portu seçilir. (bağladığınız porta dikkat.)
  2. Seçenekleri onaylar ve pencereyi kapatır


Ekler:

ATtiny2313 hakkında ayrıntılı bilgi için

"Attiny2313 ile PCM1602K-FS(W)-GBW/VD karakter LCD ekranın RS232 arayüzü üzerinden sürülmesi" projesi için gereken dosyalar

Bu devrenin yapım sorumluluğu size aittir. Devre yapıldı ve çalışıyor. K.A....

Translate

Sayfalar

Etiketler

İzleyiciler