Untitled Document



Lcd'ler robotlarda dış dünyaya bilgi vermek amacıyla kullanılırlar. Lcd kullanarak robotunuzun o anki sağlık durumunu (pil,frekans,devre sıcaklığı...) izleyebilirsiniz. Ya da programmınızın işleyişini lcd'de yazdırark proramı analiz edip bugları bulabilir,programı daha da geliştirmek için neler yapılacağına nelerin değişmesi gerektiğine karar verebilirsiniz.
Lcd'ler 2'ye ayrılır.
Paralel Lcdler
Robotikte ucuzlukları nedeniyle sıkça kullanılan lcd tipidir. 4 bit veriyolu yada 8 bit veriyolu kullanarak birçok mikrokontrolör tarafındna kulanılabilir. Elektrbikçilerde en temel modelelr olan 8x2, 16x2 , 8x1 ve 16x1  modellerini çok uygun fiyatlarda ( 5-15 ytl) bulabilirisniz.
Seri Lcdler
Seri Lcd'ler mikrokontrolörle iletiişm için seri veri yolunu kullanırlar haliyle bu da daha az işgal edilen mcu pini dmektir.Bu lcd Modüllerin iç devreelrinde seri paralel dönüştürücü devreler vardır. Buda ek maliyetleri yanıdna getirir. Seri LCD'ler paralel lcdlere göre 3-4 kat daha pahalı olabilirler.
İlk Programımız
@ dEVICE pic16F628A, INTRC_OSC_NOCLKOUT
@ device MCLR_off
@ Device WDT_off
@ Device Bod_off
pause 1000
basla:
lcdout $fe, 1                                        'imleci basa getir sifirla
lcdout "Robotus.Net"
lcdout $FE, $C2,"RoBBot.oRg"             ' 2. satirn 3. karakterindne basla
end


Programı yazdıktan sonra LCD'nin 5 nolu pini olan R/W pinini toprağa bağlamayı unutmuşum tabi devre çalışmadı. Hayal kırklığından sonra bağlantıyı yapmadığımı farkettm yapınca  yazımız da ortaya çıktı:) Sonraları deveryi açıp kapayınca yazı tekrar kayboldu ve 3-4  pic'te de aynı sorunları yaşadım.


Picbasic ile kayan yazı 
Picbasic ile kayan yazı yapmak da oldukça kolaydır. Picbasic pro komutlarında LCDOut 254,28 yazı karakterllerini bir karakter sağa kaydırır. ve LCDOut 254,24 bir adım sola kaydırır. Bunu lcdnin boy karakter sayısıyla (16) yaptırarak kayan yazı elde ederiz.

Program:
@ dEVICE pic16F628A, INTRC_OSC_NOCLKOUT
@ device MCLR_off
@ Device WDT_off
@ Device Bod_off
B0 VAR BYTE
Pause 1000
basla:
LCDOut 254,1   
LCDOut "Robotus.Net"
LCDOut 254,192
LCDOut "Robbot.oRg"
'Saga
For B0= 0 TO 16
LCDOut 254,28
Pause 200
Next
'sola
For B0= 0 TO 16
LCDOut 254,24
Pause 200
Next
GoTo basla
End