LCD'ye picin hafızasından yazı yazdırma

Başlatan metocan, 28 Kasım 2003, 11:57:55

metocan

seri porttan gönderdiğim bir yazı mesala "metocan" picin hafızasına yazdırıp

ordan lcd'ye yazdırmak istiyorum.Başka bir yazı gönderdiğim zaman hafızasındaki eski yazı silinip yerine yenisi yazılacak.Basic codu arıyorum

passwordc

uzun zamanda n beri bakıyorum da arkadaşların bişeye ihtiyaçları oldumu şunu arıyorum bunu arıyorum falan diyorlar...

Biraz araştırma ve uğraşın sonucunda yapılabilinecek işleri bunlar. kimse doğuştan öğrenmedi bunları.. Tamam bi kaç yardım veya tio alınabilir. ama bu kadarıda fazla bence.......

metocan

Bizde biliyoruz kimse anasının karnında öğrenmiyor.Araştırma yapmak için türkçe kaynak YOK ,örnek kodlar olmadan nasıl

program yazacağız .passwordc için belki bunlar kolay olabilir ama bizim gibi daha yolun başındaki kişiler için kolay değil. Bu formun amacı yardım etmek değilse kapatın gittsin.
:evil:

james

aslında biraz yol alıp takıldığın bir yer olunca soru soruman senin için iyi olur.örneğin picin hafızasına yazdırmışındır ama

lcdye yazdırırken sorun çıkmıştır.o zaman sorarsın lcdye yazdırıyorum şöyle şöyle oluyor diye.bizde cevaplarız.senin yaptığının adı tembellik oluyor..
ARAMIYORUM , BULUYORUM

fsan

Alıntı yapılan: "metocan"picin hafızasına yazdırıp ordan lcd'ye

yazdırmak istiyorum

kardes PIC'in hafizasi derken eeprom kismini mi kastediyorsun? eeprom a yazdirmak icin "Write" komutu kullanabilirsin.

picbasic

pro ile WRITE Address,Value seklinde oluyor.

Example
WRITE 5, B0 ' Send value in B0

to EEPROM location 5


senin istedigin sekilde "metocan" yazabilmen biraz daha zor ama bir döngü icerisinde LOOKUP komut kullanilarak yapilabilir

sanirsam.

Picbasic pro manual de bütün bu komutlarin ayrintili örneklerini vermisler istersen bir arastir.

passwordc

Hocam 98 yılında PIC ile tanıştığımda programlayıcısını bulup çalıştırana kadar 6 ay geçti.... O zamnlar bu tür türkçe

formlar da yoktu. tamamen yabancı kaynakları araştırarak öğrendik. benim dediğim sadece biraz araştırma. genelde hazıra alışkın bir toplumuz. bunu kimse inkar edemez. en basiti adam nasıl kolay

yoldan para kazanırım diye düşünüyo.... bu tip insanlar en basit örneği....

metocan

seri porttan picin hafızasına yazı yazdırıp lcd ye yazdırabiliyorum (uzun uğraşlardan sonra) ikinci sefer gönderdiğimde eski

hafıza silinmiyor "örnek "merhaba ilk gönderdiğim mesaj 7 harf ,ikinci gönderdiğim mesaj "iyi" 3 harf lcd ye yazdırırken "iyiaba" diye yazıyor.Soruma cevap veren,vermeyen,eleştiren

arkadaşlardan ALLAH RAZI OLSUN.

cnt

program kodunu vermemissin ama sanirim, pic icinde belli bir adres kumesi tanimladin ve surekli LCD ye bu kumeyinin

icindekileri  gonderiyorsun. ikinci datayi bilgisayardan gondermeden once bu kumedekiregisterlarin icini sifirla.

ikinci bir ihtimalde LCD ye sadece 3 "iyi"  karakteri gonderiyorsun.  

LCD, diger sutunlarina  yeni bilgi gonderilene kadar eskisini hafisasinda tutar.

james

Lcdout $fe,1 ,"iyi"  şeklinde yazarsan merhabayı  siler
Lcdout "iyi                         

"  şeklinde yazarsan merhabanın üstüne  yazar.boşlukları satır sayısına göre ayarlarsın
ARAMIYORUM , BULUYORUM

metocan

INCLUDE "modedefs.bas"        

DEFINE LCD_DREG PORTB
DEFINE LCD_DBIT 4
DEFINE

LCD_RSREG PORTB
DEFINE LCD_RSBIT 2
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 3
DEFINE LCD_BITS 4
DEFINE LCD_LINES

2

LCDOut $fe,1

symbol SO=PORTA.0
symbol SI=PORTA.1

B0      VAR     BYTE
B1      VAR     BYTE
B2      VAR     BYTE
B3      VAR    

BYTE
B4      VAR     BYTE

B4=60
B2=75   


For B1=60  TO B2   'HAFIZADAKI YAZI OKUNUYOR
     Read B1,B3        
   LCDOut

B3
   Next B1
   


loop:  
SerIn SI,T2400,B0  'YENI YAZI BEKLENIYOR                    
       IF (B0 < "a") OR (B0 > "z") Then yaz
     


B0 = B0 - $20

yaz:  'yeni yazı hafızaya yazılıyor

SerOut SO,T2400,[B0]                    
Write B4,B0
Pause 10
Read B4,B0
B4=B4+1
GoTo loop    

                         
End

mmengi

dostum senin sorunun ekranı sildirmemen.ekranı simez isen ikinci mesajın ilkinin üstüne gelir ve eğer 2. mesaj 1.den kısa ise

2. mesajdan arta kalan harfler 1. mesajın sonuna eklenir.

hafızadaki yazı okunuyor uyarısından önce james in dediği gibi

Lcdout $fe,1

komutunu kullanıp bir

dene

birde b2=75 kadar datayı epromdan okuyorsun eğer 2. mesaj 1. mesajdan kısa ise yine eprom bölümünden 1.den arta kalan harfleride okuyor olabilirsin.yeni mesaj yazmadan önce

epromu silmen gerekebilir.