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.

26 Nisan 2009 Pazar

RS485 (Seri) LCD Çevirici


Devrenin Temeleri

Devremizi basitçe inceleyecek olursak.

Besleme; devrenin çalışması için olmazsa olmazı..
RS485; bilgisayar ile işlemci haberleşmesi için (sadece işlemci tarafı)
İşlemci; bilgisayar ile LCD modül arasındaki köprü AT90S2313
LCD; bilgisayardan gelen bilgilerin görüntülendiği yer

Devre ilk açılışında işlemci LCD modülü sıfırlar ve veri yazmak için hazırlar. Bilgisayardan gelen veri durumuna göre bu ilk gönderildiğinde satır seçimi ve sonrakiler ekrana yazılaması gereken veridir. Ve son olarak satır sonu verisini alır ve işlemci bunlara uygun olarak LCD modülü kontrol eder. RS485 için söylenecek fazla bir şey yok. Bu bölüm sadece bilgisayar seri portu ile ve işlemcinin seri portu arasında bir köprüdür. RS485 için internet üzerinde ayrıntılı araştırma yapabilirsiniz. LCD modüller hakkında daha ayrıntılı bilgi için internet sayfaları ve LCD modül üretici sayfalara oldukça bilgi sunacaktır.
RS485 için söyleyebileceğim tek şey portun işlemci tarafı sadece alma konumunda ve bilgisayar tarafında gönderme konumunda ayarlandığıdır.
(Not: Bilgisayar ve işlemci tarafındaki programlar aslında doğrudan RS232 iletişim sistemi için doğrudan kullanılabilir. Çünkü RS232/RS485 dönüştürücü arabirim ullanılmakta.)

LCD ve Teknolojisi


LCD temelde sıvı kristalleri üzerine kurulu yapıdır. Yani basitçe iki elektrot yüzeyi arasına bir sıvı doldurulur. Bu sıvıyı oluşturan bileşenler normalde düzensiz bir yapıda yerleşir. Ama bu elektrotlar üzerine bir gerilim uygulandığında bu sıvıyı oluşturan bileşenleri belli bir düzende yerleşime zorlar. Bu tek başına görüntü oluşumuna yeterli değildir. Önemli bir yapı olarak özel ışık filtreleri bu noktada devreye girer. Işığı kutuplama olarak tanımlanan işlemi gerçekleştiren bu elemanlar ışığın belli bir düzende geçmesini sağlar. Eğer ele edebilirseniz bu iki elemanın belirli açılarda birbiri üzerine yerleştirildiği zaman ışığı geçirdiği başka açılarda geçermediğini görebilirsiniz. Hatta bunu LCD kullanan hesap makinelerinde de görebilirsiniz.

Aslında bu elemanlar oldukça kullanışlı ve düşük güç harcayan yapıları vardır. İmalatı göreceli olarak daha basit ve hızlıdır. Şu anda günümüzdü kol saatleri, hesap makineleri, masa saatleri gibi bir çok kullanım alanı bulanbilen bu ürün düşük güç harcaması sayesinde küçücük bir pil sayesinden uzunca zaman çalışabilmektedir.

Bu noktaya kadar her şey güzelde bu elemanların sürülmesi yani çalıştırılabilmesi biraz karmaşık yöntemleri gerektirir. Bu da gelişen elektronik sayesinde kendiliğinden ortadan kalktı. Hatta artık LCD devrelerini kendiniz sürmeniz bile gerekmeyen modüller mevcut. Burada bu modüllerin bir mikrokontroller (AT90S2313)üzerinden kontrol ve bir seri port ile birlikte bilgisayardan veri aktarılması, yani bilgisayardan LCD üzerine yazı yazıdıracak bir devre oluşturacağız. Kullanacağımız LCD karakter tipi bir yapıdır. Yani sadece karakter göstermek üzere tasarlanmış ve yapılmış. Karakterler önceden belirlenmiş ve LCD rom'una kaydedilmiş. Bizim yapacağımız sadece yazdırmak istediğimiz karakteri ve yerini berlirleyip, bununla ilgili bilgiyi LCD modüle göndermektir.


Şekil-1 :2x20 LCD modülün önden ve arkadan görünümü.



Şekil-2 :4x20 LCD modülün önden ve arkadan görünümü.


LCD modüllerde değişik haberleşme yöntemleri mevcuttur. Burada paralel bağlantıyı kullanacağız. Yani 8 bit veri hattı, 1 seçme hattı, 1 yaz/oku hattı ve 1 yazıcı seçme hattını kullanacağız. Buna ek olarak kullandığımız LCD modülde 1 tanede kontras ayarlama hattı mevcuttur. Bu modüller üzerinde arka aydınlatma için besleme hatları var ama kullanmadık. Çünkü çok fazla akım çekiyor. Daha fazla ayrıntı için internet üzerinde ayrıntılı bilgi bulabilirsiniz.


Şekil-3 :Devre çalışırken görünümü. Devrenin çalışması hakkında bir fikir verecektir.


Sistemin kalbi olan IC3 (AT90S2313) entegresi tüm saat seri haberleşme ve LCD kontrol işlemlerini yürütür. Bu entegreye bağlı olan C6,C7 ve XTL1 işlemci için gereken saat sinyallerini oluşturur.

Şema

Devre şeması aslında açık ve kendini anlatmaya yinede yeterli. IC3 devrenin kalbini AT90S2313 oluşturuyor. IC1 RS485 ve işlemci arasındaki seri haberleşme arabirimdir. R2 LCD ekranın kontrast ayarı içindir. İstenilen kontrast için ayarlanabilir. IC2 zaten çok tanınan ve bilinen 7805 olarak 5 voltluk regülatördür. Fazla güç çekilmediği için soğutucuya ihtiyaç duyulmamıştır. Aslında seri port bölümünü bir yana bırakacak olursak işlemci ve LCD ekran birlikte pille beslenebilecek kadar küçük akım çekmekte.


RS485 LCD dönüştürücü blok şeması



Şekil-4:Devrenin şeması


Devre Yapımı

Devre yapımında kritik bir eleman yok. Baskı devre kartı üzerinde geçekleştirildiğinde standart eleman yerleşimi göz önüne alınarak devre kurulabilir. Bu noktada diğer devre teknikleri kullanıldığında bacakların doğru bağlanması önemlidir. 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 vattır.
Besleme konusunda bir sorun oluşturmayacağınızı düşünüyorsanız girişteki köprüyü devre dışı bırakabilir veya tek bir diyotla değiştiribilirsiniz. (Kendi besleme kaynağınız varsa ve devreyi kendiniz kullanacaksanız) P4 AVR işlemcileri için programlama girişi olarak kullanılmak üzere devreye eklendi.


Şekil-6:Devrenin yerleşim planı



Şekil-7:Devrenin baskı devresi şekli(üstten görünüm)



Şekil-8:Kartın eleman ve yollarla birlikte yerleşim planı


Devre Elemanları

120RR1
10K TrimpotR2
10µF/25VC3,C4,C5,C8
27pFC6,C7
100nFC2,C2,C9,C10
B125C1500D1
ST485IC1
7805IC2
AT90S2313(ATTINY2313)IC3
4Mhz kristalXTL1
6p6c veya 6p2c RJ12 konnektörP1
Adaptör priziP2
14P konnektörP3
10P konnektörP4

Malzeme listesi. Burada işlemci için soket ve 9V adaptör verilmemiştir. Kaliteli 20 bacaklı bir soket oluşabilecek problemlerin önüne geçecektir. RS485 entegresi için 8 bacaklı bir soket kullanımı oluşabilecek arıza durumlarında RS485 entegresinin değiştirilmesinde kolaylık sağlayacaktır.



Devrenin toplanmış ve çalışmaya hazır.



Devre ilk çalıştığında bilgisayara bağlı olmasa bile LCD ekranda görülen metin(test sayfası diyelim).



(4x20)Devrenin çalıştığını göstermek için oluşturulmuş bir örnek


Peki 2x20 veya 4x20'den başka LCD ekranları kullanırsak ne olur. İşte 2x16 olarak bir örnek:


2x16 LCD ekran



Bunu yazmasaydım içim rahat etmeyecekti.

Bu LCD ekran 2x16 olmasına doğruda, karekter rom olarak diğer gösterilen örneklerden biraz farklı. Nadir olarak karakter romu kiril alfabesini içerecek şekilde düzenlenmiş. Bu sayede bu alfabeyi kullanan dil yapısında ek bir işleme gerek duyulmadan kullanılabiliyor. Darısı Türkçe'nin başına... Çünkü burada yer alan Türkçe karakterler için LCD'nin RAM bölümüne bu karakterler ile ilgili verileri yüklemek gerekti. Yani her açılışta bu karakterler RAM bölümüne yüklenmesi gerekiyor.

Buraya kadar anlatılanlar devrenin donanım bölümünü içermekte. Ama devrenin bir de yazılım bölümü var, daha doğrusu bir bilgisayardaki programı. O olmazsa olmaz.

Bilgisayar Programı


Bu devredeki 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ı. (Neyse ki ücretsiz sürümü vardı)

Program birkaç ana bölümden oluşuyor.
  • Girdi-Yazı alanlarına girilen metni LCD ekrana yazar.
  • Metin-Metin bölümüne girilen veya kayıtlı bir metni LCD ekrana yazar.
  • Seçenekler-Program ve LCD ekranla ilgili ayarların yapıldığı bölüm.
  • Yardım-Temel düzeyde bilgilerin verildiği bölüm.

Girdi



Girdi penceresinin görünümü

Resimde görülen alanların basitce tanımlarını açıklayacak olursak;
  1. Ekrandaki satırları temsil eden yazı alanları. Buraya girilen metin LCD ekranda gösterilir.
  2. 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. İşaretlendiğinde yazı alanlarına girilen metin LCD ekranda ortalanır.
  4. LCD ekrana yazı alanlarındaki bilgiyi tek seferlik gönderir.
  5. LCD ekrana yazı alanlarındaki bilgiyi sürekli gönderir. (saat ve tarih sürekli güncellenir)
  6. LCD ekranı siler
  7. Seçenekler bölümünü açar

Metin



Metin penceresinin görünümü

Resimde görülen alanların basitce tanımlarını açıklayacak olursak;
  1. Bu alandaki metin seçenekler bölümündeki ayarlara uygun olarak LCD ekrana gönderilir. Bu alana metin girişi
    yapılmaz ama değişiklik için satın seçilebilir.
  2. Seçilen satırda değişiklik veya yeni metin giriş alanı. Metin girişini onaylamak için enter'a bas.
  3. Kaydedilmiş metinler 1 nolu alana yükler.
  4. Metnin bulunduğu 1 nolu alanı kaydeder.
  5. Metin alanındaki bilgiler seçeneklere uygun olarak LCD ekrana gönderir ve durdurur.
  6. Metin alanını(1 nolu) siler.
  7. Girilmiş olan metni(2 nolu) metin alanındaki (1 nolu) metnin sonuna ekler.
  8. Metin giriş alanındaki karakter sayısını gösterir.
  9. LCD ekranı siler.
  10. Seçenekler bölümünü açar

Not: Bu bölüm tam bir metin düzenleme programı değildir. Sadece kısıtlı düzeyde metin girdi ve düzenleme işlevlerine izin verir.

Seçenekler


Girdi penceresinin görünümü

Resimde görülen alanların basitce tanımlarını açıklayacak olursak;
  1. LCD ekran satır sayısı. Burada 2 ve 4 vardır.
  2. LCD ekran seri port bölümünün bağlı olduğu portu seçilir. (bağladığınız porta dikkat.)
  3. Metnin ekrana gönderim şeklini belirler. Satır satır kaydırarak veya Satırları grup olarak.
  4. LCD ekrana gönderilecek bilgi kaynağı. Girdi veya metin
  5. Metin halinde LCD ekrana gönderildiğinde LCD ekran bilgisinin yenilenme süresi
  6. Seçenekleri onaylar ve pencereyi kapatır

Not: Buradaki işlemci yazılımı ve bilgisayar yazılımı rs232 iletişimi içinde aynen kullanılabilir. Çünkü sadece iletişim yönünü kontrol eden bacak haricinde tamamiyle aynıdır.

Ekler:

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

RS485 (Seri) LCD Çevirici için dosyalar-birleşik

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

22 Nisan 2009 Çarşamba

RS232/RS485 dönüştürücü arabirim


Burada yer alan devre aslında doğrudan işlemci uygulaması için değil ama bazı devrelerde bilgisayar ile bağlantı için kullanılacaktır. Dolayısı ile bilgisayar programıda ilgili devre ile birlikte sunulacaktır.

Devrenin genel tanımı


Bilgisayarlar uzun zamandan beri seri haberleşme portu üzerinden kolayca haberleşmektedir. (Her ne kadar günümüzde birçok ana kart üzerinde bu port olmasa bile)
RS232 portu kullanımı ve kontrolu son derece kolay bir yapıya ve programlama dilleri açısından oldukça yaygın bir desteğe de sahiptir. Ama yinede bazı sınırlamalara sahiptir. Bunlardan biri de bağlantı için kullanılan kablo boyudur. Çoğunlukla 2-3 metre civarındadır. Peki 10 metre veya 20 metre mesafedeki bir devre ile iletişim için kullanmak istersek ne olur?

Bu durumda diğer iletişim tekniklerine geçmek gerekir. Bunlardan r422, rs485, ethernet, kablosuz rf bağlantı ürüntleri, kızılaltı iletişim sistemleri örnek gösterilebilir. Burada ele alacağımız rs485 bağlantısıdır. Bu iletişim için birçok üretici kendilerine göre özellikleri bulunan çeşitli devre elemanları üretmiştir.

rs485 basitçe iki kablo üzerinden iletişim için tasarlanmış bir iletişim yöntemi. İki kablo üzerindeki bilgi kabloların birbirine göre elektriksel seviyelerine bakarak işletişim kurar. İşlemci veya bilgisayar tarafında ise Rx,Tx ve kontrol uçları bulunur. Kontrol uçları birbirine göre evrilmiş durumda olduğundan birleştirilerek tek bir kontrol ucu olarak kullanılmakta.

Devremiz basitçe üç bölüm üzerinden incelenebilir. Her zamanki gibi besleme, RS232 arabirimi ve RS485 arabirimi.

Bu sistem sadece bu tipte iletişim sistemlerinin bir bilgisayar için oluruşturulmuş bir modülüdür. Yani bu tipte iletişim kurabilen sistemler ile sadece kablo bağlantıları kullanılarak bir ağ oluşturulması mümkün. Oluşturulacak ağ fiziksel olarak kablo bağlantı uzunluğu (çevreden gelebilecek elektriksel parazitleri ve sinyal bozulmalarını göz önüne almak gerekir) ve sistemin izin verebileceği modüller ile sınırlı. Tabii ki uygun bir kontrol yazılı kullanılarak.


Şekil-1 Devrenin çalışması hakkında bir fikir verecektir.


Temelleri



Şekil-2:485 entegresi bacak bağlantısı


Bacak bağlantısıAçıklaması
ROAlıcı çıkışı
REAlıcı çıkış izni
DE Sürücü çıkış izni
DISürücü girişi
AEvirmeyen alıcı girişi ve evirmeyen sürücü çıkışı
BEviren alıcı girişi ve eviren sürücü çıkışı
GND Toprak
VccBesleme


Yukarıdaki tablo rs485 iletişimi için kullanılan bir entegrenin bacak bağlantılarını göstermektedir. Doğrudan DE ve RE bacakları birbirine bağlanarak bir kontrol ucu oluşturularak iletişim yönünü belirlemede kullanırız.
RO bağlantısı Rx ve DI bağlantısı Tx bağlantısını oluşturur. Bunlar bilgisayar bağlantısıdır. (RS232 üzerinden)
A ve B uçları ise doğrudan RS485 bağlantı uçlarıdır. Buna tek eklenecek olan bir dirençtir. Yani hatta bir yük direnci eklenecek böylece hat üzerindeki parazitlerin bir bölümü süzülecek hattan meydana gelebilecek sinyal bozulmaları engelenecek. Daha ayrıntılı bilgi için üreticilerin veri kağıtları ve internet üzerinden araştırma yapılması daha iyi olacaktır.

Şema

Devre basit bir şekilde 3 bölüme ayrılabilir:
Besleme köprü üzerinden alınan gerilim süzme kondansatörleri üzerinden süzülür ve 7805 üzerinden 5V gerilim oluşturulur.
RS232 bağlantısı; bilgisayar seri portu üzerinden Rx,Tx ve DTR bağlantıları TTL seviyesine uyarlanır.


Şekil-3:Devrenin şeması


Devre Yapımı

Devre yapımında kritik elemanı rs485 ve rs232 entegreleri. Bu elemalar için soket kullanılması ileride oluşabilecek sorunlarda bu elemanların değiştirilmesini kolaylaştırır. Devre fazla karışık değil isteyen delik kart veya diğer devre montaj teknikleri kullanılabilir.


Tüm dirençler çeyrek wattır.
Besleme konusunda bir sorun oluşturmayacağınızı düşünüyorsanız girişteki köprüyü devre dışı bırakabilir veya tek bir diyotla değiştiribilirsiniz. (Kendi besleme kaynağınız varsa ve devreyi kendiniz kullanacaksanız) .

Devre yapımında izlenecek adımlar basitçe:


1-Köprüleri tak
2-Dirençleri tak
3-Soketleri tak
4-Kondansatörleri tak
5-Yarı iletken elemanları tak
6-Tüm elemanları taktıktan sonra devreye entegreleri takmadan elektrik ver ve entegrelerin bacaklarında doğru gerilim olduğunu onayla
7-Son olarak entegreleri soketlere tak.
Zaten gerisi devrenin bilgisayar bağlantısını yapıp çalışmasını test etmektir.


Şekil-4:Devrenin yerleşim planı



Şekil-5:Devrenin baskı devresi şekli (eleman yüzü tarafından göründüğü gibi)



Şekil-6:Eleman ve baskı devre birleşimi



Şekil-6:Kartın alttan görünümü (Kartın altı lehimleme kolaylığı ve korozyana karşı kaplanmış)

Devre Elemanları
120RR1
100nFC1,C6,C7,C10
10µF C2,C3,C4,C5,C8,C9
MAX232 IC1
ST485 IC2
7805 IC3
B125C1500 D13
DB9 P1
6P6C veya 6P2C RJ12 prizi P2
Adaptör girişi P3


Malzeme listesi. Malzeme listesinde 9V adaptör verilmemiştir.

Not: Devre şemasında ,beslemenin olduğunu gösteren uyarı LEDi eklenmemiştir. İsteyen bunu devresine ekleyebilir.


Besleme ister doğrudan adaptör bağla, istersen fiş-priz bağlantısını kullan. Ama devre kutu içine konulacaksa bu fiş-priz bağlantısı bağlantısı kullanışlı olacaktır.


Ekler:

RS232/RS485 dönüştürücü arabirim için dosyalar- birleşik

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

Translate

Sayfalar

Etiketler

İzleyiciler