saido
Üye
- Katılım
- 25 Mar 2008
- Mesajlar
- 8
- Puanları
- 1
- Yaş
- 40
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...
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...