proğramın verici kodu
isim var byte
miktar var word 'tank seviyesi'
crc var byte 'kontrol kodu'
say var byte
ınclude "modedefs.bas"
loop:
isim=3
miktar=101
if portb=0 then miktar=1
if portb=1 then miktar=12
if portb=3 then miktar=25
if portb=7 then miktar=37
if portb=15 then miktar=50
if portb=31 then miktar=62
if portb=63 then miktar=75
if portb=127 then miktar=87
if portb=255 then miktar=100
if miktar=101 then miktar=100+portb
crc=(miktar*isim//100)
for say=1 to 25
serout porta.0,n300,["saa",miktar,isim,crc]
pause 50
next say
pause 200
goto loop
end
alıcı modu yazılımı ise
isim var byte
miktar var word
crc var byte
say var byte
defıne lcd_dreg portb
defıne lcd_dbıt 4
defıne lcd_rsreg portb
defıne lcd_rsbıt 0
defıne lcd_ereg portb
defıne lcd_ebıt 1
defıne lcd_bıts 4
defıne lcd_lınes 2
defıne lcd_commandus 2000
defıne lcd_dataus 50
ınclude "modedefs.bas"
lcdout $fe,1,"bitirme projesi",$fe,$c0,"cafer&ılkay"
pause 2000
lcdout $fe,1,"su tanki seviye",$fe,$c0,"kontrol sistemi"
pause 2000
loop:
lcdout $fe,1
lcdout "veri bekliyor"
serin porta.1,n300,["aa"],miktar,isim,crc
lcdout $fe,1
if crc<>(miktar*isim//100) then
lcdout "ıletisim hatasi"
miktar=500
endıf
if (miktar>100 and miktar<500) then
miktar=miktar-100
lcdout "sensor hatasi"
lcdout $fe, $c0
if miktar.0=0 then
lcdout 255
else
lcdout "1"
endıf
if miktar.1=0 then
lcdout 255
else
isim var byte
miktar var word
crc var byte
say var byte
defıne lcd_dreg portb
defıne lcd_dbıt 4
defıne lcd_rsreg portb
defıne lcd_rsbıt 0
defıne lcd_ereg portb
defıne lcd_ebıt 1
defıne lcd_bıts 4
defıne lcd_lınes 2
defıne lcd_commandus 2000
defıne lcd_dataus 50
ınclude "modedefs.bas"
lcdout $fe,1,"bitirme projesi",$fe,$c0,"cafer&ılkay"
pause 2000
lcdout $fe,1,"su tanki seviye",$fe,$c0,"kontrol sistemi"
pause 2000
loop:
lcdout $fe,1
lcdout "veri bekliyor"
serin porta.1,n300,["aa"],miktar,isim,crc
lcdout $fe,1
if crc<>(miktar*isim//100) then
lcdout "ıletisim hatasi"
miktar=500
endıf
if (miktar>100 and miktar<500) then
miktar=miktar-100
lcdout "sensor hatasi"
lcdout $fe, $c0
if miktar.0=0 then
lcdout 255
else
lcdout "1"
endıf
if miktar.1=0 then
lcdout 255
else
lcdout "2"
endıf
if miktar.2=0 then
lcdout 255
else
lcdout "3"
endıf
if miktar.3=0 then
lcdout 255
else
lcdout "4"
endıf
if miktar.4=0 then
lcdout 255
else
lcdout "5"
endıf
if miktar.5=0 then
lcdout 255
else
lcdout "6"
endıf
if miktar.6=0 then
lcdout 255
else
lcdout "7"
endıf
if miktar.7=0 then
lcdout 255
else
lcdout "8"
endıf
miktar=101
endif
if miktar=1 then lcdout "seviye: %0"
if miktar=12 then lcdout "seviye: %12.5"
if miktar=25 then lcdout "seviye: %25"
if miktar=37 then lcdout "seviye: %37.5"
if miktar=50 then lcdout "seviye: %50"
if miktar=62 then lcdout "seviye: %62.5"
if miktar=75 then lcdout "seviye: %75"
if miktar=87 then lcdout "seviye: %87.5"
if miktar=100 then lcdout "seviye: %100"
pause 2000
goto loop
end
arkadaşlar mpasmda bunu .hex koduna çeviremiyorum hata veriyor. acaba yardımcı olabilir misiniz? lütfen acillll...