Hallo Zusammen,
ich versuche gerade Long und Single Variablen an eine Subprozedur zu übergeben.
Das funktioniert aber nicht ich bekomme falsche Werte.
Hier das Testprog:
Code:
$regfile = "M32DEF.DAT"
$crystal = 8000000
Declare Sub Testlong(byval Wert1 As Long , Byval Wert2 As Long)
Declare Sub Testsingle(byval Wert1 As Single , Byval Wert2 As Single)
'LCD
Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.2 , Rs = Portc.3
Config Lcd = 16 * 4
Dim Clong1 As Long
Dim Clong2 As Long
Dim Csingle1 As Single
Dim Csingle2 As Single
Dim Tlong As Long
Dim Tsingle As Single
Do
Cls
Locate 1 , 1
Clong1 = 12545
Clong2 = 55555
Call Testlong(clong1 , Clong2)
Locate 2 , 1
Call Testlong(33333 , 2)
Locate 3 , 1
Csingle1 = 12545
Csingle2 = 55555
Call Testsingle(csingle1 , Csingle2)
Locate 4 , 1
Call Testsingle(33.45 , 1223.4)
Wait 10
Loop
Sub Testlong(byval Wert1 As Long , Byval Wert2 As Long)
Tlong = Wert1
Lcd Tlong
Tlong = Wert2
Lcd " " ; Tlong
End Sub
Sub Testsingle(byval Wert1 As Single , Byval Wert2 As Single)
Tsingle = Wert1
Lcd Tsingle
Tsingle = Wert2
Lcd " " ; Tsingle
End Sub
Als Werte bekomme ich
0 -1
0 138412032
-0.0 0.0
-0.0 -0.0
zurück.
Ist die Übergabe von Long und Singles in Bascom nicht möglich?
Gruß Ingo
Lesezeichen