Der erste Fehler kommt, weil er byval vermisst
Code:
Declare Sub Fahren(byval pwm_l As Integer ,byval Pwm_r As Integer , byval Ml_1 As Bit ,byval Ml_2 As Bit ,byval Mr_1 As Bit ,byval Mr_2 As Bit)
2. und 3. Fehler: KA Sieht eigentlich iO aus...
So kompiliert er es fehlerfrei:
Code:
Declare Sub Fahren()
Dim Entfernung_r As Integer
Dim Entfernung_l As Integer
Dim Pwm_l As Integer
Dim Pwm_r As Integer
Dim Mrl As Byte
Ml_1 Alias Mrl.0
Ml_2 Alias Mrl.1
Mr_1 Alias Mrl.3
Mr_2 Alias Mrl.4
If Entfernung_l < 100 Then
If Entfernung_r < 100 Then
If Entfernung_l < Entfernung_r Then
Pwm_l = 250 : Pwm_r = 500 : Ml_1 = 1 : Ml_2 = 0 : Mr_1 = 1 : Mr_2 = 0
Call Fahren()
Else
Pwm_l = 500 : Pwm_r = 250 : Ml_1 = 0 : Ml_2 = 1 : Mr_1 = 0 : Mr_2 = 1
Call Fahren()
End If
Else
Pwm_l = 1000 : Pwm_r = 500 : Ml_1 = 1 : Ml_2 = 0 : Mr_1 = 1 : Mr_2 = 0
Call Fahren()
End If
Else
If Entfernung_r < 100 Then
Pwm_l = 500 : Pwm_r = 1000 : Ml_1 = 1 : Ml_2 = 0 : Mr_1 = 1 : Mr_2 = 0
Call Fahren()
Else
Pwm_l = 1000 : Pwm_r = 1000 : Ml_1 = 1 : Ml_2 = 0 : Mr_1 = 1 : Mr_2 = 0
Call Fahren()
End If
End If
Sub Fahren()
Portc.6 = Ml_1
Portc.7 = Ml_2
Portb.0 = Mr_1
Portb.1 = Mr_2
Pwm1a = Pwm_l
Pwm1b = Pwm_r
End Sub
Lesezeichen