Peripheral MyMotor As MotorRunnerB @ 1 Dim pulse1 As Word Dim pulse2 As Word Dim temp As Integer main() Do Pulsein(15,1,pulse1) Debug CR,"pulse1=",pulse1,CR Pulsein(14,1,pulse2) Debug CR,"pulse2=",pulse1,CR,CR If pulse2>395 Then temp=5 Elseif pulse2>380 Then temp=4 Elseif pulse2>360 Then temp=3 Elseif pulse2>340 Then temp=2 Elseif pulse2>320 Then temp=1 Elseif pulse2>280 Then temp=0 Elseif pulse2>260 Then temp=-1 Elseif pulse2>240 Then temp=-2 Elseif pulse2>220 Then temp=-3 Elseif pulse2>205 Then temp=-4 ELSE temp=-5 End If If temp>0 Then If pulse1>395 Then MyMotor.ForwardA(250) MyMotor.ForwardB(250-temp*50) Elseif pulse1>380 Then MyMotor.ForwardA(200) MyMotor.ForwardB(200-temp*40) Elseif pulse1>360 Then MyMotor.ForwardA(150) MyMotor.ForwardB(150-temp*30) Elseif pulse1>340 Then MyMotor.ForwardA(100) MyMotor.ForwardB(100-temp*20) Elseif pulse1>320 Then MyMotor.ForwardA(50) MyMotor.ForwardB(50-temp*10) Elseif pulse1>280 Then MyMotor.StopA() MyMotor.StopB() Elseif pulse1>260 Then MyMotor.BackwardA(50) MyMotor.BackwardB(50-temp*10) Elseif pulse1>240 Then MyMotor.BackwardA(100) MyMotor.BackwardB(100-temp*20) Elseif pulse1>220 Then MyMotor.BackwardA(150) MyMotor.BackwardB(150-temp*30) Elseif pulse1>205 Then MyMotor.BackwardA(200) MyMotor.BackwardB(200-temp*40) ELSE MyMotor.BackwardA(250) MyMotor.BackwardB(250-temp*50) End IF Else If pulse1>395 Then MyMotor.ForwardA(250+temp*50) MyMotor.ForwardB(250) Elseif pulse1>380 Then MyMotor.ForwardA(200+temp*40) MyMotor.ForwardB(200) Elseif pulse1>360 Then MyMotor.ForwardA(150+temp*30) MyMotor.ForwardB(150) Elseif pulse1>340 Then MyMotor.ForwardA(100+temp*20) MyMotor.ForwardB(100) Elseif pulse1>320 Then MyMotor.ForwardA(50+temp*10) MyMotor.ForwardB(50) Elseif pulse1>280 Then MyMotor.StopA() MyMotor.StopB() Elseif pulse1>260 Then MyMotor.BackwardA(50+temp*10) MyMotor.BackwardB(50) Elseif pulse1>240 Then MyMotor.BackwardA(100+temp*20) MyMotor.BackwardB(100) Elseif pulse1>220 Then MyMotor.BackwardA(150+temp*30) MyMotor.BackwardB(150) Elseif pulse1>205 Then MyMotor.BackwardA(200+temp*40) MyMotor.BackwardB(200) ELSE MyMotor.BackwardA(250+temp*50) MyMotor.BackwardB(250) End If End If Loop End Sub