avatar_efeworld

write read sorunu

Başlatan efeworld, 20 Nisan 2015, 22:55:22

efeworld

trisc=0:trisd=1:trisb=0:portb=0:portc=0:portd=0:trisa=0
DEFINE LCD_DREG PORTB
DEFINE LCD_DBIT 4
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 3
define LCD RWREG PORTB
define LCD_RWBIT 2
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 1
DEFINE LCD_BITS 4
DEFINE LCD_LINES 2

low portb.2
a var byte[8]
s var byte[8]
i var byte
y var byte
s[0]=2
s[1]=3
s[2]=4
s[3]=5
s[4]=6
s[5]=7
s[6]=8
s[7]=9


i=8
for i=8 to 15
write i,s
pause 10
next i

i=8
for i =8 to 15
read i,a
next i

lcdout $fe,$c0,#a[0],#a[1],#a[2],#a[3],#a[4],#a[5],#a[6],#a[7]
pause 5000

hocam ekranda 8 tane 0 gözüküyor nerde hata yapıyorum acaba (code tag bilmiyorum fakat write ve read in yanındaki köşeli parantez gözükmüyor

ete

#1
Cod tag mesaj yazdığın ekranda yukarıda üzerinde # işareti olan butondur ona tıklarsan bir code tag açılır. Araya mesajını yada kodu yazarsın. Araya diyorum çünki başta yer alan code yazısı tagı açıyor. Sonra senin kod gelecek sonrada bitiren code yazısı gelecek. Umarım anlamışsındır.

Hem i=8 deyip sonrada for i=8 to 15 şeklinde döngü kurarsan ilk yazdığın i=8 satırı anlamsız olur.

Hafızaya dizi değişken değerlerini yazmak içindöngüyü dizi indexi şeklinde kurman gerekir.

For i=0 to 7
Write i+8, s[i]:pause 10
Next

Okurken de benzer mantıkla okuman lazım. Yoksa sıfır görürsün sürekli

Ete

efeworld

hocam doğru söylediniz haklısınız ama ben o bölümü göstermedim ama zaten ilk 8 hafıza ya baska bilgi yazdırdım o yuzden 8 den başlattım.for i=0 to 7 dediğimde sorun olmuyor ama 8 den sonrasına yazdıramıyorum yada okuyamıyorum

efeworld

tmm hocam anladım çok teşekkürler

efeworld

hocam sayenizde çok büyük şeyler öğreniyoruz ALLAH sizden razı olsun

ete

Alıntı Yaphocam doğru söylediniz haklısınız ama ben o bölümü göstermedim ama zaten ilk 8 hafıza ya baska bilgi yazdırdım o yuzden 8 den başlattım.for i=0 to 7 dediğimde sorun olmuyor ama 8 den sonrasına yazdıramıyorum yada okuyamıyorum

Hala bunu yapamıyorsan işte sana örnek,

FOR I=0 to 7
WRITE I+100, S[I]:PAUSE 10
NEXT

PAUSE 500

FOR I=0 to 7
READ I+100, S[I]
LCDOUT $fe,$80,dec3 (I+100),"- ",dec3 S[I]
PAUSE 300
Next

Bu program önceki programın altına yazılırsa dizi değişkenine verdiğin değerleri hafızanın 100 nolu adresinden başlayarak sonraki 7 adrese bu değerleri yazar.
Sonra onları geri okuyarak ekrana hafıza adresi ile birlikte yazar.

Ete

efeworld

hocam ilk örnekte
anlamıştım zaten de sonradan gördüm teşekkür ederim sağolun hocam

Powered by EzPortal