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.

rs232 etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
rs232 etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

15 Mayıs 2013 Çarşamba

FT232RL ile USB-Seri Dönüştürücü



Günümüzde üretilen bir çok mikrokontroller üzerinde USB portu bulunmakta iken ne yazık ki bir çoğunun üzerinde USB portu yoktur. Bununla birlikte üretilen birçok bilgisayar üzerinde de seri port artık yoktur. Peki USB portu olmayan bir işlemciyi seri portu olmayan bir bilgisayara bağlamamız gerekirse ne yaparız? (ne de olsa seri port mikrokontroller için standart bir port konumundadır) Birçok seçenek vardır bunlardan biri FTDI firması tarafından üretilmiş olan FTDI entergesini kullanmaktır.

Bu projede "FT232RL ile USB-Seri Dönüştürücü" konusu anlatılacaktır.

Not:Elbette piyasada ucuz ve küçük modül olarak bulunmaktadır.


USB Portu
Şekil-1 :USB için kullanılan simge.
Bilgisayarların USB (Universal Serial Bus) portları sınıfındaki cihazlar. Bunlar kabaca master sınıfına sokulur ki USB bağlantısının yürütülmesini sağlayan mimariye sahiptir. Bunlara en güzel örnek olarak günümüz televizyonlarına takılan USB bellek ile bellek içindeki film ve resimlerin görüntülenebilmesidir.

Bilgisayara takılabilen her türlü cihaz (kamera,klavye, usb bellek, gibi) slave grubuna girer ki, bu cihazlar kendi başlarınu USB bağlantısını yürütemezler. USB bağlantısının yapılabilmesi için mutlaka bir master cihazla bağlantıya ihtiyaç duyarlar. 


Şekil-2 :Kullanılan bazı USB konnektör şekilleri (USB3 için kullanılanlar hariç).

Bu projede kullananılan FT232R entegresi slave özellikli cihazlarda kullanılmaktadır.

USB port USB1.1, USB2.0 ve şu anda farklı bir bacak bağlantı yapısına sahip USB3.0 şeklinde iletişim sunmaktadır. USB3.0 şu an için konumuz dışıdır.

USB1.1 ve USB2.0 seçimi sırası ile D- ve D+ bacakları ile +5V arasına 1.5k direnç bağlanarak sağlanmaktadır.

D- ile +5V arasına eklenen 1K5 direnç USB1.1 belirler

D+ ile +5V arasına eklenen 1K5 direnç USB 2.0 olmasını sağlar.

FT232R entegresi üzerinde bu seçin doğrudan enterge içinde sağlanmaktadır.

FT232RL

Şekil-3 :FT232RL çipinin bacak bağlantıları

FTDI firmasına ait FT232BL entegresi daha önce işlenmişti. Tabii FT232RL entegresi daha sade bir devre tasarımına sahip. Daha az harici eleman ile kolaylıkla devrenin gerçekleştirilmesi mümkün. Zorluğu bacak aralıklarından kaynaklanmakta. Özellikle bacakları elle lehimlemek gerçekten hüner gerektiriyor.
Şekil-4 :FT232RL USB konnektörleri

İçinde 1024 bit eeprom bulunması, USB iletişim için gereken dirençlerin entegre içine gömülü olması, harici saat frekansı için kristale ihtiyaç bulunmaması yanında, 128 bayt için rx için tampon ve 256 bayt tx için tampon bulunması sayesinde kesintisiz iletişime olanak tanımaktadır.


Şekil-5 :Kart üzerindeki LED'ler. Elimde sadece kırmızı renkli LED'ler vardı.

USB aletler için bilgisayar tarafından (HID özellikli USB cihazlar) bağlanan cihazı kendisini tanıtmasında önemli olarak eşsiz USB FTDI Chip -ID özelliği alet üzerine eklenmiştir. Ayrıca çip üzerindeki power on reset devresi ile ilk açılıştaki devrenin resetlenme ihtiyacı karşılanmaktadır.


Şekil-6 :Bilgi alışverişi esnasında yanan LED'ler. Soldaki bilgisayara bilgi gönderirken, sağdaki bilgisayardan bilgi alırken.

USB aletin işlemci ile iletişim kurmakta kullanılan bacakların bağlantı gerilimi ya dışarıdan seçilen bir gerilimle ayarlanabilmekte, yada çip üzerindeki 3.3V regülatör ile doğrudan 3.3V olarak atanabilmektedir.

FT232R entegresi USB2.0 ile tamamen uyumludur.

Şekil-7 :Kart üzerindeki köprüler. Yeşil ve mavi renktekiler seri port yön seçimleri için kullanılırken, kırmızı renkli köprü seri port çıkış seviye siçimi için kullanılmaktadır.

Dışarıdan bağlanan iki LED ile FT232R seri port iletişimi izlenebilmektedir. Her ne kadar burada bağlanmasa da Seri port için kullanılan bacaklar çip üzerinde yer almaktadır.

FTDI firması tarafından FT232R entegresi için bilgisayar üzerindeki sürücülerin veriliyor olması önemli bir konu. İki tip sürücüsü var: Sanal seri port ve D2XX direkt sürücüler. Entere hakkında ayrıntılı bilgi üretici firmanın "http://www.ftdichip.com" adresinden erişilebilir.

FTDI entegresi 28 bacaklı SSOP kılıfında ve QFN32 kılıfında elde edilebiliyor. Projede 28 bacaklı olan versiyonu kullanılmıştır. QFN32 kılıfının lehimlenmesi konusu biraz zor olabilir. Krem lehim ve fırınlama gibi bazı işlemlere ihtiyaç duyabilir)


Devre
Devre sadece USB-seri dönüştürücü olduğu için sadece çevirici kartı bulunmaktadır. Kart için gerekli besleme dolayısı ile bilgisayardan sağlanmaktadır.

Şekil-8 :Kartın SMD elemanların monte edildiği ve yolların bulunduğu yüzü.

Şema
IC1 FT232RL entegresi devrenin kendisini oluşturmaktadır. Dolayısı ile bilgisayar arasında köprü oluşturuyor R1 (220 Ohm) , D1 (LED) ve R2 (220Ohm), D2 (LED) elemanları devrenin iletişim esnasındaki aktifliği göstermektedir. C1 (22µF) ve C2 (100nF) filtre kondansatörleridir. P1 USB bağlantı konnektöre ve P2 işlemci için UART (RS232) bağlantıyı sağlar.



Şekil-9:Blok şeması


Şekil-10:Devre şeması. (Şemada C3 (100nF) kondansatör gösterilmemiştir)

Devre Yapımı

Devreni tek zorluğu FT232RL entegresini lehimlemektir. Bacak aralıkları 0.35mm gibi küçük bir aralığa sahip olduğu için lehimleme esnasında dikkatli olmak gerektmektedir..
Şekil-11:Kartın yollar

Şekil-12:Kartın üsttteki eleman yerleşimi



Şekil-13:Kartın alttaki (yolların olduğu taraf) eleman yerleşimi

Şekil-14:Kartın yolları birlikte üstteki eleman yerleşimi
Şekil-15:Kartın yolları birlikte alttaki eleman yerleşimi

Şekil-16:5V çıkış için köprü yerleşimi
 Şekil-17:3.3V çıkış için köprü yerleşimi
Not: PNP(ütü) ile baskı yapmak isteyenler için PDF çıkış ters baskı yapmadan kullanıma hazırdır

Devre Elemanları

220R R1,R2
0R (köprü) J1,J2,J3,J4
100nF C2,C3
22µF/25V C1
LED D1,D2
FT232RL IC1
IDC10 kart tipi erkek konnektör P2
USB B Konnektör P1
3'lü tek sıra pin erkek K1,K2,K3
Sıra pinlere köprü 3 Adet


Çalışması



Şekil-18:FT232RL USB-seri kartı ile bir seri port haberleşmesi olan kartın bağlantısı. Burada bir seri portu bulunan devre RS232 bağlantısı (seviye dönüştürme modülü üzerinden )ile bilgisayara bağlanırsa doğrudan çalışır.

Devrenin çalışması için bilgisayarın USB portuna bağlanması yeterlidir. RS232 bağlantısı olmasa bile modül bilgisayar tarafından tanınır ve modül için gerekli sürücülerin yüklenmesi için kullanıcı yönlendirilir. (Sürücülerin yerinin belirtilmesi istenir). Sürücülerin üretici firma sitesinden indirildiği ve paketin açıldığı varsayılmaktadır.
Sürücülerin bilgisayara yüklenmesinden sonra alet kullanıma hazırdır. (Sanal seri port sürücüleri yüklendiği varsayılarak)

Bu noktada modülün seri port bağlantısına seri port bağlantısı olan bir modül bağlanması gereklidir. Seri port ile ilgili alet bağlanır ve bilgisayar USB bağlantısı yapıldığında alet kullanıma hazırdır. (seri porta bağlı alete besleme verilerek) Geriye modülün seri portuna bağlı alet için bilgisayar programını çalıştırmak kalır. Program çalıştırıldığında ayarlar bölümünden seri portuna uygun (USB modül için bilgisayar atanmış olan) seri port seçilir Eğer her şey tamamsa, program ile seri portlu alet iletişime geçecektir. Haberleşme esnasında USB-seri modülün üzerindeki LED'ler haberlemeye uygun olarak yanıp sönecektir.



Şekil-19:Yok ben bu kadar şeyle uğraşamam diyorsanız, böyle bir modülü hazır alıp da kullanabilirsiniz..


Ekler:
FT232RL hakkında bilgi için (Aynı zamanda bilgisayar için gereken sürücüler için)

"FT232RL ile USB-Seri Dönüştürücü" projesi için gereken dosyalar.

C3 kondansatörü için güncelleme.(06-12-2013)

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


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....

2 Ağustos 2011 Salı

RCM2048R-2 LCD Ekranın Attiny2313 ile RS232 Üzerinden Sürülmesi


Giriş
Ömrünü tamamlamış (Panafax) UF342 model bir faks cihazı hurdaya ayrıldığında diğer parçalarının yanında 2x20 karakter özelliğindeki ekranı da geri dönüşüm amacıyla malzeme kutusundaki yerini aldı. Bu projede RCM2048R-2 LCD Ekranın Attiny2313 ile RS232 iletişimi ile sürülmeye çalışılacaktır.
RCM2048R-2 LCD Ekran
Bu ürün hakkında doğrudan doğruya bir bilgi veya kullanım kılavuzu olmamakla birlikte en azından üzerindeki çipler hakkında öyle veya böyle (LCD kontrol çipi için) var. Sonuçta bu ürün amaca göre tasarlanmış ve üretilmiş.
Şekil-1 :RCM2048R-2 LCD modülün arkadan görünümü.(değişiklik yapılmadan) Kablo üzerindeki yazı karışıklığı engellemek için eklenmiştir.

Şekil-2 :RCM2048R-2 LCD modülün önden görünümü.(değişiklik yapılmadan)
LCD ekran aslında bir tuş takımı ile birlikte ön panel üzerinde bulunmakta. Tuş takımı şerit kablo ile LCD ekran kartına bağlı. Bu kablo kullanılmayacağı için bu şerit kablo sökülerek devre dışı bırakılmıştır. (Kablo lehimli olduğu için kaba kuvvet kablonun lehimli olduğu yolların bir kaçını kart üzerinden yoldu).
Şekil-3 :RCM2048R-2 LCD modülü üzerindeki NJU6423B çipi.(Ne yazık ki çip üzerindeki yazı biraz silik duruyor)
Kart üzerinde iki adet entegre var. NJU6423B LCD modül ile paralel arayüzü olan ve internette veri kağıdına ulaşılabilen bir entegre. Diğer entegre hakkında fazla bilgi yok. (DZZNS59010) (Tahmini olarak: Tuş takımı kontrolu, LED'lerin kontrolu ve özellikle LCD modül için kontroller -ekrana yazılacak mesajların saklandığı bölüm ve ekran kontrol bölümü.)
Şekil-4 :RCM2048R-2 LCD modülü bacak bağlantıları. LCD modül kartı üzerindeki yerleri
NJU6423B veri kağıtlarına ulaşıldıktan sonra gerisi çorap söküğü gibi geldi. Biraz şans ve bir multimetre yardımı ile besleme , kontrol ve veri uçları rahatlıkla yerleri bulundu. Her iki çipin besleme uçları ayrıldığından sedece NJU6423B beslemesinin kullanımı yeterli olacaktır.
Şekil-5 :RCM2048R-2 LCD modülü kontrol bacakları(1).

Şekil-6 :RCM2048R-2 LCD modülü veri bacakları(2).

Şekil-7 :RCM2048R-2 LCD modülü besleme bacakları(3).
LCD modül üzerindeki inceleme ile kart üzerinde LCD paralel veri ve kontrol uçları için uçlar buluduğunun anlaşılması ile bu modülün kablolanması olaylıkla sağlandı. Tek yapılması gereken bu uçlara ve besleme uçlarına uygun kabloları lehimlemek.
Şekil-8 :LRCM2048R-2 LCD modülü kablolaması yapılmış halde. Hatta kablo lehimlerin yapıldığı noktalara sıcak silikon ile sabitleştirilmiş. (Şerit kablonun bağlı olduğu kartın üzerindeki lehim alanlarının kablo sökülürken oluşan hasar görülebilir, neyse ki önemli değildi.)

Şekil-9 :İşlemci kartı üzerindeki (eleman tarafından) LCD konnektörünün (P1) bacak bağlantıları. Kablolar lehimlenirken yardımcı olacağı kesin...
LCD modül üzerindeki bağlantı noktalarına bağlanacak ucunda 14p dişi konnektör takılı 14 yollu şerit kablo malzeme listesinde verilmemiştir. Ayrıca şekil-9'da S0 olarak belirtilen bağlantı ekranın kontrast ayarıdır. Ama bu bağlantı LCD modül üzerinde bağlı değildir. LCD modül amaca özel yapıldığından kontrast değişimi yapılacağı öngörülmemiş.Ama kontrast değişimi yapmak isteyenler için bu işlemin LCD modül üzerindeki R32-R33 üzerinden yapıldığını belirtelim.

P1 UCURCM2048R UCU
ET4
RWT3
RST2
D0T5
D1T6
D2T7
D3T8
D4T9
D5T10
D6T11
D7T12
VccT14
GNDT15,T16

Devre
Sistem 3 ana ögeden oluşuyor. LCD modül (RCM2048R-2), işlemci kartı (Attiny2313) ve RS232 seviye değiştirici kartı. İşlem basit. RS232 modülü bilgisayar ile işlemci arasındaki RS232 seri iletişimi sağlarken, işlemci modülü sistem için gereken beslemeyi sağlar ve bilgisayardan gelen veri ve komutları yorumlayarak RCM2048R-2'e göre düzenleyip verileri gösterilmesini sağlar. Ekran iki satır olduğu için bilgisayardan sadece iki satıra göre bilgi gelir ve ekrana yazılır.
Şekil-10 :İşlemci kartı

Şekil-11 :RS232 kartı. (diğer resimlerde daha fazla eleman var ise de aslında bu kadarlık eleman yeterlidir)

Şekil-12 :İşlemci kartı ile RS232 kartı arasında bağlantıyı sağlayan şerit kablo (10 yollu)

Şekil-13 :Bu projenin yapılmasını sağlayan RCM2048R-2 LCD modül,kablosu ile birlikte

Şema
Devre aslında RCM2048R-2 LCD modülü sürmesi olduğu için projede; devre bilgisayar ile RS232 üzerinden iletişim kurup, bilgisayardan gelen bilgilere göre RCM2048R-2 LCD modülü sürülmesi sağlar. (Sistem açıldığında LCD'nin başlatma durumlarını sağlamak dahil) Sistemin kalbini IC1 Attiny2313 işlemcisi oluşturuyor. Bu işlemci için gereken saat sinyallerini XT1 (3,6864 MHz) ,C3,C4 (27pF) oluşturuyor. D2 (B125C1500) ,C7 (10µF),C8 (100nF) ve IC2 (7805) sistem için gereken besleme gerilimini (5V) üretir. R2 (1k),D1(LED) işlemcinin durumunu gösteren monitör LED'i olarak çalışır. R1 (10K) direnci ve C1 (10µF) kondansatör ile LCD kontrast ayarı için kullanılmakta isede bu projede LCD modülden dolayı kullanılmamaktadır. C10,C11,C12,C13 (10µF) ve IC3 (MAX232)bilgisayar ile işlemci kartı arasında RS232 iletişimini düzenliyor. P4 DB9 seri port konnektörüdür. D3 (LED),R3 (1k) 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-14 :RCM2048R-2 LCD sürücü blok şeması

Şekil-15 :Devrenin şeması

Devre Yapımı
Sadece farklı frekanslarda kristal kullanılırsa işlemci programının değiştirilmesi gerekir. (Özellikle LCD'nin başlatılmasında kullanılan zamanlayıcıların tekrar ayarlanması gerekebilir) Tabii ki kristal topraklanmalıdır. Sistem 9V besleme ile çok az akım çeker (LCD üzerindeki aydınlatma kullanmadığında) Bu nedenle 7805 üzerinde ek bir soğutucuya ihtiyaç duyulmamaktadır. Tüm dirençler çeyrek wattır. İsteyen RS232 kartı ile işlemci kartını birleştirerek P2 ve P2_2 konnektör bağlantısını iptal edebilir.
Şekil-16:Devrenin baskı devresi şekli(üstten görünüm)

Şekil-17:Devrenin yerleşim planı

Şekil-18:Kartın eleman ve yollarla birlikte yerleşim planı(Şemadaki D3 baskı devrede LED3 olarak gösterilmiştir)

Devre Elemanları


10K TrimpotR1
1KR2,R3
10µF/25VC1,C5,C7,C10,C11,C12,C13,C14
27pFC3,C4
100nFC2,C6,C8,C9
B125C1500 veya benzeriD2
Max232IC3
ATtiny2313IC1
7805IC2
3mm LEDD1,D3
3,6864Mhz kristalXT1
DB9 dişi konnektörP4
14P konnektörP1
10P konnektörP2,P2_2
KlemensP3
6'li headerisp
RCM2048R-2LCD modül
10'lu kablo-

Malzeme listesi. Burada işlemci için soket ve 9V adaptör verilmemiştir. Kaliteli 20 ve 16 bacaklı soket oluşabilecek problemlerin önüne geçecektir.
Şekil-19 :Açılış ekranı

Ç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 RCM2048R-2 kablosu takılır..
Şekil-20 :Her iki satırda değer girişinde
Bu noktada alet seri port üzerinden bilgisayara bağlandığı göz önüne alınarak, bilgisayar üzerindeki "LCDEkran2x20.exe" programı çalıştırılır. Ayarlar bölümünden aletin bağlı olduğu port seçili olduğuna emin olun. Gerekirse Baud Oranını veya hızını seçin. 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-20 :Tarih gösterim modu
Not: Ekrana herhangi bir değer gönderildikten ve ekran göstermeye başladıktan sonra bilgisayar kapatılsa veya bağlantısı kesilse bile ekran o veri göstermeye devam edecektir (İşlemcinin beslemesi kesilene kadar)
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ı. Sadece birkaç düzenleme ve yeniden derleme ile istenen sonucu ulaşılmış oldu. Bilgisayar programı iki ana pencereden oluşuyor. Birincisi girdilerin yapıldığı ana pencere, diğer sadece port ayarını yapıldığı pencere
Ana pencere

Şekil-20 :Ana pencerenin görünümü
Resimde görülen alanların basitce tanımlarını açıklayacak olursak;
  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-21 :Seçenekler penceresinin 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. LCD ekran seri port veri aktarım hızı.
  3. Seçenekleri onaylar ve pencereyi kapatır

Not: Bu projede verilen rs232 ve işlemci kartı ile ilgili bilgiler diğer LCD ekran sürümleri ile ilgili bilgilerin neredeyse aynıdır. Bu da doğaldır. Çünkü asıl işlenmek istenen konu LCD'nın sürülmesi işlemidir. Bu nedenle çoğunlukla LCD programları birbirleriyle bir noktaya kadar uyumlu sayılabilir. (Farklı ihtiyaçları olan LCD modüller hariç) Örneğin şu ana kadar uygulaması yapılan karakter LCD'lerin başlamatma bölümlerni aynı idi. Eğer RW ucu olarak kullanılan kullanılmıyorsa veya LCD modül 8 bit yerine 4 bit olarak kullanılacaksa LCD sürücü programlarında farklılık gösteriyor. (Donanımlarında bulunmayan LCD modüller yüzünden)



Ekler:

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

"RCM2048R-2 LCD Ekranın Attiny2313 ile RS232 Ü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

74C922 (1) 74HC125 (2) 74HC138 (1) 74HC20 (1) 74HC590 (1) 93C46 (5) adc (2) adım motor (1) Android (1) Arduino (5) Arduino UNO (5) at90S2313 (7) atmega128 (1) Atmega128 (1) atmega16 (5) atmega32 (4) Atmega328p (5) Atmega8 (44) attiny (1) attiny2313 (18) avr (71) barometre (1) bilgisayar ses (1) Biplor step motor (1) Bluetooth (2) bootloader (1) cep telefonu (1) CGRAM (1) CGROM (1) DHT11 (1) DS1302 (1) DS1307 (5) ds1820 (3) EDMCPR6YOY (1) ENC28J60 (3) ethernet (3) F2631XH-44 (1) fiber optik (2) floresan ekran (4) frekans (1) FT232BL (9) FT232RL (1) FTDI232 (3) GLCD (2) grafik LCD (8) HC06 (2) HH10D (2) HITCHACHI (1) higrometre (2) HP03S (1) HR911105A (1) i2c (1) isp (2) kapasitemetre (2) karakter LCD (5) kızılaltı (2) klavye (2) kondansatör (1) L2432 (1) L298 (1) LAN (1) LCD (22) LCD ekran (2) led (8) led ekran (14) led matris ekran (4) LM044L (1) LM1117-3V3 (2) LM35 (8) lm358 (1) LM75 (2) max3232 (1) MCP3550 (1) nea02017 (2) panasonic (1) PCF8574AT (2) PCM1602 (3) programlayıcı (1) RCM2048R (1) rs232 (16) rs485 (14) saat (14) sayıcı (1) Seri (3) Sharp (1) Step motor (1) şifreli kilit (2) T6963C (3) TC1602.TC2004 (1) termometre (13) tester (1) transistör (1) tuş takımı (2) tx179 (2) uf-150 (1) USB (14) voltmetre (1) wifi (1) YMC162 (2) zamanlayıcı (2)

İzleyiciler