YAZILIMDA HATA YARDIM...

Başlatan ONURKESKIN, 11 Mart 2008, 18:52:55

ONURKESKIN

Arkadaşlar daha yeniyim ve kumbara programını buraya kadar yazdım ekranda 0lira0kuruş yazısı görünüyor ve kuruş kısmı artıyo benim halledemediğim nokta ise 100kuruş olunca lira hanesine 1 olarak yazdırmak if then komutlarıyla yapılabileceğini biliyorum ancak ben yapamadım yardıma ihtiyacım var.
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 1
B0 VAR WORD
lcdout $FE,1
LCDOUT "DiJiTAL KUMBARA"
D1 VAR BYTE
D2 VAR BYTE
D3 VAR BYTE
D4 VAR BYTE
D5 VAR BYTE
D6 VAR BYTE
SAY VAR WORD
SAY1 VAR WORD
SAY2 VAR WORD
SAY3 VAR WORD
SAY=0
SAY1=0
SAY2=0
SAY3=0
D1=0
D2=0
D3=0
D4=0
D5=0
D6=0
BUTONKONTROL:
BUTTON PORTB.0,0,254,254,D1,1,LED1
BUTTON PORTB.2,0,254,254,D2,1,LED2
BUTTON PORTB.3,0,254,254,D3,1,LED3
BUTTON PORTB.4,0,254,254,D4,1,LED4
BUTTON PORTB.5,0,254,254,D5,1,LED5
BUTTON PORTB.6,0,254,254,D6,1,LED6
SAY1=SAY
LCDOUT $FE,$C0,#SAY2,"lira",#say1,"kurus"
GOTO BUTONKONTROL
LED1:
SAY=SAY+1
PAUSE 100
GOTO BUTONKONTROL
LED2:
SAY=SAY+5
PAUSE 100
GOTO BUTONKONTROL
LED3:
SAY=SAY+10
PAUSE 100
GOTO BUTONKONTROL
LED4:
SAY=SAY+25
PAUSE 100
GOTO BUTONKONTROL
LED5:
SAY=SAY+50
pause 100
GOTO BUTONKONTROL
LED6:
SAY=SAY+100
pause 100
GOTO BUTONKONTROL
END

canbulut

prograMınI pek inceleyemedim ama örnek olarak...programına benzetecek olursak dediğin koşullamayı if'le yapmak istersen izleyeyeceğin yol şudur...

IF SAY1=100 THEN
SAY2=SAY2+1
ENDIF

kolay gelsin...

ete

Anladığım kadarı ile tüm parayı SAY değişkeni altında topluyorsun.
Bu nedenle yapman gereken yalnızca şu;
SAY2=SAY/100
SAY1=SAY//100          'SAY MOD 100  yani SAY-(SAY/100) işlemi
LCDOUT $FE,$C0,#SAY2,"lira",#say1,"kurus"
GOTO BUTONKONTROL


KOlay Gelsin
Ete
Bilgi hazinedir paylaştıkça büyür.            http://etepic.com

ONURKESKIN

hay allah sizden razı olsun ya vallahi ilaç gibi geldi denedim ve oldu fakat lcd de lira hanesine sayı eklenince kurus yazısı kuruss olarak görünüyo yani 2 s ile acaba simulasyondan mı kaynaklanmaktadır.

ONURKESKIN

Arkadaşlar kusura bakmayın unutmuşum hafızaya almayı nasıl yapabilirim enerji kesilincede kumbaradaki para hafizada kalacak ve sıfırlama butonuna basılınca hafıza silinecek.çok oluyorum evet ama elimden geleni yapıyorum takıldığım yerlerde yardım istiyorum.herkese sonsuz teşekkür ederim.

forsa1975

write ve read komutunu kullanabilirsin.Böylece dahili eeproma yazmış olursun. Sürekli orda kalır. Sayının her değişiminde günceller ve program açılırken okutursan istediğin olmuş olur sanıyorum.
write 1,125 ' 1 numaralı adrese 125 yaz.
read 1,sayi ' 1 numaralı adresten okuduğun değeri sayı değişkenine yukle

ete

Kurus hanesinin çift yada daha fazla "s" li gözükmesinin sebebi sayı hanelerinin bir azalıp bir çoğalmasından kaynaklanmaktadır. Bunu önlemek için "kurus" yerine kurustan sonra 2 adet bosluk bırakarak yaz "kurus  "
bu şekilde hata düzelecektir.

Ete
Bilgi hazinedir paylaştıkça büyür.            http://etepic.com

ONURKESKIN

yardımlarınız için çok teşekkür ederim denemelker yapacağım umarım olur
saygılar